From c691a28a0a51f42287bcd5ef47d24398eb33d4ee Mon Sep 17 00:00:00 2001 From: Andy Holmes Date: Sat, 8 Nov 2025 08:12:09 -0800 Subject: [PATCH] docs: add user documentation * add first draft of user documentation * add test suite (`yelp-check`) * add build test to CI * add HTML generation to CD --- .editorconfig | 2 +- .github/workflows/cd.yml | 18 + .github/workflows/ci.yml | 7 + CONTRIBUTING.md | 11 +- LICENSES/CC-BY-SA-4.0.txt | 170 ++ REUSE.toml | 6 + help/C/.yelp-tools.cfg | 54 + help/C/device-name.page | 63 + help/C/device-preferences-other.page | 215 ++ help/C/device-preferences-status.page | 305 +++ help/C/device-preferences-sync.page | 257 +++ help/C/device-setup.page | 135 ++ help/C/figures/ca.andyholmes.Valent.svg | 97 + help/C/figures/channel-secure-symbolic.svg | 4 + help/C/figures/document-edit-symbolic.svg | 4 + help/C/figures/edit-delete-symbolic.svg | 4 + help/C/figures/entry-apply-symbolic.svg | 2 + help/C/figures/open-menu-symbolic.svg | 8 + help/C/figures/screenshots/device-page.png | Bin 0 -> 16360 bytes .../screenshots/device-preferences.png | Bin 0 -> 66759 bytes help/C/figures/screenshots/image-missing.png | Bin 0 -> 10456 bytes .../figures/screenshots/main-preferences.png | Bin 0 -> 54885 bytes help/C/figures/screenshots/main-window.png | Bin 0 -> 21224 bytes .../screenshots/plugin-presenter-remote.png | Bin 0 -> 14279 bytes .../screenshots/tools-input-remote.png | Bin 0 -> 25367 bytes .../screenshots/tools-media-remote.png | Bin 0 -> 17659 bytes help/C/figures/view-more-symbolic.svg | 4 + help/C/figures/view-refresh-symbolic.svg | 4 + help/C/index.page | 46 + help/C/introduction.page | 174 ++ help/C/legal.xml | 6 + help/C/plugins.page | 37 + help/C/tools-input-remote.page | 52 + help/C/tools-media-remote.page | 53 + help/C/tools-messages-window.page | 54 + help/C/tools-share-dialog.page | 111 + help/C/troubleshooting-firewall.page | 114 + help/C/valent.pot | 1959 +++++++++++++++++ help/LINGUAS | 0 help/meson.build | 42 + help/templates/plugin.page.tmpl | 62 + help/templates/troubleshooting.page.tmpl | 25 + help/valent-html.xsl | 392 ++++ meson.build | 5 + meson.options | 6 + src/plugins/gnome/valent-window.c | 16 + src/plugins/gnome/valent-window.ui | 10 + src/plugins/lock/lock.plugin.desktop.in | 2 +- src/plugins/mpris/mpris.plugin.desktop.in | 2 +- tests/meson.build | 24 + 50 files changed, 4556 insertions(+), 6 deletions(-) create mode 100644 LICENSES/CC-BY-SA-4.0.txt create mode 100644 help/C/.yelp-tools.cfg create mode 100644 help/C/device-name.page create mode 100644 help/C/device-preferences-other.page create mode 100644 help/C/device-preferences-status.page create mode 100644 help/C/device-preferences-sync.page create mode 100644 help/C/device-setup.page create mode 100644 help/C/figures/ca.andyholmes.Valent.svg create mode 100644 help/C/figures/channel-secure-symbolic.svg create mode 100644 help/C/figures/document-edit-symbolic.svg create mode 100644 help/C/figures/edit-delete-symbolic.svg create mode 100644 help/C/figures/entry-apply-symbolic.svg create mode 100644 help/C/figures/open-menu-symbolic.svg create mode 100644 help/C/figures/screenshots/device-page.png create mode 100644 help/C/figures/screenshots/device-preferences.png create mode 100644 help/C/figures/screenshots/image-missing.png create mode 100644 help/C/figures/screenshots/main-preferences.png create mode 100644 help/C/figures/screenshots/main-window.png create mode 100644 help/C/figures/screenshots/plugin-presenter-remote.png create mode 100644 help/C/figures/screenshots/tools-input-remote.png create mode 100644 help/C/figures/screenshots/tools-media-remote.png create mode 100644 help/C/figures/view-more-symbolic.svg create mode 100644 help/C/figures/view-refresh-symbolic.svg create mode 100644 help/C/index.page create mode 100644 help/C/introduction.page create mode 100644 help/C/legal.xml create mode 100644 help/C/plugins.page create mode 100644 help/C/tools-input-remote.page create mode 100644 help/C/tools-media-remote.page create mode 100644 help/C/tools-messages-window.page create mode 100644 help/C/tools-share-dialog.page create mode 100644 help/C/troubleshooting-firewall.page create mode 100644 help/C/valent.pot create mode 100644 help/LINGUAS create mode 100644 help/meson.build create mode 100644 help/templates/plugin.page.tmpl create mode 100644 help/templates/troubleshooting.page.tmpl create mode 100644 help/valent-html.xsl diff --git a/.editorconfig b/.editorconfig index 17cb520241d..87301187c12 100644 --- a/.editorconfig +++ b/.editorconfig @@ -23,7 +23,7 @@ max_line_length = 80 indent_size = 4 indent_style = space -[*.{css,toml,ui,xml,xml.in,yml}] +[*.{css,page,toml,ui,xml,xml.in,yml}] indent_size = 2 indent_style = space diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index cc79c8bf880..4ba3e4d3884 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -26,10 +26,20 @@ jobs: suite: test setup-args: | -Ddocumentation=true + -Dhelp=true -Dtests=true test-coverage: true lcov-include: '${{ github.workspace }}/src/*' + - name: Generate Assets + env: + WORKSPACE: ${{ github.workspace }} + run: | + mkdir -p _help + yelp-build html -o ${WORKSPACE}/_help \ + -x ${WORKSPACE}/help/valent-html.xsl \ + ${WORKSPACE}/help/C/ + - name: Coverage Report continue-on-error: true uses: JamesIves/github-pages-deploy-action@releases/v4 @@ -46,6 +56,14 @@ jobs: target-folder: documentation single-commit: true + - name: Help + continue-on-error: true + uses: JamesIves/github-pages-deploy-action@releases/v4 + with: + folder: _help + target-folder: help + single-commit: true + flatpak: name: Flatpak runs-on: ${{ matrix.arch == 'aarch64' && 'ubuntu-24.04-arm' || 'ubuntu-latest' }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ee1b52a89d7..6ef8c27329a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -93,6 +93,7 @@ jobs: run: | meson setup --buildtype=release \ -Ddocumentation=true \ + -Dhelp=true \ _build meson compile -C _build @@ -116,10 +117,12 @@ jobs: include: - suite: abidiff setup-args: | + -Dhelp=false -Dintrospection=false -Dplugins=false - suite: cppcheck setup-args: | + -Dhelp=false -Dintrospection=false -Dtests=true fail-fast: false @@ -163,20 +166,24 @@ jobs: include: - suite: test setup-args: | + -Dhelp=false -Dtests=true test-args: | --repeat=3 - suite: asan setup-args: | + -Dhelp=false -Dintrospection=false -Dtests=true - suite: tsan setup-args: | + -Dhelp=false -Dintrospection=false -Dtests=true -Dtests_libdir=/usr/tsan/lib64 - suite: analyzer setup-args: | + -Dhelp=false -Dintrospection=false -Dtests=true fail-fast: false diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e3f0157b908..2ec9c749911 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -38,9 +38,13 @@ This project does not yet use a translation service like Weblate or Crowdin. You should also expect translatable strings to change frequently until the project is more mature. -To contribute a translation, open a pull request which adds your locale to the -[`LINGUAS`][linguas] file and your translated `.po` file to the [`po/`][po_dir] -directory. +To contribute a translation of the application, open a pull request that adds +your locale to [`po/LINGUAS`][linguas] and your translated `.po` file to +`po/.po`. + +To contribute a translation of the user help, open a pull request that adds your +locale to [`help/LINGUAS`][help-linguas] and your translated `.po` file to +`help//.po`. ## Contributing Code @@ -121,6 +125,7 @@ already distributed under an acceptable open source license. [conventional-commits]: https://www.conventionalcommits.org [features]: https://github.com/andyholmes/valent/discussions/new?category=feature-request [issues]: https://github.com/andyholmes/valent/issues/new +[help-linguas]: https://github.com/andyholmes/valent/blob/main/help/LINGUAS [linguas]: https://github.com/andyholmes/valent/blob/main/po/LINGUAS [po_dir]: https://github.com/andyholmes/valent/tree/main/po [gnome-coding-style]: https://developer.gnome.org/documentation/guidelines/programming/coding-style.html diff --git a/LICENSES/CC-BY-SA-4.0.txt b/LICENSES/CC-BY-SA-4.0.txt new file mode 100644 index 00000000000..835a6836b38 --- /dev/null +++ b/LICENSES/CC-BY-SA-4.0.txt @@ -0,0 +1,170 @@ +Creative Commons Attribution-ShareAlike 4.0 International + + Creative Commons Corporation (“Creative Commons”) is not a law firm and does not provide legal services or legal advice. Distribution of Creative Commons public licenses does not create a lawyer-client or other relationship. Creative Commons makes its licenses and related information available on an “as-is” basis. Creative Commons gives no warranties regarding its licenses, any material licensed under their terms and conditions, or any related information. Creative Commons disclaims all liability for damages resulting from their use to the fullest extent possible. + +Using Creative Commons Public Licenses + +Creative Commons public licenses provide a standard set of terms and conditions that creators and other rights holders may use to share original works of authorship and other material subject to copyright and certain other rights specified in the public license below. The following considerations are for informational purposes only, are not exhaustive, and do not form part of our licenses. + +Considerations for licensors: Our public licenses are intended for use by those authorized to give the public permission to use material in ways otherwise restricted by copyright and certain other rights. Our licenses are irrevocable. Licensors should read and understand the terms and conditions of the license they choose before applying it. Licensors should also secure all rights necessary before applying our licenses so that the public can reuse the material as expected. Licensors should clearly mark any material not subject to the license. This includes other CC-licensed material, or material used under an exception or limitation to copyright. More considerations for licensors. + +Considerations for the public: By using one of our public licenses, a licensor grants the public permission to use the licensed material under specified terms and conditions. If the licensor’s permission is not necessary for any reason–for example, because of any applicable exception or limitation to copyright–then that use is not regulated by the license. Our licenses grant only permissions under copyright and certain other rights that a licensor has authority to grant. Use of the licensed material may still be restricted for other reasons, including because others have copyright or other rights in the material. A licensor may make special requests, such as asking that all changes be marked or described. + +Although not required by our licenses, you are encouraged to respect those requests where reasonable. More considerations for the public. + +Creative Commons Attribution-ShareAlike 4.0 International Public License + +By exercising the Licensed Rights (defined below), You accept and agree to be bound by the terms and conditions of this Creative Commons Attribution-ShareAlike 4.0 International Public License ("Public License"). To the extent this Public License may be interpreted as a contract, You are granted the Licensed Rights in consideration of Your acceptance of these terms and conditions, and the Licensor grants You such rights in consideration of benefits the Licensor receives from making the Licensed Material available under these terms and conditions. + +Section 1 – Definitions. + + a. Adapted Material means material subject to Copyright and Similar Rights that is derived from or based upon the Licensed Material and in which the Licensed Material is translated, altered, arranged, transformed, or otherwise modified in a manner requiring permission under the Copyright and Similar Rights held by the Licensor. For purposes of this Public License, where the Licensed Material is a musical work, performance, or sound recording, Adapted Material is always produced where the Licensed Material is synched in timed relation with a moving image. + + b. Adapter's License means the license You apply to Your Copyright and Similar Rights in Your contributions to Adapted Material in accordance with the terms and conditions of this Public License. + + c. BY-SA Compatible License means a license listed at creativecommons.org/compatiblelicenses, approved by Creative Commons as essentially the equivalent of this Public License. + + d. Copyright and Similar Rights means copyright and/or similar rights closely related to copyright including, without limitation, performance, broadcast, sound recording, and Sui Generis Database Rights, without regard to how the rights are labeled or categorized. For purposes of this Public License, the rights specified in Section 2(b)(1)-(2) are not Copyright and Similar Rights. + + e. Effective Technological Measures means those measures that, in the absence of proper authority, may not be circumvented under laws fulfilling obligations under Article 11 of the WIPO Copyright Treaty adopted on December 20, 1996, and/or similar international agreements. + + f. Exceptions and Limitations means fair use, fair dealing, and/or any other exception or limitation to Copyright and Similar Rights that applies to Your use of the Licensed Material. + + g. License Elements means the license attributes listed in the name of a Creative Commons Public License. The License Elements of this Public License are Attribution and ShareAlike. + + h. Licensed Material means the artistic or literary work, database, or other material to which the Licensor applied this Public License. + + i. Licensed Rights means the rights granted to You subject to the terms and conditions of this Public License, which are limited to all Copyright and Similar Rights that apply to Your use of the Licensed Material and that the Licensor has authority to license. + + j. Licensor means the individual(s) or entity(ies) granting rights under this Public License. + + k. Share means to provide material to the public by any means or process that requires permission under the Licensed Rights, such as reproduction, public display, public performance, distribution, dissemination, communication, or importation, and to make material available to the public including in ways that members of the public may access the material from a place and at a time individually chosen by them. + + l. Sui Generis Database Rights means rights other than copyright resulting from Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, as amended and/or succeeded, as well as other essentially equivalent rights anywhere in the world. + + m. You means the individual or entity exercising the Licensed Rights under this Public License. Your has a corresponding meaning. + +Section 2 – Scope. + + a. License grant. + + 1. Subject to the terms and conditions of this Public License, the Licensor hereby grants You a worldwide, royalty-free, non-sublicensable, non-exclusive, irrevocable license to exercise the Licensed Rights in the Licensed Material to: + + A. reproduce and Share the Licensed Material, in whole or in part; and + + B. produce, reproduce, and Share Adapted Material. + + 2. Exceptions and Limitations. For the avoidance of doubt, where Exceptions and Limitations apply to Your use, this Public License does not apply, and You do not need to comply with its terms and conditions. + + 3. Term. The term of this Public License is specified in Section 6(a). + + 4. Media and formats; technical modifications allowed. The Licensor authorizes You to exercise the Licensed Rights in all media and formats whether now known or hereafter created, and to make technical modifications necessary to do so. The Licensor waives and/or agrees not to assert any right or authority to forbid You from making technical modifications necessary to exercise the Licensed Rights, including technical modifications necessary to circumvent Effective Technological Measures. For purposes of this Public License, simply making modifications authorized by this Section 2(a)(4) never produces Adapted Material. + + 5. Downstream recipients. + + A. Offer from the Licensor – Licensed Material. Every recipient of the Licensed Material automatically receives an offer from the Licensor to exercise the Licensed Rights under the terms and conditions of this Public License. + + B. Additional offer from the Licensor – Adapted Material. Every recipient of Adapted Material from You automatically receives an offer from the Licensor to exercise the Licensed Rights in the Adapted Material under the conditions of the Adapter’s License You apply. + + C. No downstream restrictions. You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, the Licensed Material if doing so restricts exercise of the Licensed Rights by any recipient of the Licensed Material. + + 6. No endorsement. Nothing in this Public License constitutes or may be construed as permission to assert or imply that You are, or that Your use of the Licensed Material is, connected with, or sponsored, endorsed, or granted official status by, the Licensor or others designated to receive attribution as provided in Section 3(a)(1)(A)(i). + + b. Other rights. + + 1. Moral rights, such as the right of integrity, are not licensed under this Public License, nor are publicity, privacy, and/or other similar personality rights; however, to the extent possible, the Licensor waives and/or agrees not to assert any such rights held by the Licensor to the limited extent necessary to allow You to exercise the Licensed Rights, but not otherwise. + + 2. Patent and trademark rights are not licensed under this Public License. + + 3. To the extent possible, the Licensor waives any right to collect royalties from You for the exercise of the Licensed Rights, whether directly or through a collecting society under any voluntary or waivable statutory or compulsory licensing scheme. In all other cases the Licensor expressly reserves any right to collect such royalties. + +Section 3 – License Conditions. + +Your exercise of the Licensed Rights is expressly made subject to the following conditions. + + a. Attribution. + + 1. If You Share the Licensed Material (including in modified form), You must: + + A. retain the following if it is supplied by the Licensor with the Licensed Material: + + i. identification of the creator(s) of the Licensed Material and any others designated to receive attribution, in any reasonable manner requested by the Licensor (including by pseudonym if designated); + + ii. a copyright notice; + + iii. a notice that refers to this Public License; + + iv. a notice that refers to the disclaimer of warranties; + + v. a URI or hyperlink to the Licensed Material to the extent reasonably practicable; + + B. indicate if You modified the Licensed Material and retain an indication of any previous modifications; and + + C. indicate the Licensed Material is licensed under this Public License, and include the text of, or the URI or hyperlink to, this Public License. + + 2. You may satisfy the conditions in Section 3(a)(1) in any reasonable manner based on the medium, means, and context in which You Share the Licensed Material. For example, it may be reasonable to satisfy the conditions by providing a URI or hyperlink to a resource that includes the required information. + + 3. If requested by the Licensor, You must remove any of the information required by Section 3(a)(1)(A) to the extent reasonably practicable. + + b. ShareAlike.In addition to the conditions in Section 3(a), if You Share Adapted Material You produce, the following conditions also apply. + + 1. The Adapter’s License You apply must be a Creative Commons license with the same License Elements, this version or later, or a BY-SA Compatible License. + + 2. You must include the text of, or the URI or hyperlink to, the Adapter's License You apply. You may satisfy this condition in any reasonable manner based on the medium, means, and context in which You Share Adapted Material. + + 3. You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, Adapted Material that restrict exercise of the rights granted under the Adapter's License You apply. + +Section 4 – Sui Generis Database Rights. + +Where the Licensed Rights include Sui Generis Database Rights that apply to Your use of the Licensed Material: + + a. for the avoidance of doubt, Section 2(a)(1) grants You the right to extract, reuse, reproduce, and Share all or a substantial portion of the contents of the database; + + b. if You include all or a substantial portion of the database contents in a database in which You have Sui Generis Database Rights, then the database in which You have Sui Generis Database Rights (but not its individual contents) is Adapted Material, including for purposes of Section 3(b); and + + c. You must comply with the conditions in Section 3(a) if You Share all or a substantial portion of the contents of the database. +For the avoidance of doubt, this Section 4 supplements and does not replace Your obligations under this Public License where the Licensed Rights include other Copyright and Similar Rights. + +Section 5 – Disclaimer of Warranties and Limitation of Liability. + + a. Unless otherwise separately undertaken by the Licensor, to the extent possible, the Licensor offers the Licensed Material as-is and as-available, and makes no representations or warranties of any kind concerning the Licensed Material, whether express, implied, statutory, or other. This includes, without limitation, warranties of title, merchantability, fitness for a particular purpose, non-infringement, absence of latent or other defects, accuracy, or the presence or absence of errors, whether or not known or discoverable. Where disclaimers of warranties are not allowed in full or in part, this disclaimer may not apply to You. + + b. To the extent possible, in no event will the Licensor be liable to You on any legal theory (including, without limitation, negligence) or otherwise for any direct, special, indirect, incidental, consequential, punitive, exemplary, or other losses, costs, expenses, or damages arising out of this Public License or use of the Licensed Material, even if the Licensor has been advised of the possibility of such losses, costs, expenses, or damages. Where a limitation of liability is not allowed in full or in part, this limitation may not apply to You. + + c. The disclaimer of warranties and limitation of liability provided above shall be interpreted in a manner that, to the extent possible, most closely approximates an absolute disclaimer and waiver of all liability. + +Section 6 – Term and Termination. + + a. This Public License applies for the term of the Copyright and Similar Rights licensed here. However, if You fail to comply with this Public License, then Your rights under this Public License terminate automatically. + + b. Where Your right to use the Licensed Material has terminated under Section 6(a), it reinstates: + + 1. automatically as of the date the violation is cured, provided it is cured within 30 days of Your discovery of the violation; or + + 2. upon express reinstatement by the Licensor. + + c. For the avoidance of doubt, this Section 6(b) does not affect any right the Licensor may have to seek remedies for Your violations of this Public License. + + d. For the avoidance of doubt, the Licensor may also offer the Licensed Material under separate terms or conditions or stop distributing the Licensed Material at any time; however, doing so will not terminate this Public License. + + e. Sections 1, 5, 6, 7, and 8 survive termination of this Public License. + +Section 7 – Other Terms and Conditions. + + a. The Licensor shall not be bound by any additional or different terms or conditions communicated by You unless expressly agreed. + + b. Any arrangements, understandings, or agreements regarding the Licensed Material not stated herein are separate from and independent of the terms and conditions of this Public License. + +Section 8 – Interpretation. + + a. For the avoidance of doubt, this Public License does not, and shall not be interpreted to, reduce, limit, restrict, or impose conditions on any use of the Licensed Material that could lawfully be made without permission under this Public License. + + b. To the extent possible, if any provision of this Public License is deemed unenforceable, it shall be automatically reformed to the minimum extent necessary to make it enforceable. If the provision cannot be reformed, it shall be severed from this Public License without affecting the enforceability of the remaining terms and conditions. + + c. No term or condition of this Public License will be waived and no failure to comply consented to unless expressly agreed to by the Licensor. + + d. Nothing in this Public License constitutes or may be interpreted as a limitation upon, or waiver of, any privileges and immunities that apply to the Licensor or You, including from the legal processes of any jurisdiction or authority. + +Creative Commons is not a party to its public licenses. Notwithstanding, Creative Commons may elect to apply one of its public licenses to material it publishes and in those instances will be considered the “Licensor.” Except for the limited purpose of indicating that material is shared under a Creative Commons public license or as otherwise permitted by the Creative Commons policies published at creativecommons.org/policies, Creative Commons does not authorize the use of the trademark “Creative Commons” or any other trademark or logo of Creative Commons without its prior written consent including, without limitation, in connection with any unauthorized modifications to any of its public licenses or any other arrangements, understandings, or agreements concerning use of licensed material. For the avoidance of doubt, this paragraph does not form part of the public licenses. + +Creative Commons may be contacted at creativecommons.org. diff --git a/REUSE.toml b/REUSE.toml index 1dfc14ed2cd..e3b5d562836 100644 --- a/REUSE.toml +++ b/REUSE.toml @@ -15,6 +15,12 @@ precedence = "aggregate" SPDX-FileCopyrightText = "No rights reserved" SPDX-License-Identifier = "CC0-1.0" +[[annotations]] +path = ["help/*.page", "help/*.tmpl", "help/*/legal.xml"] +precedence = "aggregate" +SPDX-FileCopyrightText = "Andy Holmes " +SPDX-License-Identifier = "CC-BY-SA-4.0" + [[annotations]] path = "src/plugins/findmyphone/data/alert.oga" precedence = "aggregate" diff --git a/help/C/.yelp-tools.cfg b/help/C/.yelp-tools.cfg new file mode 100644 index 00000000000..6fb6ad10cd9 --- /dev/null +++ b/help/C/.yelp-tools.cfg @@ -0,0 +1,54 @@ +# SPDX-License-Identifier: CC-BY-SA-3.0 +# SPDX-FileCopyrightText: GNOME Documentation Project +# SDPX-FileContributor: Andy Holmes + +[namespaces] +mal = http://projectmallard.org/1.0/ +xi = http://www.w3.org/2001/XInclude + +[check:hrefs] +allow = https://kdeconnect.kde.org + +[check:validate] +allow = http://www.w3.org/2005/11/its http://itstool.org/extensions/ http://www.w3.org/XML/1998/namespace http://www.w3.org/1999/xlink http://www.w3.org/XML/1998/namespace http://projectmallard.org/experimental/ui/ + +[check:gnome-info-legal-xi] +select = /mal:page/mal:info +assert = xi:include[@href='legal.xml'] +message = Must include legal.xml +xinclude = false + +[check:gnome-info-legal-no] +select = /mal:page/mal:info +assert = not(mal:license) +message = Must not include license directly +xinclude = false + +[check:gnome-desc] +select = /mal:page/mal:info +assert = normalize-space(mal:desc) != '' +message = Must have non-empty desc + +[check:gnome-desc-punc] +select = /mal:page/mal:info/mal:desc +assert = substring(normalize-space(.), string-length(normalize-space(.))) = '.' or substring(normalize-space(.), string-length(normalize-space(.))) = '?' +message = Desc must end with a period or question mark + +[check:gnome-no-desc-link] +desc = Stop putting links in desc elements +select = //mal:desc +assert = not(mal:link) +message = Stop putting links in desc elements + +[check:gnome-trail-title] +skip = hardware-auth.page +desc = Use a short title for link trails +select = /mal:page[@type='guide'] +assert = string-length(mal:title) <= 20 or (mal:info/mal:title[@type='link' and @role='trail'] and string-length(mal:info/mal:title[@type='link' and @role='trail']) <= 20) +message = Use a short title for link trails + +[check:gnome-no-ascii-quotes] +select = //mal:*[not(ancestor-or-self::mal:cmd or ancestor-or-self::mal:code or ancestor-or-self::mal:comment or ancestor-or-self::mal:file or ancestor-or-self::mal:input or ancestor-or-self::mal:key or ancestor-or-self::mal:output or ancestor-or-self::mal:screen or ancestor-or-self::mal:screen or ancestor-or-self::mal:sys)] +assert = not(contains(text(), "'") or contains(text(), '"')) +message = Use ‘curly’ “quotes” instead of 'straight' "quotes" + diff --git a/help/C/device-name.page b/help/C/device-name.page new file mode 100644 index 00000000000..c2b134f2075 --- /dev/null +++ b/help/C/device-name.page @@ -0,0 +1,63 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + + Change the device name + How to set the device name. + + + Change the device name +

+ The device name is what other devices will see when connecting or pairing + with your device. This name will be appear in the device list in the + Android app an other KDE Connect clients. +

+ + + +

+ Open the main window. +

+
+ +

+ Open the + + Main Menu + + menu and select Preferences. +

+
+ +

+ Select the Device Name entry. +

+
+ +

+ Choose a new name for the device and press Enter or click the + + Apply + + button. +

+
+
+ + +

+ It may take time for other devices to display the new name. +

+
+
+ diff --git a/help/C/device-preferences-other.page b/help/C/device-preferences-other.page new file mode 100644 index 00000000000..04905ad0e53 --- /dev/null +++ b/help/C/device-preferences-other.page @@ -0,0 +1,215 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + commands + + Miscellaneous Preferences + Other types of plugins. + + +
+ + + command, commands, execute + + Commands + Add, edit and remove executable commands. + + + Commands +

+ The can be used to allow a remote device to + execute a predefined list of commands on the local device. This guide will + teach you how to add, edit and remove commands. +

+ + + +
+ Adding Commands + + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Other in the view switcher, then + activate the Add Command… row. +

+
+ +

+ Enter values into the Name entry and + Command Line entry, then press + Save. +

+
+ +

+ The command will appear in the preferences, and on the remote + device. +

+
+
+
+ +
+ Editing Commands + + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Other in the view switcher, then + activate the + Edit + button on the command's row. +

+
+ +

+ Enter new values into the Name entry and + Command Line entry, then press + Save. +

+
+ +

+ The command will be updated in the preferences, and on the remote + device. +

+
+
+
+ +
+ Removing Commands + + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Other in the view switcher, then + activate the + Remove + button on the command's row. +

+
+ +

+ Enter values into the Name entry and + Command Line entry, then press + Save. +

+
+ +

+ The command will be removed from the preferences, and the remote + device will no longer be able to execute the command. +

+
+
+
+
+ +
+ + Direct Sharing + Configure direct sharing of files, links and text. + + + Direct Sharing +

+ The can be used to share files, links and text + directly between devices. This guide will teach you how to configure where + received files are saved. +

+ + + +
+ Received Files +

+ To configure direct sharing, start by opening the main window and + selecting a device. +

+ + + +

+ Open the main window and select the device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Other in the view switcher, then + activate the Download directory row. +

+
+ +

+ Use the File Chooser dialog to navigate to a directory, + then press Open. +

+
+
+
+
+
diff --git a/help/C/device-preferences-status.page b/help/C/device-preferences-status.page new file mode 100644 index 00000000000..7a57ff6897b --- /dev/null +++ b/help/C/device-preferences-status.page @@ -0,0 +1,305 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + battery, charge, charging, level, monitor, statistics + + Device Status + Other types of plugins. + + + Device Status +

+ The Battery plugin allows devices to exchange information about their + battery status, such as the level and charging state. +

+ + + Features + +

Monitor remote battery level and charging state

+
+ +

Configurable notifications for low battery and full charge.

+
+ +

Report local battery level and charging status.

+
+
+ +
+ Requirements +

+ To report local battery statistics to a remote device, a battery must be + recognized by UPower. Consult the documentation for your distribution if + your battery is not recognized. +

+
+ +
+ + + + Monitor the battery status + Configure status notifications. + + + Monitor the battery status +

+ This guide will teach you how to configure when notifications are shown + for the battery level and status. +

+ + + +
+ Low Battery Notification +

+ To change the battery notification level, start by opening the main + window and selecting a device. +

+ + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Status in the view switcher, then + toggle the Low Battery Notification row. +

+
+ +

+ Adjust the Level Threshold to control when + the notification will be shown. +

+
+
+
+ +
+ Full Battery Notification +

+ To change the battery notification level, start by opening the main + window and selecting a device. +

+ + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Status in the view switcher, then + toggle the Full Battery Notification row. +

+
+ +

+ Adjust the Level Threshold to control when + the notification will be shown. +

+
+
+
+
+ +
+ + + + Monitor mobile connectivity + Configure status notifications. + + + Monitor mobile connectivity +

+ The monitors the signal strength + and status of mobile connectivity. This guide will teach you how to + configure when notifications are shown for the connection status. +

+ + + +
+ Connectivity Notification + + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Status in the view switcher, then + toggle the Remote Connectivity row. +

+
+
+
+
+ +
+ + + telephony, phone, call, ring + + Phone Call Notification + Lower the volume and pause media while on the phone. + + + Phone Call Notification +

+ The handles phone call notification. This + guide will teach you how configure responses to incoming and ongoing calls. +

+ + + +
+ Incoming Calls + + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Other in the view switcher, then + expand the Incoming Calls row. +

+
+ +

+ Activate the Volume row and select from + Nothing, Lower + and Mute. +

+

+ When the phone rings, the system volume will be adjusted according to + this setting. +

+
+ +

+ Toggle the switch on the Pause Media row. +

+

+ When the phone rings, supported media players will be paused until the + call ends, if enabled. +

+
+
+
+ +
+ Ongoing Calls + + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Other in the view switcher, then + expand the Incoming Calls row. +

+
+ +

+ Activate the Volume row and select from + Nothing, Lower + and Mute. +

+

+ When the phone rings, the system volume will be adjusted according to + this setting. +

+
+ +

+ Toggle the switch on the Mute Microphone + row. +

+

+ When the phone rings, the microphone will be muted until the call + ends, if enabled. +

+
+ +

+ Toggle the switch on the Pause Media row. +

+

+ When the phone rings, supported media players will be paused until the + call ends, if enabled. +

+
+
+
+
+
diff --git a/help/C/device-preferences-sync.page b/help/C/device-preferences-sync.page new file mode 100644 index 00000000000..ef7221174fd --- /dev/null +++ b/help/C/device-preferences-sync.page @@ -0,0 +1,257 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + battery, charge, charging, connectivity, level, monitor, statistics + + Device Preferences (Sync) + Other types of plugins. + + +
+ + + + Sync clipboard content + Configure how clipboard content is synced. + + + Sync clipboard content +

+ The can be used to sync the clipboard + between devices. This guide will teach you how to control the source and + direction the content will be synced in. +

+ + +

+ When enabled, clipboard content will be synced without any consideration + of security implications. This includes passwords and any other + sensitive content. +

+
+ + + +
+ Clipboard Sync +

+ To configure clipboard sync, start by opening the main window and + selecting a device. +

+ + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Sync in the view switcher and + navigate to the Clipboard preferences. +

+
+ +

+ To sync content from the remote device to the local clipboard, + toggle the Remote Clipboard switch. When enabled, content + in the remote clipboard can be pasted from the local clipboard. +

+

+ To sync content from local clipboard to the remote device, toggle + the Local Clipboard switch. When enabled, content will be + sent to the remote device when copied. +

+
+
+
+
+ +
+ + + notification, notifications, sync + + Notification Forwarding + Configure notification sync. + + + Notification Forwarding +

+ This guide will teach you how to control notification forwarding and + filtering by application. +

+ + + +
+ Intelligent Sync +

+ Notifications can be configured to sync in a more intelligent way, by + using the session state as a hint to which device is presently in use. +

+ + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Sync in the view switcher, then + expand the Local Notifications row. +

+
+ +

+ Toggle the switch on the Intelligent Sync + row. +

+
+ +

+ When enabled, local notifications will only be forwarded if the + local session is inactive, and only to remote devices that are + active. +

+ +

+ Connected devices are considered active by default. +

+
+
+
+
+ +
+ Filter Applications +

+ Notifications can be filtered by application, to avoid excessive + disturbances or leaking sensitive data. +

+ + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Sync in the view switcher, then + expand the Local Notifications row. +

+
+ +

+ Activate the Filter by Application row. +

+
+
+
+
+ +
+ + + command, commands, execute + + File Sharing + Configure file sharing. + + + File Sharing +

+ This guide will teach you how to configure a local SFTP server + to integrate with Valent. +

+ + + +
+ SFTP Server +

+ ... +

+ + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Preferences. +

+
+ +

+ Select Sync in the view switcher, then + navigate to the Files group. +

+
+ +

+ To enable file sharing, toggle the switch on the + Local Files row. +

+
+ +

+ Set the value in the Port entry to match + the SFTP server. +

+
+ +

+ The remote device will now be informed of the address and port of + the SFTP server. +

+
+
+
+
+
diff --git a/help/C/device-setup.page b/help/C/device-setup.page new file mode 100644 index 00000000000..f70b950e3cf --- /dev/null +++ b/help/C/device-setup.page @@ -0,0 +1,135 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + Device Setup + Manage and configure trusted devices. + + + Device Setup +

+ Device plugins... +

+ +
+ + + + + KDE Connect — Pairing two devices together + + + Setup a new device + Connect and configure a new device. + + + Setup a new device +

+ Before starting, ensure that both devices you want to connect are on the + same local network. +

+ + + +

+ Open the + Main Window + and press the + + Refresh + + button. +

+
+ +

+ Wait up to 10 seconds for the device to appear in the device list. If + your device does not appear, see + for possible solutions. +

+
+ +

+ Activate the device row to open the + Device Page. + You may + configure a device + before pairing to restrict its access. +

+
+ +

+ Activate the Request Pairing button, then use + the other device to confirm the verification key and accept the request. +

+
+ +

+ Once paired, the available actions and information will be revealed on + the device page. To unpair the device, open the menu on the device page + and select Unpair. +

+
+
+ + +

+ Information about connecting official KDE Connect clients can + be found on the + KDE Connect Wiki. +

+
+
+ +
+ + + + + + Remove a device + How to unpair and remove a device. + + + Remove a Device +

+ Before starting, ensure that both devices you want to connect are on the + same local network. +

+ + + +

+ Open the Main Window. +

+
+ +

+ Activate the device row to open the + Device Page. +

+
+ + + + Device Menu + + Unpair + + in the Device Page. +

+ Activate the Request Pairing button, then use + the other device to confirm the verification key and accept the request. +

+
+
+
+
diff --git a/help/C/figures/ca.andyholmes.Valent.svg b/help/C/figures/ca.andyholmes.Valent.svg new file mode 100644 index 00000000000..cff0d585c5d --- /dev/null +++ b/help/C/figures/ca.andyholmes.Valent.svg @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/help/C/figures/channel-secure-symbolic.svg b/help/C/figures/channel-secure-symbolic.svg new file mode 100644 index 00000000000..e12554e15b2 --- /dev/null +++ b/help/C/figures/channel-secure-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/help/C/figures/document-edit-symbolic.svg b/help/C/figures/document-edit-symbolic.svg new file mode 100644 index 00000000000..d5d54f68132 --- /dev/null +++ b/help/C/figures/document-edit-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/help/C/figures/edit-delete-symbolic.svg b/help/C/figures/edit-delete-symbolic.svg new file mode 100644 index 00000000000..4131277b45b --- /dev/null +++ b/help/C/figures/edit-delete-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/help/C/figures/entry-apply-symbolic.svg b/help/C/figures/entry-apply-symbolic.svg new file mode 100644 index 00000000000..df40e61433b --- /dev/null +++ b/help/C/figures/entry-apply-symbolic.svg @@ -0,0 +1,2 @@ + + diff --git a/help/C/figures/open-menu-symbolic.svg b/help/C/figures/open-menu-symbolic.svg new file mode 100644 index 00000000000..7f4474335d3 --- /dev/null +++ b/help/C/figures/open-menu-symbolic.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/help/C/figures/screenshots/device-page.png b/help/C/figures/screenshots/device-page.png new file mode 100644 index 0000000000000000000000000000000000000000..65dece4fc31b552abe727d93fa4d5d448fc0dc1b GIT binary patch literal 16360 zcmeHuXHXQ~yJrIuL?j6!NDzbu|BqbvtIfD|FFbE7e zCxGUdD_^x zdfB^qZ{f8_gOj-7ljJ>ZEW91uTyN<(xY$7YHrBTUL~q^qvAZR}Cm?i-PefcmOq^fn zmZsV*%?CQG5{+^YbPG~>a9_tCiJcDm@OD4#;zB=O5U-anoL)!$p)nP?w_o;igQ^kT zNu#1l8|;MRXuYO_V@z>mQ+~JE$lVc_;&+3~J70`kRIBPki)E%=d}{QHqOKd18HpKW zKcpb|Fwgh)QQ|Cp19}&mN01N0 zPR|I#9r>SplGKzJ(%iZS=``TbEIp;le(G(GlgUUD#X%M!dNtyN2-^Q#^4z5V&E3Ng z&i(z--7Q>MpSwPD-3-0;B%V^zN5+KZj7-{)GQy4AiTe+=uEqezaL9I`)c)QWj_e)( ztJVc_Ml|+l2~$u8J3L59+fTjdmkBvnLwFFHqo|a{Kexp zMjhR|DdsFoD)g9?APzl#9PfsW@GG9&1ljMt^Ve~keCOgxl8^ZO;>O~DV^qpj* zO{00NFW3Lu9);Vx>Wbe%7pt3$DVM*QSY;+OJgnp4O11fjzq9`=TgHI(&74s&&bC0 zF)dX5We?ih8^T}B?7of17rpGFfViwDJ?@Trpn85?TdIFm<|9iSP+Wpg7Qc1`U_IPOA{$W|Gi|!4Q=jf9YXZ#GzPt zs5ItsedGF^^8l*yfoXSFf&pHBrIsSQcKEd1nk0(*`?zhF5B1_hnInCH*5qevl2Su9 z0{G&yE}f9(mZ!@#bu!o7AwknltR!mk^D0>Ms0!{Yc}zV2wEp;+OE{V_FOJ0Y`Gye* zh6iGna~^th`PnHi@;r@4@OK_ zUsJ6IHG30`2QY+oZ8ukLd5W1Cl5%22G1w19I#DrkI(Jx*&5au*ZaYE0n@=`V{SU_N z!WwgOa-_(K=x?undB8%!;du)2-8u?x{*awkX0Wl3LZN8VgLi&hY<-O32~^c8z5Ttp zk}vN9sZ)3ZBYgVsL4#IBZE*F~Ak#!1q1M%THAd2DuYM_|zBCCx3l6Fj?YWRkkUx2x zVpyHyaG}J-Hq(ViOt!sI@M3(Mr(tJOq|KTZ&*M>rsNK3a=Zx3y940?|5ps&*Zjg8$ z>&t3A=}F@D>WXIw5)?Ft@<}rKX(p>(CS{m>(2t9blZvbyaN;pzC0q!GmZd1$k{b<8 z_;&x;#CZt6sMV>MU$VgX&V(-pX=*(Im)JEnHZHxhaE=2JSK9Tb8!N@p?JqWyALhC! zsb8cwhZq`~9cLRMsT=xaifNsEu(NwhE5enPQ1V6e4Kx;Dq<-kOPF9nsWEaZEDjlQuV) zpj%{%T?rQl(bSyr55wYpU%6|QV9q^#^SHXtXzt%h%9&33wERa|u4cS+cUk!dZ%ekO zzW!+O)vH%AGyxY7#P)M&Xjj?GYgaf#!mVSd`eqlsghyQysUf3z(1s3m&(LtWP@2>D z*MPthjmHl!#_J+0!;W^AuSM}eIteddzT8FdnoBdcaT-shPfnBC1s%2(nx^yEMX7oa zR!IFpEl!)2EKPOJA*duTPIvpczKwy8L?2Gkdk4(;mPFKZ8|Lj!#0S6Qo*3r4jXFft zxdi*2ys!>F>9%Nl*~jJC3x!jz2f6xAs`MZ%s@FvpxhwD37K*heGonpY2Ue%f3wQRL ztgb_u(R)(&n0AoZc|5;H?{DiHbqn45*AX2vWhN4?IX!#&iIedrKg?Gw6ynJsf(Qey z-1Kxtg-?$=EcrVYx3RJ`K>z%iDVxc<73pn|w2axyNZV4u27ARX*-Xti z)vwL$3?9of5nuH!N&ey`;n8Bwx|N9!jf1N&h`P&4NlBIDbuD^yEP8-T!$-h0(+SyY zKEA&R#t>6V&xD&*Idsi1^q`RI>3+9(d$Rv@1NZ2`(?=P+B+&QFh6dx418mQ_0JzfH z>gvF2W_k43n85})vVZ)%(r@^oqM%f|EAxIJvd(c#(InrwXLS6dS}e}3=XivqOAPbg z;N3${@d%@7<*G4`y#3q4c_VU2>{A|V3=fn~*DrO5l-@7USe^3fAKnVPIEkJO_4D&9 zqj-O8IWs+N+N(=dv8!7$RH!Z{x3Q1&yIf~unfH?k#*b0|!2IXtbi;lQZ-~k+rl0pv z4JZG0&6H=%Owg7TcC1XkW+u={!A;_N47Knz--#Nx49l_)kzR}}lU}~nm-YEMvyPnW zxdP-1J#KnbC&+m(+914Zu3p%b1s%GYdUQ}vR64wkmpT~poS}03KH7XB-1NKk3Z1xj zetO_qK`bWb0ZZVY`N;jfAq^*xzwp#VQQQ`?XuXu?*?mWRt8v$JlVrD7uz#hji*abZ zw56n^gr};qa^-g$+307(3L!fb{Z%GuNuQa%)O+hC4V#0UrHvoKIae9Pb-EaXJ~y9X z-HNiZva%C!3XSjBwz`gvPfa1WI*<}hIZRvCA@?SI&1;6H4$4Jz=^`1UC_K*f7hD>B~ZGj8`aKxz6=7S1nbm>qVQz*?wu*@Bwyme<6l<&5G&dgORbZ zDKAq(SC#dT#Lz6VOSlsib_wF*;*}O{1Pmd21L9|ULu@J+CoLC6FRsuOf_Uib>r0Ug zC=Uz_tPI?DRA8ZybDpbTFB#&lnPSQ4&vPnms{uTKOJk?%w2SmhN5;ymat_V^`Izd~Y&bnV z4d1d)+tqv7B@&dcIBtCI$a^{AH>kqC3YMbi5B68|?{T|~;sWiwwd3{D(VtoJY$|DK zY4xkQsgerDc(LCQUg`TeMrsl;)AucdFpR6B|=;c`VbZq)rh;aZ#{z z1_%&wmx)T1#m+d+wR$POAlK4&Mq^Im8H5cBEjL(VwZ_VAVklo7UPQUMxoIf;d3n=S zGbku%ZT%@BqkB`ZB;)8vu`!#a>G&&#>YG}dh#(ngj~IEjy{>&~7Z)cCYhD6JIN%nS;TntXz9ELFs1aAn|=&ydQ}HI*2Abk=4E zV|bfCM6Wdl>{fa%cOwypCuejrp^dDoarb6^rb`8}s^lR(qc@ul&ESYXL&-Rz^U?Fx zE5=4f-eBCyi8CRG(}~mf(2-C0^4&#|$6{2(`zLh|(bmr$EgUB9%#Jc5d?JgtLbifZ zgd7q@Tqd$hgO@oc>b&g4TnT(wDPQfKM0Z%y@mofyOCMPmxVin>3dTrGG>0@$zKS^5 zn%!Cr?3dV*R2e)!JMq~c)?eQrHP`35uI=Ww#XPy1`zZP2x95baA-ooe+0O~d96?P@ zd>1W#cO6c<{Kub!0{2#;H-)i>b{gM6P5gTWc&%zZ7KL1=M9-Fa!v?BG&5EWQ{Ahfp z4XKVz%)BZ-X_3{AH6^D7Jpd@?P)wS20^y6C^$5(|;#@gpeDz?2IzZ;c!22TL4&KnmprmLjDMeoAGWhAnUigG>%#Ai+zV$^tsF9|n?2HNPaAuW; zovouiez1RA+L;4&$maxGqna3cP?52EGJDa?>d+ZW8@SbUxQCM1%CD<4gqI#1(oQ^y zU#s!kn)xiD%a$?Q8Fw=;M-}lfv84IfvFYq!5}x7EKW$95jm{iY53vqd1yTBR=7O57 zrku1{tB{}vT|>?6Wb8Ft*%>93LxVLJqG3skr)KY*`!|e`6#8i(?#_Nk%Am7V-tJ*! zE)2m?p4i4Vf?{lPIOUbV({j3l_BCypErr9i!nSV^tVOAq*DveF#@Ve=wR_XqVMmCt zfmiJ5`AJFFkIq8lZt%+uzibOO3veReubx2Him|Ggi!i7&e?WCn2r$LFs&Uj z>twSbfryMROOs=L^~c$hBp%a3P#_$}zE~L5dpkG^fBCSk7}6V+CO9A6ANBSFEgnZF zz?q0Z`2=uXb#O0*-?5#RWk}WD7jz=d24-$6kH5x_xe)Zm)PV9JhB<12{-sqRP2yV$)Jvcaso`D{p>tN=Ytx1A|f&PUbUGdQr_ic76ap^5@3g z@#VP?*iO`9IW6C0RGOo00S@Fika_>PkoEW1&v<3PYdMz}rXbhou?EvI1aUm=>{NUq z#|!|>*WIq$B0@q`$8RF>(iNhd)_AF*8&SAV!&6dIh3$Xd0zHR=F7EF2n4B5<&aFdE zav}~Y;`dft_Nvquu~xS2Pbj*7jlGXD$q&H81kJ*x2LJ$eX|MM68VnWUJj|2InjFS1Ao38%?j_b@g zvWED$IAE%TMMU5lnx*+YP+2&RoCZuvVMT>DAsHij?%VU>sj1KIqMv1NJ&_WEIEn!H zRA&7ME(5~@U2W~RMn*P;Z7>7;{eUy{&TN;Rg)NA04=#|zF*4xM^G@DoS2fpB1%L5_-6R-ft{8j2$yUn43b z9I$`q(gwYbbQkR%tW*ML8gO-{4}t@-x4s&m2R?|xf%yKXm-a~M8!0kj&7kkHtEBK- zy$n5FWHKhZ3~5?KjA;tAqS}UC_t%DDv;|M&H4VvuKv76@h{yvUKq_wI>PH&VN7?Hq zU#e?rigI!k0OqJJsa=RJ48iXFZCMR|Th)xj5L!~s`496@otL3NhDp z?X4k*GotnxfU9>@2D{&L`b>Fr)ur2=9q*^yb4!O&Y~kf?xFrJ2qn06UdU4=(VJk%s z<-_kf*qr865#Ov`M9<7@2By=P`De`r6n#71Uq1;Ugx-{Ea41lX?m(ut? zY{qyyIXS&hB80xkMscnH(2NFyk#vcXTK`;eSKuF&6zP!qky7(gT0vX?;{Z^zCYpk3 zz^v(&@#D%i?a-QJ@OI7bEuK1biM1r=v4^QMl8TZNrp?}dqin|HQ|Ys=2e_$pMocY$ zSM|FniG8%ThD|W$bC!JM+UE+?VC#!3)Wk2Mo7JE%THn3w{`M1nt={DzIjt!V(Ko&Z z4l;RRcd*_$3ci z0lijWr5peegNAeNUCR9^DdHD$aJu?pCps9>&>YM47>CgkQ*cPMVqTJbL6U@4-~mXK zk$46P(1T=CKxtr*@U{Ov_l-`#ItnBlF*8bARW$}w+^Uch-)eBqtjIievZko6E}3l= z_jf=${ta*@9UUE92wWzs9l(1*_Unk!|H9vZ*31C3VWoTw`iJAzN*kFBa(M-pVgVOa zEx4Bs*z15QrK7Kp_&C5ZnSg_ClD(Cw$&n3OKpdk~3PkgYoaPP{G59W{$AdVCCjX7> z`=65W-~Y2ckN3SM%bPEZxR6dnKc<3FZu(Zcf@de<2423ObVli{7sF#7Qf3~_W0}^a zd4I{xKye8Dd~fdf>>R)wjKnjO8*)f?yKn%wsbe~*VmjU_vmS@w$VzP=1)nv8AOPRb zzTLXdgUgJP-(fNo_zIA1Xp4DVTpTgM^PQ8kQ@l%>hX4sKY}W<`1r1M67lSEx7oFn$ zE=d!p6eXpcG2Lm&56XgymX}w>v-^y45T5F>b8S}E{idd-iI%Vy@HT4FNT3&dV8A>@ z@Gj3G@tGw3HM2C8Vfs-z--0M0- z^#t55$mX*dAM!|+c85W~8jVnJ9l&t^zVUKoTV&&U<_Bt~XXFja7fRO>y0o_nh@s!8 zt;0N#-R+T<#&jmr`YNr2&(=-ffxr`nD=bR;eN~) z)~16Ar}~ZZ9`wL~g-CVaPM*w}ii?X2+z41#zY#K_r|P_lBk>_I{@Xki?CJh;iQb3P zeon`GtBKj56Px;u+rZQcCAr&+4p54xFVG0xc?&vC=(mgm@5Q)#YujB+8fR0W*;&Pl zDe9Yeya4<`YwxTK#@Q=CXOUX^lPqZWm-_-z+II2`FJCO8winh-R0i1)CJU>LhciK? zfOP_Ruld_WJxyF!HHquZ@y8a=<%irRwVH5ea+-VVcAtjm5^;0iL!(B2j~1D`1Xt;@ z`K>xvI&ZoOG0;F%&vI6Y4J&NbP^Ar<^{R=-efC!dfR^>@8oMK)%g3oLM>j)`ddx>= znu7K>8@3)Mj+B@dRac8h0sfvM;a384rDD?tJut<7Qy!5h@pZ1g6k$~wQ|~usfvY*_ zeY4>0j^o3yi$iojfZKY;#;KsDv8k+WZt4XEHT>xN56U_pa zsR8I(TSl0VB-^DI_^gk>DZGX*5O<#oZ$9dCb38vi5(fHx;qRM+!%g4_T!4_WU>IU$JQJLk7=H0X{`<9ttCAJ zRPUz>ds_Beb#axv^uR(Oy%@q$l9ctyDok%ctu_ILOFBbC=48CT^2s;cG=L+3@bR&E zJI>91s@CIpRU_=KildX$&_tCJsD^O!1)V{|>sRjp7#yn#Z_8%6F6*boUvp2SbX0%|pkV9-yNz1}ss8 zoUNOWo*n*$oH?j_4ujd~dC;ToP`+A;xTdbmfZ06~vg#xOB8Xw4H&`)F%2)PnFR%U; z1ZB?s`;cPV_hy4D&^4!_J3rV}6XQh}h(h*0F%8qS{86Z?sd4(%n|wUhC7lbjE#<`X zKV348AZ+U~=|QBl7hp+F;)Z_I#r^qyI{|HezJvG--@U~0J8f?uhOQvJPy>J~56{e$ z45>?~0kzh!lm?1ci0avZr4R7-{k5V}M{qNS{U_kJhao{4G`H*GL>=JJSd10iTltjW zIMWz#hQcfzjQ9LlgtHQ^1WqHL2LM_d9vR799m;b8=z5~wr^qY_D{LCD{Jx-P%6HOb z;)})e^q@_#vo-ye!E&3P%HShU;036?dLRcv%;$auYDr`v*uSnxw@A+cL{lJ$)hg$4 zfntL)Ihei!29S7o1LrHJoQW;GlyJ>kRW(0O#PkI3yv^Y1F#ym;FkQrV!vIujIJbdQ zfH+>La-9|r0i0evjkhlC4=i2CoVLku(38R{Qazv-+LMt(YM>5j=cx|^%(@4wz86Os z7X=POxvL+n;s-8H`!95yk4Ag2pm+48OBus?t>3&u{dZ+xZB<)cEQiJF5+5JMg1||) ze)Go%ELrAYpklL)R)2oai(`;pLSg5pA6+XzOu9AgC$T!rHisMo?W7>&#bZ%U|`UU>5}CD!a_ltCW-!?_T~c(STh@HoN>OF$EJcX3oHN_pP1XUUI&xrmk!!% zmB*rD)9Fsn@vnO=hUhcDx9bPz>n-Q1Ks*#b|FbA;{hj=5)2~IF<&E;$V_axiE~|wruOhOJlgg* zxi{_ow!Xf8?;BaDCaAahbfnK9h)EdU3lIrnJPI8U55gbFu4(SAmkXpaCnqL=oc0h- zL)0ih0atH|tbk&s1=36rv?W*sfd_#;{D&UqCol#1!G_=KjCp1v51Tm-1cPD_&}lmm8SVOe$)B! z`dNGf=!?UXlSQh$O_j6Tuu8w#a&b9k~+`_JQ>`c3;#st!SXa}<_%SS&Vhqpa&Qfc5#fTxxhQP5RGz;jotqH~J04uJJ%3 zNb@a#qx&!Y*K;!vei0r?Qo&Tf%rK)87Dogq5!QM}K zvekmT^g&=qu&Mxoc(6<6+@mj9P-)(MEHDZRC%)ZIU2fGy3Kylo-M)J#3@spVUBaXE6w)M-Gr=K~IsGydysHMcD8Jc|8j$b8Kbdq zr2>fQv71{dOj|*9Fa?M|<~p|)fF%=?ldA5e5R?PB?%WUdjCZVk88R*A5pQ3TF_j$c zV%CjkkCW2<7hZjopZXVCdYCBv`zhH9&>=?w)(LYO_^1%crDh&_vEjFe!p|@iPG!24Nwg74QLikFD^-pT;-ka^9-5 z(yLCk->F;*PzAXD@f&5<#Z_2#_i4S%z5=flz^;{!!*`{Cn^iCr_WL>0N(YTO+OOrr zbQ;LwFcpWJaALwWh=2vm6;NjqwFGOtL4^`iNTs^?Dr?i9g&3__=Ra?h7zgxQj&Lg*9hE#J2ZF0dMnzy~sR8owPtSy}V zi%b`_;8x%%SZTe&iw0&7QXC7Ty1!)wv^Me8?6(go7XZ6eOA%7J_Rpj5wDTtMk~_+v zku?FBS+EE+gc<+ExQ|_zptm2=ZehF3So5-Hi`g|%sA?`6Y~1?XeRL*^e_{xO~*Tm>G2Rf6Ahd2K$R}7 z{>XS6i5K5?A9JY8T8?sg@&lU%nhM~SfTFIgtqlT`Za09W{CEe^^4Vwoc=q%%J2LY< zr+(6gNH;fQf)ffUb_`s`ppf(3j2cGL@Vj6WgoyCHdz?2&?t-524}G#8x^@0HiAqzV zCC}`&#D(~_SCwrKPsGkt9r8G_wGllYsJ7&H&V+Qf?bN=brhbNG%x-SYN4fC07vm+= zVd)c(OfnOYs5FmG+7WrY@D!z}tD=Y;V8~jDT;~N0e6xO?$7Q-+7mOD;RU@Eh^_=5S zLww}qmUzIUQ|8vlYl$r|0_=ck@Hv^Zy%Y(QuNpBX%gv*K2X%iE_Zz~8o`m0m#pJ(= z^8f7@Vk5H5>!(NkVbwsaKxf1HZA2kZ2tEMIaGxB?{09KpzCa?~gdB%|OOg7&b_}S` zeB{7AxDU$Q0B|&c;$hOixO?Oc+|PAjKK=w5a#var3cm^#&26Q%ciQR$&+xAZ`Tw3nAEBgAoEbv@%qvWTjTio)6C?`GKcY}i_XRC> z4S4jUHVD(){*X;C{Mi|Ffi^I^DZ!SAru`9P;Jg&TQGV04mf0sAHm~Q_VTDt5NH-UV z$~Duz#*Wubqh7uwP(zA7{#&GE&b&hwu4VkZ!rSxi9rhrb1 z@zwwX7_?X|P{-k`!2lF4nTd>{e=Oo?1r_0jA`Dzb7-R!o*y5YjC8#mMrCrw=pgdSI z&Tgi)&w@QmFs1jwwhkgop0mn|rrklz%2wSzbvhou&AH=TbQ`x!K zi-{5`HbJY@P^NoCZ8SaDI0YQ!b5<3Au&sZT91g1T4o~~drWx7tcsrK@8?oh<+t`<^ z2e&VUKaC;Re*?<^u;RfAlV+~*eH0KGBAG({*XplqC-(;{PS&`M9yT9J!S3Te@J z**oW0h))x=A>ixMY6Kmx=J~7@ra7G z>pkgGvkJEtAoA>k-e3R_$J=8w9(;)7k%!x&&e;BuC%w81D#I7K%NY>3gISsnUv&R@ zBt`k^v)4@n&v9WOfnAR&sHuUs570^YI!h;fW1g6pAQeNo82<(g8>Sjz$9Z9cr$@Un z^?eWh0fXHyy*MsC?sE&(-jjHSldl2xmubU7;1CX|0j>jn}=LYj3rn40#xM6?>@4Z=v$u&D9fjCH1 zha9@Agw7_MN&}8B@!u{9zoVVI0`P4e(Apv0sHXogjP-I4%CLuI zU0*$TcKGoy9LSufU7(DWhXyl4Uro8LuOFHa`$dRe0sC4&*->V-l%j(2#Q>OlDjQCO zk&QCVzQCs;A*gbjm4>~yzH#7Y0jalQfu6{N0LUZ&*MK|%0@i>%I#3x%`-%OjKQv5O zT9YXjNP?x!?{?0+8!#|1jL74Lrwo9tC17_!G#@i6mOM|zTw3J2ivw}*jdD$o}Y&m2?-0s z92mZwV(blITU(2WK=}k2YdqGC6Fr6U(Kf$+OCU70wWcJUhMhCu$UcAG5$ zntf7I5?X*H42zTR2Q&l#2Ef#Tj|9psz@z{-J;E22YVCblal4(iwnMb;QChH}HgHD( zaE9+6*ph&x`%CidpULBg2PTp@>>TmYP5~5{*Sa2DM@fN-Be$E6^$=(WQ@!mkS%np) zwb;iOJz{%Cl1W;NmH1T2U^K*j$93}gD|g=r(a1fbJSN0xBm&8u7kN*NlOQ~B5sCdZ z!5l+`Q3NvkxxD9<@?GzozG$4x^x6)Q5GFcYSlf@>OL*`o!R=V)0SifHdR>#MUP;Cq z24>V-uY=TcG9EFjUrfwk|LcKdmzTK(k;hZy{p%M*I3${qht!eeG(W^{6NEnv|C0nP z1m<%KTxh2wC;{g`lkffKG0FeB@_(({f0|73U%~ZX!S(-paOE?~Bfl_0P^Re4 z(C^PYCy!MH!9Jul_2L&Fl6jz8h!jT!@Kiu9qbMY+R+REfM>|Tj<7n<50eUhh-z+)3 zVSTf%QBU5)uZ0Mb9dInaI?T8r$AnHfwSl1W!k&M0f})y~twjN))$rMGG$&(LFFY~_ z+c+xf15l+M|s&)Q8@8dG!P>OUa&; z*t~ia#%vSxniA**ZvOP_P^R2*dTNDq7)DHxN7t#l@On~i(*^@#^?qF5*@BiifFOYd zkF4+^s{F0Gqt}>?W{l@D|4DH{Q=t=cd-77sRl8%xFrX4D=^O*N@=eSTbdV2cIURAYc z|6gJ;*jz}NtS4#uk2T7@;f3UE&T2i__Rdv9$Ug*RV{?;W@FWE1cn}@50iG`z1HbFl zOX=H16?k5%%GFtnHK4WqifRi*EaJrv;Tqa@JRJoF%oJJh9Ns-@e;FKz?Tg1^XNPv~ zqkzwDzfv7U=)IhI4@??{G=GxPbGW6)BFvV~_ zDaU3nH@aZ_r#g`uCaR1JPYO!EXncIc{7@QduAEesQKw}zFrVc`*HLAhc4YTQFFIiQ zsKRPE@@}_6Yq}*jBr={0z7R^E=M4F0qcOO;_Sb}9Jyo}7(=xHgom%`6ZgGtuO+R zU$8g1`bgaE_E4gC!KQ}7JHhrGgY*M&PTv{Z>Xz51@ivZO6TGt-HX_K=7Y*FH4a{I1 zaR?$iBOc$$lW~`1BgUj0uZ{}(iurQ<2B52Td+BXV9jqg%G0`59*wa^)yApQotC;tT zS04=8q_V*u&oV^mT|G3F^gay-Rq0(!PjOKGT(9KBQu?MI^$XFPn9pMYM$-Jg5OaO^)|! zQ0FDEj+*8{+!;i@zMF8vPJ(Ah-O%h136MPN&?CV~5feN2>G&RM3$bTgzT+lVy*a<+ zkz3ezoSkOsJw9h04?fuAf=s~kd1;tKI@{$a#}b!j6hnFWbV;hwiGd2l zp;OX-(MSE&1P3Lg>f7K_I$vBr{)NQW^?kHQ?y~Ljhk<%-2fO;dVD(*3aY*MTFRykt zrt*<$FDj!#K|JH9UPy$l6*E{jePl&iy30Z8mahfNl_!}ylvbrZoyoYL=>?ZeMpK=T zu6M6n#*j6ZTE|wTvAzJ6WB51adTO4r0U*myh~i_iPUC zG%W0)>JXq@j`GOerJ|gWduG&qatV5`Rq|xH!X#~VPtNw6S(kov4^^Ky?)zAe>Rl>< zNtCZ7L?U$5E_4RI@YiZ$p8DY40PSoR)-}Tc;qX^o7 zy3Lg6FNGWg%hBKx%SM4HyGJ=BLJ%6a^qWsZ>}bYxd}$F;QFQC$715ml7dPpio}=dE zNd4g*e>_>993%scCvtK-C*GYO!I|txEYELs$JZB$^`7~T2YGTXnN~NNnTz3?Y}lyg zPRMD!x)IdG;QJFdyp^irnl78|w+^%F>_Yy#;KOr=nr0XUtsqgIJ935_v0~=B*DPq8 zI&x?_UKS(o^IXaz&@8&k(C#^7c8AB@bC{7R<`!bX7YEuTHmxpcfY^uS-0zmvc$Vei zK~vN>$2_r3roxVFd^vP>1v9zjdW`p={7O0B?|1hk&2)UgV&A{BY;Yx@B3>(l268my zcUyW~xU08Q-<^BC&4PN#v5pIR_jVYJg6FGB6a<2}K<;I~_7-+@O44JeKBFg22}V$A2H}p2I~xh&m@rz=w23!sFb;7Z&5Y@S*PK zf5ge@-M};0nS2rV2ywOl^}P7X_3#hx2opHN0~MTc{?8vn2bMaE2}b+LS_<@kWEN=L?sH@D}-dH zM8tXB-`_cZpX;3KI)9z(a((;ad2aXp8SnRNeV$udnyL)69JC}7iQ&xYliDQGrV$c} zVl(wt{G{~QTWb8X$yHlbiIm^MHHmMwn4eMB+QdNGlx!n?j6~W^I&)I-qF3_tz;)jX z7O&*z&vjV#-yseewNb@nXK$?aZ6!&l$#UZF61 zI_OJG*#l;!-kXfuK5+9TOVvrRD4q7{%%`Z74ZEo3n3Nkol)Awd%>3!wk3hT0*Y@#2 z{X9(TvyAVSD$d~|3B^I(ottYfm1ci->L`goN6lBigNxzxWlEbW>TgTT{Q2Em zeVVM9R&OyY^}jLFeYr=y&uw@4??9VtD|yXBoqy=~g1rvgrT6p;I~1Gt>riCx-&}E` z$v$^AhFK{w_rxY^n?c5%?;J!F40a{72s90(yr$-Rl37`N;lWBtKBHH3M_k>bQi_U0 zQ+8^rv3N_yA=8O>GTcIU`_4L591b?@ICRH+DT!H0N~)&EQ8nB1s&5tJXc_Z94Z)0z zP1Dvh6@t@8l&BZ>{pIhxkr!!a`_$Ww-N(B^?09ez$Lp4@1=(||7~n%KsZ<_fZg_#G z>2%Jfw*IW|Sz?OE-Q}!4j6Jj1rgU1(x_Pmij%vGSQgUJEPvQK{XVvd!HOO_u8Y z&R|yFKeRO0?_!eXd^hvVW7=l8HJRB%BCt|3?oG_+-zEQum%NSPbd~g3WK3agfBdl2 zJetP*9Bot_wW%sa_aK8@;)TWEPyE!W`7~OS!(_VYEY--#G~Xn68&X+VG-@on9_qc= zyU9N1dR3-fZR*eCyMx^f1phH_RWqG_w_?4haP3xaVIR5sg3_ZyrRu5_ZEYoGwpA_t z>-Q3$((rLd7B@F{+P;bEOcbPie#EYEd%YlgUDVbW8KoxrWEoR=7Nv0M?jMpCjtMK( zEn8fwXv{sSPG89HaNoDDS-D$}B&~Nr;;Xh`0<)5CS>5Ns>qh#DcDZHKr)Me-)jS(u zYnY{vj-xfrf8gA?x!Xvzw76?SdpE06ue8>^#6 zM9THk`gDd?N8^jcld<3pFGyKkv6GYF%`Rqr7q_`8lU$*^#n~?GMW)`1Oj6m7-p<6Q zhLsx!pVRQ=H9tr<7Yr1n%vlju3$oAk=+CdKC}mpD+f~=Oxx=@*^!jtklH!R78onnr z#h#kol1_P%cuq=>h(*frkX+si|1iS0D;F7vEZ z@zA*9vts7YFWKnLt)v}Gn|6CxI8@~DeJo{uF{ znvmCJom?~4?Bx&jL~6x#M)s*DJ!v-XqcydYH=rx1Bzfs%c|PF^W^Oy*{iBth&NP?m zwHVjYW{Mu)T?WO&Tp2?zgt;V)$kquf-u?NdH!3Rm#%?o9Tr-kjG9o*!?=<#pb?<&* zdM^C!h@yc|Ib9&B#^{rs9@Jji~HOz~RUbGE<#>({Tf$LPtfVkZyTqaNMQ z;AZUkc}Q`(hr#8`<@x8***gUyGY@_Q&qX!w|Xz%M{zpSO(cI?+aCsny4AYb?GJ=TyONh-JH_&cR5y~J7E`JPQ8wDOdir;>}Ma!MY9zTLgD z4%S4gr!)b7C$k6s{+{}CE=9AEvcnrU*0IaBNjt~wq`LaY^u4N42L;^fj|Dgk?xM3K zr@ZG@Wm*&D=oS1I`FcllTU=s>>C$N>wNhg>zK?cZN8f$?xRy*FR=2rEx)8{!B=vH9 zsczg!^7GX1T7G_hA)D{jnW9pT9~0b1irl!5aaAvMC##B`^EumIQe#Q6xUiJ^`0CnV zb(olEbE3GRmrN>|&wj8(skt+l`6q9)tjdqy-t%77hwM6^PnwN=U{h=KP%Cg4`1jd7 zDO>+oxM5*Xna8UYC$;z^S8Sh+M{`SeT2f!=Ms=~1^p@$E`pquwF?~O@JuFUBr0&B2 zv!Jt>baJa%`V5V@nbq-@w)dWD0nEAO1^3TpQhbzW-d>Hh|MNMw-EVK%C)$&wBPk`4 zI<{4Dw$&QV+shZe?Jg_3Fe847v-nruZHh;^!^#T7YSetQroL+q%L5%BMEV9PJh|Re zs@i?Z%g?;#+|$oc+~wSqQ0jOlPRhlZ@e(~jHz{tnmm5<| zZ^vBT;A>)$Z#(UqQSpC!xX23$JX*ylaDPaUC4z! z+RJs*e9Xce1?3Ba=LK0_M7ek}>yKK`N%%}qJ(o4Ecz+POLjhWcX$7~xDwg2OPcvZSyWG4VrFD^p^jSF&X1kr zB^N`4~|@Z{PZccv$Hc}vvO~3wA^3n zt^(t*i-+IhVe&MyTdkeGz1wC`;k4=P+qYV|9rKHe%3fZQTj|*Y3(XsQXXsrQMow|b z`*U5te*I})UPyE_lai9s-Fx?L(6I8q?&^w9DZ}NfJZ6+sRJPjM+404k{# z^y$`ki(fpv!`IjMbET^lmeG^!Y~_qrh26{*zN@z!=-32aUpDrmWDL8xvN%!RyP%Za zer1MxX4)kp=i=d5wIupzxsv+n0CEgtS!c_R@)Hgs;VF~EtBL9{PqH#uO75XDQ0X#3S=A)XCRZ zCN*IFdVNE~4f61#>T0gzj)Nz&HB-8O+V_^wVDH@A%1~!lP}9&ED9)i#ETqV%(UpCU z*S^1^u%jziJICH%#rXQz4!4=!9R;uc9$r25A}ed_#&V;))9R7~F7bZE*Sm(twls03 z!ooMXbjJska4|$)^`-`Bll{2iIn7cU6v(MKvPTH{NiG4Mjl)?GG)^CmE#>A9;RkuDzA(fZH%TMo!ql6PRP)_4ewWR8<}Au}V7?%_D2@Dze_yrc^I!lw4PLH#YWWsa@Ad^YNiAVdOUx zX#r7>AMbJd@#X#abz{3G2`(RQ>TmqqeSP=JnCn}n?ZdL&pIq@D= zanliIwX{gQ%frjX<(PEJ^$Uy1CtT;3N28A?8fUi;um4*m1$KAqzPozt`)}`LN$0w6 z$!=+Ke)AjaLmTGVl!0_Rg?39xap>i-l{*eKJiCX*6-&{_}txk(NNpkg9c`|LCL0$`0AG@GNR>_oSjAX?A_bL%wK<{Q_hu-k1sqj zvQ#={L2{HL@#5iA_V)G}oC54!+FO};BBJHj+0%S~(o|PhKkBe`{`I}p(t*h)QBc2( zSSqw3oAt}=ZAyP1qc>kXAL{S#ulv&N(2bin`Qn?1d01Xu9gRFbsGy~Fcff+PTdD!w zOW&BfKXI2}bBFjyXD@Ypeq-;O<`_%6(VMAxOzeDH;}|8jZQC|I_3M}0#{>}yE=H^SsFx6q8z#nrXvH`SIc zFBVU!sw!u8J<*Yaarm$&poi3CwsfeiRqH6Z9`L>pz_tL`)=R4voIXS`?$Kg zKWD15rg`8Y{M3er6OU%`^i1?fqYqVzXvX?0s4s%>zMS<>$Oj0wM zNXpJ*I>^z&T3}Se@n?2G+1mQx`r3s21uH=_GXRqc=h4u&&KI&Z-#))mtaa&9$faBz zMWOiOQ2>@R?SsXij-N(3wu$~silN>jbh{wDi7q@56 zp3MR4i)nd-zixh-(69N{vi8y(Wj9sUho9oJM8AIT+VOTR){b5OB&sF2o{jX$BR zp|~gJ>%Tukjjb7~&XaBX-;KF^caz#eMYUHzfSxFfftx7o{cU__O1nOnI~pg;`EjhQ ztY{s6fHgqP$fz>(%1^|;Ti9d$7VCk!zCO+{CSDaIBc6RMG+P-sg0B=?^6lOon3yHa zEEI27Tx9y4s@Q2*N#f#=*C+!D>^3Z1{zmmhg>je4X{-0uVI`W`uD_0DdF07{32(Nm zW9$fL&~R_~NYUNtrN-Nfw&T0D&^T?OK3BcS7$U+~Z;HO#*qNtKAc#7;qmMl22J?!H z(B};e9gaQE8Mc;7Q|G6MZWP^h?T{}+=>-3maKVnizKfCF?KczbOubcabkCcMgrm1P z4^-@GSWc?F&dfDqxTkJV41A_<@x$2GeRmNFp8>;13-?Lo2c#*`=tKMX{EHC}_boVti zjdr1`)Nbtx4u4LmvINg-g=O@MrUpVgQ7^B~MVYS)LWOuP;+B8&fu5~eL0^v*b04i0 zSu#bFN+`am(<_p93m#WJF`N78v}6*6!^ph{W!vk8ES^$wuFvb`#ntT4zj$%`6YWDM z_neP){B1RvMHkF$c4whkzn3-C^wGt`=h5t`n0OxL=Q9FMd~-QiV>D#ynD^t1V!y4` z6o&n5Cd-}}>@ylS&3I-dgNVk_H;s){a&mIi3=F5R8)<22wTz9KVoujFrI1LzH>@Xkm z;Rhc^yvVL4;v5V=e*E}4Hbz;ftG*+J|Iu!KOrcWF#m8A$4LR2VvhcN!>PPu=?Rr4(pE{QaE0|6OTwsA=LQR*B0O zE>MJ;8kAKpMYL>VZKI77xN>80;uE>6YbUmGnN*5iUc)E(4FZbn#cTj61qB6#-@5hY zUCdq)^9K5=6jRM)$soVgCB7p^=sG$&h?+o0N50FaJl`n4z72JJx&#onyU2nr-=Olw zj~}+nfB){`)n``po$8~2ySUM zlGA7dL-qRKDWXoD&HO%CBaQJAGODI7)zeVy4`LTO?;`%->?zqCZUsg4@Gt_na@GL} zNE&%h?hg(LQOxZima3%dcto=kDh_WC^K4J?fkEFz4Y#>LZuD&6t-7~&c5d6Xi$+W) z*5~(+4*V@}PXV3hx^IN^^K@>0%2rlZH9H!7KqE2u$&-C+zY78^=Gu+XN$jWk~ zJrq^i7wS&`JXU_-*N{p$mDa)S_>=UXnIF%+S{0H^-l%d6QrN9vZ!chGZtfst{wY(ParZ8>dWzHozciq|wKdbwBQebNjg6zFT}H|-E=5h{Fgx2zjvbp{>T?`*3|Qrqir-<- zKZefV-f=|OYu;pO!g%9v{M!|GDel?98afg&qMUWBOEaPm118%tNv}2ONDyhl)cJ3M z_~jedMs*nnaAWEPUp3dec28X_we2_@92S=G=n)B8jl`h;s>8SO@yF<|x|J>##c>)3 z!)X?%LzyLZZrc_#J5VKEO0OJF5tx?7>;3EdCPzodSer=R*K+=AUiN)u3_}4Mveh*; z={mWEc3t`W*Jy0+(3j_x@E<%#4cWkyEQ!?$q_7OA+M07A+fpz|iF!j{Wmw61Q$+0sj3h%#?l0)~#mC^TP_tj^hL? z+`oT601qghyLF|g*vq9 z8U*Fuk+cb7iQ1BF3JUWPFbK+QC9)D_7<7kh)lK-CpPv<|ghFCAAfJmf3 zi>A1A5LIHaN?hx=cI~N`pfyvHIjNvPD!Vptn>S!>8&-v?sVN_OsN%_!TOMa*h?v%G ziP$CD@M8@P@5tr+deoA_fDQkvR#qA4M_AQF1tAKIP1`(1p-Hp0E%ae+SwoBsmr~>(G^{rZUe#=sv5E2V zJH<7m18<-hpT5)o@AmA|F?I|GH6M!p-P8Mo^ixmnN$-7e6YGU9m;`PYqh?!ZR>;05 z=G}gaAJqT-_(i>$bFpm$%dOzVCn+c6k8V?<7U5&LwVRn*>+WdY@4I9W$V?LQv-%#Ngz#CcNE}iZGN^*`pn@6W{pwYq(Bf%lg07or%#_M059LW zcaQX6Wpr_IK`(pMYR$ZTdoVEhD3k$0OiT5dJpq_RMbgsM4S#c!ih?xgJtgQ1VR!na z$J}7#K$T~40m1vz(xNqzB!;0ZpzNH|)n&K*m=I)@=Er6*yWv-mDC;Bf^XE_D>p!mo zTj#juA%fCTLT z+7`W{qT=)mpc6&@SjBWLg-mTz5Iy3GQM~d|P-2*l=sY+1v@I+o#1y=Dy4t)k%Hq>D zboSnFTnq3vf}pPuRRtAOaM@RmkykEa#}OTqiI$WEY0vyKCm=O}PR8J=u=gOE1qW~G zf9X!Q`e#lRf5`dAmqVaZ%PT9Uut@TXn6T^Ds3;3#A#0+YzY(TKKVd4>i*%prOt<=! z8h+=_O^``kabc>URzk}0xlS&SI)l7?Eq|W0s3J~`z{ZMN%}4evmG`1pM1oxnM^I0CdY^()%*S3)V@*IdY4KrQLC1d zDDNJ#{kKrSi7{D5?FXe0b{v$!8rUl+$N=qeGly-CMrPO4CQ@NxA-jm#$&7`D=24Qm zQjbYpFpX~cHSTB6p1nZnev+BFiIk<8()-N?<;q5icEnP6%U+UosUAr|Qrd`EZLXY=w-KWBB?}i(U4A`KK&Xy7V=eu zxLv0LM5@<86p?YPtgI9yujP3@Y+y?8VQ_gqF|q9;A|mfvS{h>ZsuH{A^=kz}v>^JT zW|~|i5b#K-=<|;MD+`d5ovH-<1xe;saxxbLFZCpe=5zm@ib7-zRt}>-=tzvO4l;M>W_>Q#b#7b5ZfoC%}lRl=&^S*!o9vcYvsG_68MtTJHLO|(;NKPuKCICU)m`$)WFMt{D z!O-w<>N4`K=ti=6wCwof8f8?RE0KLd`u^9sqzfX$oFhXYZm>6S4sseTel%Ka4#@5J zG1c7PBH{S&?{921s!%50Yc4a#FuJi?2i3PeqI|8poJaLY)FbVFpKm8GL&4&$SwAXDV7VDsEZt?NeO^ zga*PHsivVpT(r=0&L}?r!af!N$xXiN8w0m~VejeI`pd4~=RfB@_F>0#cOm(zuKpqE z1uifhY+qMTk@>NB<2^@@7Icj7uy&u=g4$+Xbw6sX5GEmFF zHv!q7ZI8M$vSFMB;ozp{w8 zGy?76jv({OlSqVszM1sWeJb=!EPsz-yn#?7=2FDs!}etP03OJ}2@(#8XRbtaeEDL6 zWwWI2F>quruMJd0Zy!1QlNhMwc+WWVg+&r+a{B* zuY)SQ79PJX%1Gbp2Wkcsti&Ii4o&m4y1H1;IT(;9uU!-3k?{(Y^ZUCSk96qJA%3Pj z@FAjHTYgH7eDr8{*m_o3r{DL_e8TiM8+ikgQ;Z6_%%?i@zPD#H{rxpLsY}#Qw-zF&N>Z)+@zplB$4XPM8-d*IeJ#*HHU?oH^6*J z*E;xhW+oDl+I0Tw8{kvM0L#;>N{Z9ir2DQ~S{5lLKYVzrzW(IF?XJbqPz;zjC}m4PFNws%w^@X5TU=u8~X>H%`|KBg`|(gS)@2- zz2eYnTS|;1b|Epy&_=l=ok*YLRs}%JWhlmebmZc;w}OW{|NM4_OUf;rAqRkAdZ?E7 z)~#C!QtpSb3^h}vEIbE5l$HJbWE-M+ndIf=As#B^b|k91{{3Y`zw6i*Jl1Iq4e=`l znD=-gLt)6N0PqCZ!~4kiS3`~r%c>rKP1s{v7ntJ9moLOED?+>eoO}5wF8KA=WV=U` zzMkG~{KetQiBt-*aCeQ*aboJ=8*L)Bq{`lbl>@b42l@=m7e#-6xz(}Gdrk323D()3 zrGaFDio3hGkI}!7okp*5{acMZJ|CYv>>u>dPbvV<13Ie@-?o=|$Bqy@XtK<87ARX8 zs?lXt|DO0g&aye+4s9eeGn2ryhKAg z^(+ldO%-$r5=qwkS0E@9L9(5$W1)ObSLSGzLI zB;wVCr3w)QdmO+e1L|*u-)b4zLIRtz!exxMA!66f|2b5IdxxS@aeXoCeMyba9~Jnq zBsh~VjQx4!e5u96E?Zex6dK<(D4hNN-5P7>+qZ8o7A>r-_JVqw6?W(R>}#v>@q{Yy z=F=x86pI95)6E|~eBkh_yhv)fv%q0d6E(*h!j*d;FYyB0QczJo39C>%{wED9x z9!fWgXTmWHS~D}VuTxWZ5)#+}Xfj*9&CSdRu%E6RmiYWQRQEGy&Y(C2L;E0}4uua& zNumHDsp2>P6A^>9 zGxX`xg9H|Z!39hq5q||j6d+GTwHp998Y5fHA6YK!wlUevSH=# z-(G>LlY11Qc|ojVW?{K;rb<}q_{*lORD*icUZatP5CC|j*WtuZy` zl$#3u{p{jlqV7{tQa;VeF(vQYv#0LruJI}Kph!8O#`GI>4Nb!? zl`ufcDp7=d%wU5MoeERS%*lBNL!GoJ`Ep4U3YpGU6f5NDIX3Wn|Fz zov>=*sxmd1T)P5B6~!Za8`yOZUcRuf;9)1tSOM zKVmM!Q_%XRRlA2`^JZ|(B;Q-ASPwf$8 z@8^SVh+QL<(vm(#xn&DPFe-lX$06ya`C5}|t`yC#?~69KPVZ9!GZcn=rH+1b;=~E$ zIuyuOU2Aj0?>zJqkM7&I1(I8HuV&jiCb$*YM+9{0&d@Ii)M#T)v;8N~q%*3klmBgX zn5#|^3|*|k8=e*vgz4p7i*YAP4S)~!(P=d`GPZ7y#R|-2+>1Ta0-|b<9zA+})&HS- z=(A^sVG%xl^@@j{tSca$_DL0w>V)=WQ0vbPUJN668;Va50BxV(f%qmu)F9ybLv_pY zL!AktQ&4cFv9|yx1JV1$Y<6}2FYZ&gs+Dtb1dW8T)QNqnBX=kI*D+DipwPf`YHGzN z&cPQ(XP*Z-ef;7DGeF3}!-tD}Qri>Is0mdV{uGE$vDK$U16dOdf-Avi0@-}@`0-{S zb9?#VtdYePLJqLCJq(8#f@Vrd};LrlRRP?>w2M#o*N4Y=w_c&{kzo=`A6vS$9GoXctnkUvkh5R)M zDPv<}A*STeVYE_7?_URfXzu2AiC=xkOptYGG3a{@^|x4i7Ow%hPFpC+@G!xG2da!d z!`@h5zgtL%5p?***~~h0V4~mNvEW7I1&u!@H8l#)s|2?SO9)DX`_t#>{S|JL_b!y0 zQmA$fWT-M3RC{eRE39a(B#+0XHI11;v5<8Cu^stB_&Xs%6jV}%(!UlK-eBiB0}%jK z*1>G^`}^w+vO@MP#{rg-WqsIGqqu_f@?e{STE!B)Hd3X_oNaMJ6-K>lAC40ZW-!fD|U7Uoy{q>^-na+*tf!gk_=dv85tct6x{a+*)QT@(1Zx)@4xZSGy7Vw z*{$@-ABql-j*b?&u#VV%5z_$iHg~JfviTv7|NVcbta^63 zq>sz(B$D;CR%y&C&og#k<6oT56y^^u@#JD`{HCj#-Y>JgUgPQ-pIEhoKeZ&~F=PQn z7!6<%Gm3J}9lVZmLi`UCik%a%oIL@oKyZN~f!`yQb3NyLQ;7Upx%I1>Hzv^TVi+sEpknfzC5= zrtIj=q`-@ZDbvnX-DPeoWbX=vM2**<*Vm`Z)1iaj#}lnuYJTAJn3_jI*Nv&EDL!Uu z;2$-@#3iAm!yU#?2tPSb$IfMXU)g!)K9hc$JErW|_+T{30&G=P*3em<=^GniWTL5g zm}ClRQO>zo)Ob#dz3-%=eULNt)NgNV zF%D87?A;_a6>7fJPfpLjSc};=3Td(HpHj3BOLvXCc-YWumJ zdXM-Caa;*^wh*S0-Cp?T;(k1!B<3!4JVSp&PnE{} z<}k%c&rpaX6T7Z?p3!K>u;>pT(m05C>ub1t&996RMCyEgWwi5Hspt5r0kp1w^@#vs z%a828=7xA5K78mknHm4Wrag=8Xw(0SMIoCp6V3=+h{{ZjxX~Ro?(a1iu;GVS*S3BF z7B|pQF?Xr#zbXrHssVhN&@!Zc=ZOJd{9FB_>h50pety4NoXJdYsi2liqwGRGD*?w* z$kam}dx|LGNegJ%AN5d3g{9x62xb?B^liPiVQ|DU(-V)Jn!d3VCRr00=I@G}O}hd>7W zUPva2S)04wVvF=#$p`Onb9lp$>eIDzx(8q9GjcG7k&TW`!h479h!kw48+U!N7IXP# zdui40! zf%1%$5BZaWX;`0YB913V3=jwj@b8;|e_a8E%`N9-7PepR#^IUjpSk3P_BB)5Q?Ig^awT65BIXT&$*CZ=-dYv=qYeZPI14pe0v@K2oZR_upf zaYHs(o~@b__MA2NFW;DNhN6#nLLKs5J*MamM5guI``CrQQw0uS@3<0f(gaGLglFDeUbqCUX&0MRH{GFdJ{$w`V5XmlT8S%E) z9q>pe-{2Op*We{r_^uq2TlvNc1U*vN$V0~Hi|HAZe7NL4s> ziV~|QoLkyMcfc}4DTwg#ac5*a)t!6ySe_eHvLIqZgwuK^J!X1CJcs;t5@9Svf`|at zZa%)CfyVk1v>`WSPmO+G(YzcmdH(Q&|K%_s&NxjL-C8}*Tz&&iZNirq4N-fV6*}bOXo=Jwx>b7%xekSXk!Y-o+qEs0wK$S+9%8qkvabuZ$;6zaZQgloLFL z!rWj@P^cX(US#|8YXpP~dT<_dIcd@tGD` z>bC3;k9-h@>^)*K=sfvX|)}evr7u6M6xhCuhiy*>%w3Qjm37ZZclq zj94C24FSWK+p*so>q6*;r>5vg{}T-(@7y6n#&904qog%EFzF@*;GX#92F@BF9|y@` z_jcNzqk$Mt+ft6w(o*owO?ux?R0GFAtOBseYC7Dvjdn!G#6PM+JoW1@Y!W^w!Sv+a z&~}l0csqpTVf9k49VrlggD*0Z$j59&9H!fG8PNkxs)aoLa%`xp92$%}H|F{^&cnn@Ufz4k1{c!|RQEBTkWJ&czvG-SX&z_}) z>NnNa)P|{kgdJn@nv~n_i%39smFLm3XV2niBoY(~&AbD+JJcIXefG~UWFdP4{7?H! zB;OMz)I%GaoLK!+AC-~1qJq}Prf-a*h%a=_wSWK4W0`^{v(cDmYTs&W(xo^;?cnN@ zLslRJNCkDyT3m{o)rz}&_rK~4El)X&@h#Y6%1fCk6wrp+jem|vm*ibZsZAssiH>1Z z=4Z->%#iK*j_?oWYo3U@PNW((x5cx+jA|!VIfE%U4|EhLP+{X^iz}G5Q0P)nhV-6{ zLsEe1@bux!lt*O@$7!jlvAsgxzko`{g^}TZ-~dtUzhuXB&rQ?<=t6bF*F%)})_-Non_|(! zgcaS@g+v|r;J{U^_bx~hP5v}2)LWVvbHD`25N)teiX_)za}Z+$hEOlZBP1=|ca=kJ zwZp)`fC~iDRC^FhEC`finDYpSi6swxgfC_wq>B246EvybKMnzZ5xWjB;wDTB zWU&_BQ1PO)ezZk99(z-$ZHdW##`b90dkO}uV|^} ze`=ghAhiB}28c@a2CQWXixt1u$!(;M*Fq<2?^mu2S8c~b@8;OW&@EqHuhi1>}fJW68!UL^<7+C z5fFfiCc;*H<>c0v&51Yw(XVjb7bb5uU%h(u#UjE>0(vFX#=Z-b#IYE{Xv8742GLJ4 zH!({x|9-WjI8TqM5p9ofj*bucvcgbGk#es??c|o?6^c16e63#+#%0zSD7XefMgjla zamjaAmr>gm;%nC^hkO?qK;y!o#0p#~s(+Hv36UTQ4y*|V9EB35KzREURUl4(?7))} ze@gD}_q|(?W9QByLKPS!ncrV7AR767pz1gP-Aw?a!bK)d33>=hb-4wvZbSB1`nlg6 zP8)%6Wf72MiHur|hj8 z@*pK$z4}CSHBjtL+WM~p0Fb7bl35|z$=Af<#O1+qAj`m(ix((|k`7_Sp1rDwHNK$W z=-S$vL7B|uBSJ!<1V#Ep72R08Y5`XTG49PK0&ATVpC8tAa@K^l`i%0jM~1Zu*Myjk z7vwo#S==hF!CDSXQwIge8E)gpMDeD9w|v|QI0dMk6AXU@UnloC_Z01Cp{X*sEFbdj zGu_bnUAuM>(e>u2hoHDvrec*e%r+-LO8b92v`U5U#f_Aw5_eR1UrvW@S!~>qqoUhy zokT`ohUe4RIXBm(vxJBPd7ltRfWGY;)kntwKk1MzwVzOGD>@i{OTY4&D+gb`$bJZi`bBKSvKXyOp8 zw59hZ1;F0MZ$hnT1zJ$trw04cf zswKJbM4nRm>nx3=?mtNq4mXt2tzE81I!khapcV%~#5Hs2>&j}gEj@VXkZJtX58-RG zqPOt`-oJl@7}a>6|L?Bo`d+#pk#Oj}`jg3TY5EEQL}#lZRxJO>EdVh(c``w!bOL%K z;Vl^X{qE4Y{_KJp;kYnzOMRO)tGHiP_P)(~1LvbEN<6I8w6*VD_(Q8ojz5EmCU)dr zl?dy?q7zE{Sl%GOk60cAFqg{eo~HXvW7ClW2HbT>RL?%^U?fOTs40i6@1vZ}6cify z<=7l>J8RYA1_mpu%5C+(O=lugAp-Zp&6elfUwT(buK(%2L5-utaiK^a{*ee6B;W~Y zhN-!B_05$`5(`{k>|XBpHPg2fqBrVXSvQ?16hLIC{?7mtVT2-M1S|7VSs5FS<7^_y zY^*Kf80tw>;X8&k`+!^cwIs@<6KBjgIu4s2{fIOjr#5X}Qxl`#n@wlYqKjjUa3BxRc+Pj645?!YbDqdrz zT08;1;1LprD?~v>4Gjk9oHvmiATfA~Nr4-|c!Q$yxxiR{-+=@A16fFf6Ne2!H$jD9 zw<`PkR(E`Y@x}=54i^RTw6N1xg-65hHK2B>;(~yuNP|Q{Q`a>p&=m-U_6guXM1;Un z5&wjauisAvt54GDE9s@%Bw^AJ4jVuxfmK*oS$k?%vFg?3?6%gf|2=|SLTi<$qm1t| zGkA(Jnz)w?516os_2=EOlQ>2Z3h=C4&_!exP|r`|pbGZUe~}*IC={#`0wE3lc;!N= ztZ@6S8CDhIGqCT7V~5Z_liH1i0lA0+d0^~?O|*#lpSu;)O8I zwh$UQ;x3}QE<=3Ac$)W?*dTDK49Z2&p6oP#4kD$4Km#Xb&KtU;)qw=S#D<2#)Bv;` zlak`#^194T@fAdG9AZM?j4$@RmYyChlrtPVfrc_g&lHqde>B;)h8bKa)ngW#Q6xMjBaQhtVi}7wp!5r``crS&?QY^=Ac5n zd2%LJy#Z=AaYN|ZL}-UdZV(pXw{Ksuf(b(!iU^Tk!ef|@)Zb$Ja{*pWs{db`@RNJs z8xtLw;OB6vh|wY}ZM0g8qZE}se}ssTAsqj;U+w2`V(u*(EFl-0H!>2M4ZynO^`H9? zdb@My0~JVp6Y1ntr^v5g zO_pNrv}d0SLw5uobejLFSiL-QN9T_PmLoEL@ADfwXbkFBotQ6>AZ8w(79L?# z6~JOBpSBVSG%W>F6O=G0l)nkr$u6^k-9g+Wh6)>q za6CL}D7MlEV(DS~gwpRaD>8Bgq%7YJe_}*VBikHsM4=acL$*u7-`Ce^q@^lC1`YhBN#sTMBjic#^!-CoZ z*?}2(R7A|0J+B}1ICIQ*a}Z4R0O5i}xP*Jsa;tr&OOmg0Yuux5$q0)D%+h8U38 z^=@TXvhF^X(p!FKxKzbQbXeHfLh;!RDigQuY;DzB79nK=Wh{Lii+K0$^wW#~S!C!I zaPDng^$t`Z zwBI>{(bayA&O4#5x54_!#OZ+ru9gie5SYg=e>O(fW^Yz@yb=B=Jp6IsHp90p86vl9 zn41#|a*{MwD|@E19ParQtzP|8W%ohukp9PO5u6%kERlt$1VrMV76ukReiZ(A_t}`k z!oUBhCak8UGv3w|ON;-6^v6uH&xE)9pJbm|*~9Am7w)WnG!Z^XMoEE-c%SnA1{ ze}cy~y4HQf2BLtm1lZ`H=zI`ETvUhRaSf|yqnjWb9fVs)_f_t$nW?EJ%yjxf9Fb^# zupT*6%ARj)#|s={F3g_zZ(P=AY2WeV@d%W{Uww_r(x+jC?Sdc;n6`!9s2gwHdT)&>)Vf)~olhsni zx2dTk`-k=KZW-aU{{A`rxnWft6cdYNNbwhJJ}v}zx4zEQ&bhDc?BL*#loHT7p@W7mq)js%c1D#%9mNpt6cyoJR@A{v|2tb+Uj+|`LzRbB_r z6DgV#Uoy0;{w}!56LK`!AaG^Z+@6t>Yj#j>FYRW*s zI|E7$``l8S0hcYTw4jVi0_7wj^IY2J3M$*V{-;NGJ-N*jyqBfO!JPFh0mRzSJ-^ zHHC&kguZ(08*EFp4Gj9n%})_J?$u*3d7BYkLHv2$o>5Q;ywG8J;qZgoSaDdwZOi+h z-p9TVR>^R-(MPoA4YbY1B8w)RGJ#+4yqw6{(dZ^|r z0OMF}4JN__?()XUxu%ExNSw}sAQcx8K@UKKo_@K5aug5=@};BK#=k$UQ@;@b3r6HZ zr`!fu1o~6tsXJ_@#XS(_ZHkxD(P%)aw-ooN<1AN^pLs*XFhuuyd`1LxlWct&!Axmb z9AF2*@2{G*JvoE3OrBo67~heR5t!Xi+iYLS!kVyvae)Jnz?n(n4R&@_i$8xZf6s^p zs^LF&>}RMf)c}W&lNdWa&{OI1pmpO;4})l{(6@QH#nIa@cV^pKbvq~bni{l6`@Q^E z<)_Lb}mvfIw~sFd0g~1w%s(hz_btL4A38rMJ7gyCvr2X%Szvq)3sw>|LM(z_&By<6_)T2{CoVKf&fm^RK#pCgC$oNxsMs2I>vl$Uyv@|;J$ zSa5Ji?d(~v>B2^KM1hg1g~N`|6j9RA>2z;ygxOFB;8|eDp%l(}Zu5fsQkeW&kn#G@ z_-h*S`}dz(feRH%P@(DRX~sM&B-1{oNSF6469SV%Uzz4d=SHG(gZi-jS%940U1Ag4 zG-d0+c|biu0V3RkIkh+etbt;j^dr(GITt~6+-)az3(j<*z~Yku25fAo`TV(_{K-rs zj!LY;2IYB-^4lz0e_A8}*ND0lBCB3=QTphOJ#3Z8aBG>k~eQ^l}gQTCl z=PVI=$9dtyqXga6JXfBB0(8vn`{$|DDC>d3J$t2HrcSuEynA?zb;srBx(+Exp?Z{? zwu;N%aNp2b4|jEoFHc92{ATGn@M6rY!nRaA5j3L*(-wHk@Q zE1aQSn2KV{<`JB6xEyB;5s*0kh-~rM_kRJSiQ_A9xfhU<#Z1*1dJbd?6hn`Mh9?IC z)^h*Q1+R$|PhpP855GY0<{?x6>^6@UL97`DTRkEpu+PpV|4dCwI|qRtx~IMSDhdts z$8Q6kLvL+M%cP8fS>c+CW~~1#(Wuyx0e|u; zx;qM9$E0WR+yrcd8%P?vuFjN;I`oQ3I1cvzkYf?-bAOiF7#H{R>j(?m+_P~7MT)V~ zlpVni^1k-+zRz_y$Hdtfw|^=2y1au)NNBh)Gjm$%($KD3w|MyuZL2yDN(`QD1*TuU z_OogG&Yg?d^8aXxdp=?;PlIGLFfiaCp(w10qM{<$O}j-!FI-Wzw6qL68w3=JGXg>2 zw7}$yk(sS%GP9KvJa8ROcucbsmKK(kDL{|NEZdfz?#_ul_~yw7p0=U7?d{@wR|o!5DOr>hc9!1lw@!Oas>Xlj;w@=fZTYAuy^IVypHboem-tgm_*IZM)DI%W0%sg+pQ(X_>QbB@V zR#7;Ua0UZuL6w|b)UI?%SZg%|zv9ci4yNq*V7RdL z$}F|bn}^b$&EU%0N=LMd>>ylBlLl|((~1SX^;eY^TQ_(Ag%Ay3YFdmX3|!yLB1sNv zV47eJ>hMZ<^&7JswCb!Thof3Y#R!!Twb*qe1^LDzWH8lGWmSYwy@aZ*7PB+)u@!O-W zMf)=s@L*k-4H#nV%C8t=`HtFfVlLl>+LbA>i_0P8{reDLmHm$5?gBaQU_Y)77&>Ig z(+749n_~A~-|(!k2GT-^%fQV%0kj5;7?J7M-e$-oOUs<5VPgPJ>=&u^Ot?ZDtjE?qdE5|Q$7k(@sGj7K`1!PxT6}p&Rx-1^e5KqKx z=PqA}; z7+L(JY11@=Qww$Wm}0b3H82?OHh8+ZTxewE##Irhu2ggA?H(hsA|0d`V2nNmUibdK zlpxEziw?C3mkttoGg_wbtVQAH(giXRhfEiWvrt-kdsWU1C7|BuwG%xTjN zKRh_|<@`L0?kGK>(C!h{Rmr0!Hbwog1qe(0>8rzQ`}G+z;~;AKq354H zfo#8a_h*x+5@_`G5!xZ578QN_tSe!YGpPf@Rq^7*3xg49Rj)2~%tbPgA8RpY`OUMr zAzJ&{3O-g>SF6V%@NTQWl(dt`BwFja-sXMQhPfwc%jp!(>n);HAhT`1gvJPf2q6#x znC9Rn8;93bS-(#=N^jEugZb&hP zf^XlxZA&>hh*>k;-^6$Y=+FeHMG@~{EJ6!_x`7DvhH9y+FTqL#@bJ?RH~(*dn>_g6n=gD7`QVp=;xOW z(xk;kc-dJWkcjBoYH3@S@8W37ALK%Y?v~S(x#ihKH|Ec7Pv!|H1N*hAA9D)o!&QuKq675T*pH7yyndcf{v88|85lD;8$b3wN5WjrX8^3nph(`t|6vmh@i+Ci%RMKhG&+qt}Pxr zcC1L*JMZI@!9*$4VJKPD8<(0EzFkj?a^w2-Lx8Nl>>n2N<%|@FVkca)aIVdd=o*oK zilXRa^KN}(0<&FIP*)k-gVfhMp$B;yzflv}L(cXpl9QQQi z%4}Dpwfndovk4N2-ktwAq3PY1NOwGZq9tjd;StN}o^`dhgxFcBQs>93K;cMBjkwYx zm>mQtcAu}i3O^|Ii!mwN|JPhP8Ne9VHObc8rg77zg>4=r+`6jp>7wzr{d9H(GgWzL z%scg9bDhFe_wL=geGu_V1`&1q%7zBN_N(ZqCYf~*SS#D!mH8HBcs83756DxF%ee>B36Tolk{CG6OHp&@*H4p;b@Xpek(CR%vSLM7y#}cf($dE> zOi~RZ_PyV|U`3Dc9LL=j$(Gi?JY~OZh?@O%zH0T1u*x*$;@`!}w~c4rHv5@pG)Ez? zV(vY^SQae}F2g0_zVr@%S-L~A2>EaX3OcacVjtw;sZXRpPVZBwi6Rv;$yI3v zy7s(OaQw@fj(3~0gjy4Cc2OwS(n?LplTro7|$GAhA+KgE2J_x<<5(2ek z$)};KEJ`(WE8EiIc5ixQFz$8CuN9uUgQ`MWu6G#nrgw#1)$1VOV0BH+RQ&isAt4(A za&ea-dxNYH&J(C6pNocB3Sxe=C~n(&A~q+lXw&E}I%ob0!h>1?dvgt@Qg# z_ecfKme0%>Rdq#?j$hx)S+mA1jbK-9`)Wj%+$^M+& zuzSXk%W(hdDrVvCs%mO!+h$m5>n&>)6YyU*|E}@LuMJNwm7hGQ&_gSF?ta(Z3-!94 z_Glj~SKeasF2G>=Q0(=>Ei|cH{E0t4dcR-+ZccJasQ*Q^dVs!57HIe5_6`L9KBGt$ zZi&8q`&3hjbBVDoOvBZ80a1t;G0i_k+U_1`Xz2Hs`6(DgJ*!J@3pHyB0xo86iQPMD z(4ct%E@FbEf45$m9VgR&^!FmkTsx1U9d502S>0=LulApD&0cv;;o)wJ{X2Mi9a^t9 z*7BqN`o{~#_AQZ+bVI?>60W&-@15*Xf1KV@)wzpat7(H%cZKZB%i6BpOqfHoU&;6B zJFd*TeO~Xub(7oE%%}7Vd9AHk8~@bMVcOOolNT25zmnTJ?S{JP`k>csnKQOlzAu#= z`Kw=vL`<>uFwhnnqo}vLwxc-3xo{&o`XaQ$EWCq&Et@g!GaLv_$U!m2!5o0JXHx4o zKd_xC>2{P&;|Mej_MTX3uxIZv{2L0p_jIGyt7{>dZg0AKc!iAJ9|y6~)3?O7*2H&c ze(%x;{`usrq=di;p_=K^HbvLJkJ&Bfoe%BGSb8Ki`xOpZPyqoV09~O*yN^MS)=nr= zd|uw)zKY>aNKJR#yHN9(`Gafux z==ESmT~c4p!8!Y!0VJ!^vZvIX;}~K!V}jVQ(O4eCjH0w)!BFL!7Q>(YrxxJAd{`dy zAF=XyI=J%yxJ(#Bp^N786&uWmXRsDP@Xy&5e*Vo=$%Qjk&L~7>(@VmxEIfGOT6_i03v|F8N@Y=SMz;A zH=IA^Ou+))ng_oc3jvx2!-O%Uu2ofa&*`S9telv?4|3}5ZaKC{Fk#_PB`G6i$Mvu< zL3W^-C8WqdE>6lV2=s|?dKF?a_Wluc)V!tr`u4qc^-hoO-Nm~K z{-&pz$ z2J^$D3w-&T?>~Gv#GM7lXBVAZ$xv|_?I&syYRCT7F+pq!WxwrUvH=Cx{rp-@GJ(|T z<(ua{1S{gbgR&{b`GO&0#*m&Ep>qgz-t~^`Dj~K|4J66+GPi!-m$ZE3t!o4@7~%J; zC&rSMEB~a*lrs&6mMg+{6aRrd7?25T@DlxbCsCsC-orYq;ybAe`|OgUWBQ<(*^4)l{O``k1pMs@yT;gMf3RhV;@(~mXzIed*L4? zd+wRq?n;qQP4aqH^=t6@N~LwC3x>Q+cFi-e!MCx}xLI=4xR1mB27>~^m5bNX-LSz0 zPON?l9^e^6E}Yj|fl@R3)vHC|mTXi*dLGlP&0{TzB;r%c$Dl<+D6(PGCOq?}bGl`u zr>9pgj3YS5XpTCm0MB;rv!C=J!(jj9VtF~49FwTaYo#4L!ee4=A}oy`Oi!d%!()Z4 z)e72pd2N7X(-r+SufQ?j#5}8}NYg9EVh82Ri2@7E9R9AR2S;rxTrZaVO-zW>c$hH}CS~J+vRzZ4!a}a(f z;=iN4Un0{G>WC3e&7)9N2tbuu9CLrIii%1^b##nOA3S9+YZ@9UU~R$&i~`l4T@4`* z(8*Qb(-$Ha{!w1(rSP8)hXP2 zvy0j==FQ-4Y?veE<%cHdg%<_N%r;mXZ)|68ew>o5gEuZ7-Zk5(XHv)zeu4P!zt~S8^NKXS?5gKjd^DhHXgvn zv`ZI9GAO{nL4&s6-Sn2M1z1wChRVv8IXXJJ+Ak7N5WXk0`W~d3L@I10Vwl$l5k`L* z8CCv(eu~YzucTzTy0(y77RPB!Qqk1ZWEcIkPp`UXmriI&r^T2E1%`M7@VHB@Il}Lp zHnos|a&o-zMKD>?gyEpHjL_*41`Vq(RL>a(h*RZ}-QLUeHfOO6u}|>jdF+t$h6DvS zkFhJUB>e00+VR{cdCSjz+5XsV1q~YemD-~lyLa*C0DnhgR%CWVZjB3}2#8VXyY{to zoXF@z_sVZx)|dPQ$?Ji0DFcIWeT^C=IK zWN&_S9QS9*jlcgo;L=N4;Q|31Yg=RhW$B$n+`gw~4vMiOsU|{T7=cxY*sSd5_op)H z*xK9o@7wqN#*{oxd*DUxcr)u($if#PVyA}mM6=_;eiZF}5p@o7pE4lnabw1G3e{YL zTsUXU_An`c3n7dqB2AgQ&+b8RMsAfH>1?MV)b7&c^5)`HFngmccx55>mh)bvs;U{y z;Tbaz5bDJ1BtF2vBigHNKz&7AJs=`&03AlnH)VP+6lFw~ulLVA;6TDhIztW5m%k=w zdMfXn5OcuJLoEbEdPUDu{(I&(b|V@=pTv?|hL;A6{yz3E%a?^QT!v=IAn%NT1Hm{pQj=|Q)q|<_=Q|JDA8(5fB=sH*BSd>b;)ag{o5miy`EAD8A zQYBv)%oeNL`KNaZ7$>`{S;Oy}eWhtMLGyMr|28Q&q@Np^Yr@-s5)-T07VQILE|RSK=1PVE zwc`j$N(w%zld8vPTF8DqJ%K_v{(MmK^gMpD->g=zvO2; zdberK&8%yAUw{=YtA-OhcqD>`aUHQ`df{3x{rcM$jz1K8;^J!BA1QDeyeeq*0Fm!2 zdXr&%bAyJ)GJY)pvr$xm#NZn;Wwf630ooGxkMII1-zizgrHq z5|}ov?%MGK>=X1VWg?CHUd-NG$S1hrzwK+Y@+QKI*woP!aOEjG*4uBmespkbk5NxD zUdpVju2|~u@JC~#X2(4_X`W;MjNx|<^Xj6XR`ZnGv9I>6%n^&vD*jP28n|i=a?}fl z4ws5lkW|->8!=^ZtXco#g<0x>ecVsSe)Zp#_Rw_tAbxIWfU$8*LYK|`j}%Tg^tN+j zry&1>MV1P$c1$P%n~5-;^j0DI`dNtsR%83x989oWd;a|w+mWmLN-imSu5G_Y)1hP; z7jLsJCp)~fgW>d<>5C`wNuw-%&+jkEJ-g_Dr&pJqpGFQ`()QQ0`?UotMJ*9HTPW+*V-7?d0p`I6tS%m(DE7#e>PjP zH{aRT0bqC>8Xys_mp85#!idc)M_OlrJ=x(nWCznq#TobVs(kXlQ?JJ1x1pcmf6BFz zezGZ79h)-YNZ*Bnd>pMU|9^_nQt9G56uOIyFOmoOLG`be_UYHZ{}QSNlBjW$C!eGM zONhZu7-gWesgt7WqAVi1F!=T!u%fHVj$VvIqASOUvs@lw-0D1F{91|k z&nEbNg4RC(hKzP@HilN21K$?!a-{l!IJIwwP-irtYCj}5#}@Z1nc^Ddg-Bz?*)*i# zrWwsayO;{4h<3IDz2TndV(uh|0-S`+bivX%v7{X+T+pHd3P4SJ`$fBVN!u~{%h_ms z-Z?fE8>Hi3^&mV$ZcPO~TmyI@+KO3Fg}#t+5>O5zo`_~c_!d*5g38pFB5n+FPfC)b-cmmYZrPb9ch-~2^+G^W>PiLod zim=-A?!gr?urhklFAtk%zVq3+aT(>Uc}c&QF&X`fK-Obryo(E2f{tF~ZVN9pmn(Fs zOmcvwEza$=?KD;wB85;N-94TC4VoYUeF_6vMa2rns0-iO&6s)iN>x17`UBt|vQZb@+x#0)v?=jyp2pru`}3L{dZUv0@FQ<)g~0XEovYxO7(Dn99EQsXb29nAZhFBsD{z^gS7PQ zmR)(n3oPUzH=6dXbs z7{w?89@81p5Ie{$h!X(2DQ+XLETC=mt{$bt+omIBIci^%7*?1E}w`VbyBu*vIpSLg1W1?_&} z+zq|(q^fK~9hh+m(oFT~-2@f&&p*GLOMAlpA`t|!x{ww^e-?NlV5+3sK99VdoDG`| z$svlbJa+8ZEEcu|TC5~OI8L~`8$3MN!EBnLTA=?N(7zRYbjsBO0t+NW{B@{i*wCYW zW5#!TGVNz^t|MbC#Huu`|MX1ol2qdk-{6)z>?J1#v;0d0Ar~AX1uWLZ z<$6wooKu@EB=xnrcQryA($>--et=l-m!@w$mU=NyLfk#DpSH~Qwmww9_k7#YRP~sI zeg!&v5>l4-S?~nDKF^?_F+1F`b<3n)g|$;jr8q&R;WxbJNH}h<^_y!dIsXrnpo?Oo z9NRa3;>3x^Ax9gY3{VpabJ`Cu8Kz&>+i?G#^VvNx>4>_+_z7M%fY}0V&u4Yd##~;N z_mFt{Xe%+qi0T2&&50DdfYwBG;=%ZuI5$*I-Z`yz50Y#Y7ckD7b*>7 zA`xF<8IfoJLX~9vHA7adSz|gc3FDE-9-tu=O*At)lFxMk9()OCOM)t#Ym#op#x>~a z{wE(-R0>@LY7OC76f}d4jWzndr)qWbJMPzwciQ+Hq;@~IT%-&GY~-w2M;D@rRIu%q z*fzKVcLZ_1j*XiG-+W{V%AN~0MohR+YGF#SvGHw^K>lAk!~cEP{#T;dHbzrj{V|f} zQuRwm7Fvs3cJOnv{l2Ky_rXPJCiO6sUZ8C5U%KkJ&WS&E3^t=y+q|<|QK|Db3;0%O z%@D>|1qQ&Ht>UfoOthW8CGLs%iLWol-9Ez-zqAoOj zxqr3qykXs*NR#c7j+AD`m9@|3hvYsN_+prZqGAH#I+A1*9EinGtynw*8mrE~xx|y%UxK7Sfn`^Rz0Hn}prNQUSFun5pI3tBH7AL?qPKW)fo}0zFGg{P;xjoiiX%a0Ulq z=;3=P*yk=>_!L8Ac|QMTAeu|Csv#)o{&&2325rouYQum|*;c`GJ`cKw}6{ zJ%C8)Zv*t)&u0Pq!oolh0{$Ie(_&sbZ=aQnR=pDrKme>Ylxr3a=b;I@in79*>nVXW z;|~EeGyaz~lPo4woJD+C_HNlPIFcq}F)AON)Z7_KMYW6?QX`@7M|?CS>Sudc&g@yU znC7ti2c`UK11Q-~*ny~#-@c6;J^C>C;XO{Ml5D6cEluV(PMR|1Z%lA38th)4jwJ>A z#79DUr9{jJ9 zMMa%%PgtK~uI6-NCbwe0$%GRGB?4WWw2+N9F>gV3oq z00#)Q4VF6S80hbP6ukj3FuKKsbQt|4CA%y-a6m~$Muv6zsI1L$Y$y#0%;fr@jb`t( zzUGCGfM6d77S6H}gE#;@=oIhpZ0G>6>)Th0AO!@{g+B@&;}v2MHedXpyQ6DS0J?$D z^LlYmiw_;?JO66&=7W%*8ZLhhvWMzIbgpoy!Smlu*(GA#m*3oucAiHAQ?y9*l@DwG z$73NM$q&`uSud~EoG(Z(jJ&LGf?jR*@4JEC-rgYx!h?dY-?{TD=*@M~F5G!RcnATf z5IjBNefj+Pv*e{9oB=sG=h^2(%M7&;QE(=JS73;e?TjsPmPCqrpz^_p^7%r02o-1< zzes$Yib7dd$W{HbPJhg}kG*l(!6Ld*a`?-~$@0*&550XGop;}U{XWb|1XIsg{Sr=9 zwS*WX9?Hq|mdcgd?iv@(ET&v9Xzc{{WhPfcd(Em8`nRt;M{t~ywRLn(EW4|Lof0_Z z8apuN{y;46k^30Sg`#QZ8svs;MSca1mt{0(YFJM0f%y7iQFA?H?WRwfWHI@f-f2E| z;;%*>h#;ZSL!2kjwAeib**qQL%n*eHw}GOfH{|3E^{AqBV;0u47cYc}4c7vKGL^M! z*T$cI%EKk{JOFYpBERP~-50uU0@-6>h|B;&?kW*oGYch^|LAU!z$D#WXb33+Y!l?1 zzNtD8>JwYwoo4XGcHX71zspR%6kH6p(~+_n1MWcWMRD`7ms+7`$*oX3-Dj=2ZRILM zdv+ntT9xTU;FfFz(vy1?T2*ErrP&h_#(yawv+`n|r%)*3m=rE4Zi`q}O-1|FLdN~% zp>XA5?qZx1cA4rz8x4<;xn{OQ5OH6+>^-_sW$RI13;Gr6 z^#qbO@-3a6oxzBZXseb^7k;WwulqG_`)r$?sAp{T7paXA-`!506dr3SEnVFMxpqB! z_40>>yP5TQUm~sPeYTm9rsORdO;P*C)$$gJ+`~{+L_gCye}OC`oa-5w95Eqd;8}C+ zbQFBQel;6Kd_^VRK{_V0fRHRBp=>95;UjaJKj(#_x{mQ`LY&i=$FyqMgs8*Gi-X6s zBx;6zT7Z1>!2>1Xx&rs2DhyY$UDr(pgCj7xK*MO!Ll)nspi8qx*FcX6VtbK5SKRK)AX?dl1sf zlgvcSn9s*7=e==uT&@UVTBc--6Q!S=DN{9|2I3YznZJVpE8@ z63(V2fY;ZWuEp;JE=e z>B31*rtT?w?#X@=GwjvT&ujl*!1Vs=UW!tyawGdbUPbl@g%2bK5%uSquYX#kpBJq? zN`jU@P|DI_C?tIF>U%>z$P15A-OW+|T8?6`|DWwd|F<^(UnkOo%^?GIUxj`J>Eq%%SGV@-jynw}<2we6$op%=|98QQD!WBK&H{ zj@&9u$NqYbgm;DkkSq_}JEQ!2za>lutNr)=L>W#c(hk+^SU>m7qM{CsE-z#bo?bo% z=om&1FvBEDyZ53|Po`!`et=SuZxGjR8^4##tyOufb~z((rLUs zR0G8cQ4#rHEo%mvonKVcC2jd8G!sB3^pp_lH7~vTE@}JxHq(PH3>neHUYo`ZiBSP{ zAMSD|*TkRrBBlabonoK4O#4~&-@iYhphN4FwVn8*RBqKs^F#W5qw{yeib)ViQhar` z00koaWL3tW&%V>6TWaXJMMb?GN~h5C+88e53_>X^enU<#pCaiNA5njE0>FBJ|8}>O z!z8&2E0ZbDCWj9~MrN6G5B16BK7V|a!-faSG3O-+e~7s7D{EEvNDs`wEcX6w(YxPw zH%(#lurVY$)Lg+nAu(U4>sfV++5L~}ytjSD-!1bA#%rbg|0aS(N62+*Jv`3#DQ^ZGRdO)^^8eOnsFJqfMRl)t2> z1{iJ;+BI{;?{8h5TGF>#YdeKqqIB1B7VAs^0){AomjQdt0_LlEsqH#-OWXw^*gf6Q z(4Y_0ARSk-5ScyB|KI~7aLN#M_~rG3?iL~EC5n{oHs2G818wE=lCEPKP-^`eA^I|c zenGub1&Xi`RhGbxkGi@x;7Gf^H2ncVa(Po1E{QDPboQ+D{U5^>3_q>Ca^fVX_4o`= ze?9rn8Mi9?-5wJZ@4Mc@ckEv)Z*H_XyXapZ7rI+a5(5M>YhE;8Acyox*Xm665!oYT zYhnYV!{dmEq@TIr62gHge^pSfhNwb}QA9(QKf$r)OqdC}J!e#`g@bvIz9dC58gaJbl6@PvZ5#UDeu*=-S+l_)TZTBuX&TFPdDV48iAE_ zqTO+Eo`v{q#6)elVn}YEIFGvsY3YIAEft`X2N_9sA;&1SNotiQ)T4sPv@&#t73?ck z@_le40FT#$4#m8kICaL1S7i@6-qyW;j=A}sMd@-5o_Y$l{F3ofaZV<4oC*Up%DeI6 zgl5r>2>6|hJqfU_I(~@$-A%X%e~XWcX=XpSRd}}oeeK0b15D+jy(Az}wUR?UIDJ8F z`SN2q&4}TEy~uY~i})o}gFJ6r4sjM+Bo7kt3AT1&WAQ29fEWbNoE(@=p0#JM^~!J6_I<`jC$PlAiqufF4#* z3nz)C!;6Xy9oeF|kJvHKRptcdUFUjTxikr=4Oj}nJNZBOnpZaPDW z$jJo#W-o_}y~&O_ZI2DBfF7lc?(lgm`1F~J7t8AvBzSukbDOePSfL(eAZPT8TKc8m zLY3Sfn)rvFKkpQkH{np~ieux)4c&A`<}og#uXZy}E||XjuC>!2J+hZ#L~8z^Y+jmB z|yL_rh0Sq3Vg1IJ>KkXY%Z7l|ri1?CZ4rSH$K zkP+4kpcdb51IAk#EufDS*e(g5K43U^QSI@_z07X*or)Q##cFcr_P$3Zj2kMfKOcU3 z8Jti4HTOuXgT;ymgFW2qD-xtV4_JNferx0KiAL}9%gPYq>~pLie|05hpxX%}?LcUR zxL>qHJaZA%CoHZKbU@SmX~%kwx)KW5zQc#VfK1TtxwkP@ySgkY0(=8L;SpNy!mAaa zDXXpaZXiD2UuG-vM=|3F-!7eZwdR^HmT}O?;>Z_Zt8@zJOsUgC;!_f<=5hJ%kfuspXqz3wl(De zOsjmR-Ano8mX{4zE0i)ddGF_ARuv_YwJA{q7dU6`+ubyoDBvWTaxbq2X z>9uRG&Oa;4jrd0d5(jE=t$PHZjGM6P)`( zKc`ced`enC*E4pvqy~19uaJ_rzJ8*gOOgG!m>UW2YW}*fSUG9S+QQ77{0!69dyeJ~ zd%WMoT#<|XRajJX;K}CHuW6&BH%$S;rAvGR_UkU%3Gq%sKL#g7j7}_lSEQNT8t-uT zg7M%ZgU35GeDxWXaPDhu(!?xU8V?H$w4=OJYZ89-h|j$19jI_6&pK{Q!kdhf8&!H(^g>mPFtkiy zsfn#MUuwS|ANKI<=!%%tVeY{iYxJXLjJsaZbX0NHxJSdZLjpYp&RwPD>9~?Oh1f3B zAAIWwwh9rp)K^-vSbbAgw!?`aqfCjAV9zIq60{tz&VSWQBkIPj$wx0aG^Dv0Vbbk2P);TJYSqbjU}@=w`b5AQUt@=Zxv$+Wek=+$qH z(KSCVXqcLM=mc+6X&Uv9i$=P|p|N~d-n99_lgk2XtUl#PmyM5jQ|+JR8fG=1|Ebo) zBEccn{f3L~&neZV;}V)SU2xQ1?|9j8l(5i*g?xJYZg^8(O}~-Lwzr=g6ThwXW=*vxEC(>}}6s?!Y)$gzl;C^5B* z%U^rCwz|$~(7J&Gm!%baRbL$<>?)B3FZlO?%etO?{My#0+hfO-9W6%0@BPrR9WJTG zuf1i2u;$POscPhAl$`xZk&W8k!yyOMF8pWn4-Ma+IW`u46r;ar8J!JF6=jXD$?A7) zGM}!|U16Q&wa<19U$RYAYcs;vEY5Pdq5ooApL6zgcPD1~DkZ*l_3{=w$Vl)RPWRH* z)*hakG-%!g4UIjO*-N4F!47}3{de>@#N_Pdr(yH$^2O zE^L}sb;#H;t^E~T6i?nL?K;5Gyt208$H+smf;)k-#|?VyO_l?Y?C^^%oHi|Q`)%au z)2C^yW+9g-Dk_?f-Vl6o(fWaKa!BJ~75eqvTegr~)S&_#17jx4NIIQ@BeAXjp0*`ih^&t{fX5kHQ16)6%2fE@G9NRYllcy@VMZ zH<%vWXn8H?=I0+1gAWbX^y~7`e)uWgflo(s1J~;ot^00YGyKaM?b}^X-dH)KW@-Q9 zt?SU+nwy*NhFzrT}qh05k+T+alukUTLo;M0g}hPC-3#`$dSXIARM0C*?{EF~Y3JIm?zxWq8xcMuH44 z66erG_U>%QA#b?c*v znni@76c_vOvQaXGmlWhzxKz!H6>5;ngoYObtw!L-V=4G?o&mBB5mrF{+&7M$pH0pq zQjNF&!yO`c#c(|pZm>(&J~deu(bBWM!(P_%Lqpg{1RAz>?M~ibk@9rz zTt`kB_RSe-GV2Onu5H}+o@i+qP`$jo>@Q?`=jJrDO?t39vGJURY0wZKnT>-j?FWSf z*FUbx89u#tMP2@fBP~`=LDNI!8p_Mvc79DdzGLsQK$~4_FAPrd9r4++ZEsfmr$3uU z4IVsL+@u>5#j}rjXYYpE)i}Anth{^{U;-aS^s+Pv1pb=+q6;-0_a5{RWUs@-sR{e~ z7;%`v#FLNdL&A(FJ|?Xpbg~8V49*H8TBx|p8uTB<#)|a=3BOwcM*@$j8iW3D`O>AG zg!PSL0%s3KY?#U%iryM=l5On$`yWsf z5gQ?759U|>q8SGE+9YN7t-zxAFEera#zfrHs4Al(JMdC^goMZnwRdy#8Pdc911EqM zgGrjEmvgT<-i&vILMlRQk{!QR%`f~?)mF|OAYz@eve(AO5LtY|?+Iha5{Df))q!^2 zI%+|5Df-}Lv?eESa4^uaZQHi73}-u3wjN5@o7BAZbksnf4$Ep!zI=b|-O=fX{M7x<@E0!PO%@?Y%Z^t9^p4=X4CynI}hydmXgxT=h5kzS??aij{PG+ zZ@T}7FN;<`aeR@PsWz-48f;m}nNTdv<^V^On0OVoqY5vmKY8O-_CEjV+J(!cMeESO z7#2Bsv3GQ>!{eNsoDT^|e^6^}F%P7}6hP}1$Fj30AmpWn`SclWKI;nliT9M+-15y+ z1cgcT3TRQ=rstdNMl}~YFBl`iZsoPJ(<7f zd#xQ0us^&p51?@C)>_N>E-sI@J3>URS<{0e3n1_6`2EL^>Tg}u4Abt1zI?eyUmxmW zD*i6**0mZMp^;L92Blz!B2w@M*dfjVBcoe6ZSxg97CfuSc#*ax?fIZbZQGaT&ehxy z(?#DWTS3O>uxi%zs-CyvBxfZ~8Z#z-N`h!;i#6k4H2ql#Yx~yqkT!ZVHyQh8T z^KM0Ax%2@jC~XoV+{a`=ZRD>$Ur9x0^CAG@TF!yx%a>z%LZ{M$lV7$$z!fwnH(vEO zo%PFfr95e6F))Z&|F(PcF??i_WobC&VqSNvZ^U|?Fl zo?*!tUjNYLY58@p2_K^hz%O7e=3G6SxL)A>feWSV&t>X7q9R=BU-6O=AUrf!d;PkB zohB*_T;^($yA>ex=0vN3#|QcN&Rp+%`|_u>3xDhha!-8u$*Ac%b(O7A$RUUXY^mQR z%yYE#5~K`oic%E}68aM*XXu&T-df!Gt^s;Kw6TegJ$Iv!bF3fZ7= z`(pG|Y!^=%rT7F)t*4gjvz$X#x>*^Po!s`$d9OsDfR-87cZMC(Q?S%pKhf%TK%%-v z=Ro}I_K6%ok2d%G0YAW}A`Fgu@|0Au3E*x*=DDYtjs4+vF zqKJcF2|Ao&CPCwr{r2rsaeC*ooh;T3rhn!PB{-27A8~ec7ncsuiy$S6x=xgxe@5L; zpZXHJAWjui_Hc76WwiPaRRk$!Lxct5&*zIRQtBDLH zP8@#$plgdXXT63eC7Ah%e*xPR$#gi|#*Y0v`J50lBLu z-D!cgIC}gi3q>ZDk%lX(EAskABqh;f&Sii@L0?0o5-41g$X$pmsED-sG|M4|CM znK~-ji?q&lX;iJ%2@c*7rOn*zkRMUpt}(E)kLm=CtY3e}c-Y%yZ-~1b?H3r~o!7Xl zwW#r(T3bPu@7{iOqRO z32VvYcY8c_ydE1ngcXO;2MxTeg-zrFEv>wr4|{I9+NROL)Y~}MTq?e)ar#%~G;`mo zoqC0p?%xak9HKs25_7<1$A@1gHm_P0>nv!ZQD5#a|_9P}2b;)-dNhD_%$7htH zB|Gl)Z%WK#@{rWdI@4x=XtWG1G+h)=(RW{b!+1Y_ztOK_QZ0WzGD0Xb$rn@D-YHawTh)FYx zDNf~mw&lDNG8Mkm-tO>Cw?VIbuvCNpPEkVN284C?H7OS?_q;^HbISf%< z3pT3wp@oE?0>6{a7ID&7n1&1@@~@l3(O7_Ck2pvUmU!fQoEnCq$xlat3(MHMQmNs^ z>^8sl24@AOa_kbPvQJ-nS>qq$FjRZ%H0$XxZ!Rgm?_k?e@1V_>^ugacwH;bC^3Ojz zJU+O0WXI!Oj&9+D*Bgdq^6k!&sRx4~03U85xp)(p}3g>pC-96gwqsj6{SalR|_ zbCCF^tq#?5fAFMC7#)6sq%I95!Gswf>B4P}4$mFcF0SwAuUhA=4oQqKK!;ncHkAXn zuW#oCpy>)0R_e6V!vb+N@+a>3{VLRKubE=ZIO^Bl3Q?-Kd2->T_4>@WxDm(8uIdrk zx5Nrg&O}4QQ(H$TL~hO;qr80gu;hog-k4e~`4XiV_d{FeoxNEf8W`ta z)f~0{JKj#4Q~k(fV+cZzjbN%=97U-YpxFA2Id>NCnA6W3KNzE>^qk_rshpgM9LGC0 zP?r%TS!~qk{2uovT9V^{DprcUFtu}8U)J@w2NT3hi1=woOisTgMVAF)dxoScPL)|h zlf-@ZM`446x`%d%+Av00f~pG46F@p#o6w5n1h}}kbU?XgG%pi)6=w~DIAZJgrBZ;Q z;{ixDG}aHSSXiZcb^ap^5k>6V5g zXbw|QN92bdu=xa1R3V}hk+$q0;E{uO&MtQ8BEMj{Ps_We#55tG`j5OC#GWvX5r_^m!ub9@{>*Lb+T1Q3`7xh-d2^pw6R z|IYTM9;=h(kbX`e8Umq_usfmDvA1kH+IQZxmixthoW9>2QHN>@0h34p5im$eVnSZb zYz~~|9D|QDYI&kem8OdeQ&Kv+rF^{ef`I|vsxoVgCO1@(DtQ1}LUm#I?b~0ieeIW0 zQaSR5;mM}?zMI>c7^l}S{1*C!C;j#U0XgI6S7JQU+QQ;cZ>K56fGZ+jMPzSMR>25g zmql}7%9Hvvxv<3X9ltF3-8fGW{q+w!_4&qiekdzTfigGVz55d!8L+eKo74qAl1KbL zvlY9AFnA%s={0I7lKgY~I44HFEQI0Hlp?HyS+Gi|@U@7*v+O6nwoCdC!->_d5ZK=FBB z0GIFw_1#V1+`eBaV>Y1pl1}yu_Xo?}2hQEFDQk&F!k{lvTJPq+n)JRlXpF+sqn}o4 z1*FEGpYyH2^xhL}dqryGg1;Qm-n>F6#BX{iuLgJ#FpV>JkZAtV%F2Ra*Uga|uj2J& zk8`We@5Y#cnJVn3@dWU9WyCu2-dbL8ae^9}ukBukJVrr`;xyzpy)U~n-I zYdOfqrm1&K6PAs$XU>R&`I;d9c2?eL8qx&EWu^m7~^L30Co>X~DPS6}SXBGN4!R#~;742^!KQ{!w74E^mY_BBr6 z^agU4k>HR^aS8*7AmLNBxuv5LTdgbR)qi-Wz3=6`AB(GklShPfPu1>`s?bBeVwjzC z%!#`$#hYekc}Ko=Z})IZ%nDJt6Mw}wJ0Q|X9!D;aBfwNcGC@@J=g*oKLPAVu5hJboJNRH!Mx@ES z)5Q+0gRT7vNBoid>_K#nbY+x%_euSF)Jd<~ut8+uGX#F%WTZ+6jxSGM8mnI7j7E=yHB`nFfAOY`Rr6X$K7Z*ljEbl|W}Hh+iBm6Sc;yJ5wLU9+bp5_HgU?J&zATR3vs1R6@z-zIpj0?-E_Z_=aJv z<-T`7kweM;W8whZho+V>|`jUV0>=&7#n zoO{wF>dv+cgV&_C>RPSl|HU7Ib2|om_Gx;4#>Y`bq+{!@xIZo;XHk^bdJWlsxi60z{T^pTdUjr(`vbkODvfX@`ylP9Q-)WUMsC+sJK9pY zd456HT$9Bbx$iO~_KrN%++{x;itDijC_(=r?(j0rk+W`Jm@cBg$TV+sqQ!jh_z`yhK)~J1VAG0hY;j-8NnYsG0y5#F) zdE>doY411>7gEHQ+`q^UQm7D@fx9qCe6}p6)1uKz_Hg<>#_S!#GC{UE?`r9&K`dw+ z9?F!-ax~+fTG@7EQ&Uqeb7G$b-_PW97zQ}N5h-)PKR##4C8j63weECQeUcG!=Z1e% zf77YG3WEa%bfuxmKGCUoordhmV0GL3^PH8AN0WFUy=lrt>rT?Tq0sWK6>C+-59rWg zLDB>=Cpg^X%tcNb)Cxc4WjQs>>h-N*KELGq%?l6y`L5kJWYgj(6CbPZ$Nm@A>_oGI zIDZr|?O1vF{Oxa-c;mXdLm~?B&!2tz2&)&6rpTb;3u2bofK^-#A7w0_0h%#!!%+gu%ge{c#m$1yB|}O$dnClSj33|SU_iil z5%PtIZLfvJcCc938pYy3v?1$sbdc2Qh_hP&?b-N%lCS!TfCx#_uB+PJ&bb=S zzrJj3dDO@0TCb5709CBgOhR36`wS@Dlqy6uXd)0XgDa;of|37Kxn8*%J0;RDER-Te z3hj^S7$qN4jlfS|y?uKeKu2tgLudV+vwt&)wx*^etv0|RabowYqYL9+xPCTkpWLs> z{(0!Q9qSaOlXZ2mTjedbwVltC5P*#EBOTBrH3q~}oQ8=GT^wu(86w=O`0B(SezlAG zL9x%`6g?_V^!@PR5tAF~Wfvreh<1!8sgR*VItg>}NLktR%8>);<;WVHzp)hIg#N56 zsH~LgpNx$H{V^_iM7vraG$&{k#NXEWuvKXc-iRu|7Aq%$?Z*S zDIX>bvq0nQt|J0d|%Bq#oxrnNL)nu9D-kX@|cpb1dig5Q?W(-m!M zb`tO=3?>&ZN;2mt{0ciE+qS@J$QOHAqk`fX4UOk229Mk9EAHu;$JI}ndGNop(dhpt zAR|X~{_4YFl`oxbxIVI~pc<}_`vY@zdF=vc>pe7pFq_@A+mkV=$E7bi5Cv$2eGPP; zWH7f}lUylTL9+ZW6ay+Mo6B$LTcg^G7{o>^C}^M%);0Fo^h15OE=ypug&`-wczRHeX99eB$$myoMtVcU^>LP)t=u~{XgGaq_Eh7t$ zC)Hir4XBXD8UPXK_gYk^-x$%U$8=iRCK?Kbg8}e)(A@Ue*jOXGK|XH1_f5nk_AjUGqJgeK3Ap+BHmt^W9iINg45sGQoU3K>gio1=AR zR&sLkhf89mijxV8&cZs;ipep zniU_pa105=$1fAXrC?aWb)xLvy?du^>>;-}(BI!MRCds^tko%8Sc0Zh%`<0Z$N~<8 z-4thO9HS#q7+8yciH8p5X&$2sPUlh28D=xDtkr&hXYOj#c$GqHa!c)y@Wrn!WMjUb zdLt-km8sF2+}~e**o&M!SU7%o?~=|Am>pTqk=`Ze4@7SXkA8D^9tO6*=eD_>I)%PM ztR(BNZyy1L#Fn}%DijY!fkUNo4Gsq8x{98)fkyeq#H}$mg6e7>B*o8j2vJ`IO(AU> zvBvIz!PB`~YL_&!qh?U+G2t$HAAONk(H*vh|(AmdO z`EJx;;U484MTcb9y5qUQ%;*9ljHZ|ag-z1_u2w$E@2aYL&MpX^g{+%%fPLOIojQHG z48TQOqYc%EL!?+gEc@VO6XSyvQ>L(MzgC7I*y74pv_u+)EMEw+3|9`F3WqA@P1Y_K z(S^KbtT`DODzYDJqNnqmc(HFx?9Llspm1aVs!m&mD#kX+%y`N3}=*hRcCu?MVtrTt40D~afs zKu3YfR$i*?+PU)wI4408M174KGIPg~H~E}>xbM{FtA z0x=Bf*@cXOFcYJPY>p9_FW=c!NW-dJ0k?tdwvJOHp?L=rq0k>wk_T&OP}^~(By5Sp zBFfNLN1R3}+$jd7WV0h-jSK%f@ZYVswekyH%t_)v0Rsb);?(|IZ*KyXW840X-b6yB z3=PsCbCg0wMN~3Wl(~@xG^bHTr16eIk4I=ArAV5)8xc_~)D)16I;MfrA?ToWpCcUKiE;7X0Cy=)h2PbHulQrDBKrJ`MJ=JQ{ao z=4EOPG;0bq{iY7-r*=}ps~|)XnWRASiPsB9!nbaLZ@JXj!=5>EmePS6WY2@TWM4|VMw&Jvl^b#zL?&3N2mF~7VMyL`U9l;`6S4i!|#&eAyCN^HZ* zj+n9Ic*r{Wd)qEO3?3?7|HGtx_Ts#b{rgUgyuE8~XJoK2>b6geWsV(~iHNWmOFa&I z(@(9ImSwkfZf%fEsI8T3YAARzAt@<+W842zIhM)F&2h zsrdHr9y1@&<%z9eLVt{Xh_p(2dTjAu65gxgT+fcAisESfq!iVQKSrhsev}u?!1`S` z`{W*s_+d~UI&ku&iFY>5I`idc7x4 zGfjq!8#Q#CBGYcWNIt1s@2%o__3iB&)7zcYW@m4b_z)2{_kJMr+z9JXa=+l*qJlUO zsJ7#8apbEXI`qN$%`Hs0d~_voCD&ktoXG!#z1o%a03k!B$Q(sn2y|m!QEO>D2uj|_ zrxG|{D3}1d(EpG#k-Un=)-T=-=MEIw_vG#F%e8a>zj+1rCD!=~gbyzfL>4KuLUfx@ z)mbpRq(cR|@o?=t$6gH3PCX>lV*%KjQ*?)cP&({5U+VPjQXrGTZt=ilLJ%VOwd8S7 zRX|y81`B7a2=9K5s$A#^;3Ees0U~cFQiNKfVj5N&$u$r z`brkulwe5#mqHcQe6c*AoB~m+0)<(D?U*RNsaJ z4$2~ca5Z1sT8B3$_2H*+^bN*GM&zme`DdZM=%#y`kWDH4imI=xQ*hd4A@rrSWXI0W z<3C;4b~aqLl@`d6{i?HP#ZRYVG%f&bab1FP)&iKTsCi#0TYtc)lJ_AvLG_i8=^--p z)TVpk+_9J?F(mDUWS!3w=DUSIS$03TuKw+z(9y%AqoW91T_`Uv4~d$>U}=txf`_d5 zzu^2f;Qd%Yhu83M1q^>UydYINhtYrLT-NBgV4VV-MRM|_z>u2%T%D@C`iZMJ*dWhB zm-49kqJqZbjp{y>aE5Aa>Som14MxxJVqJa(1RPyI0Lq6GVYX=1Og7y+!LqzvXW3L2 z`AN@7PVWG&kRnj-Q;G`;gkh8hE}t-Mn(|X9y92RG3N4qKonUnMX{NUJZ`c(79hY!t zdtJ14=rdz>70UjDTah&m9Wb%>(8|#TIXNZ$%YRJwq;a~Qs&p)p&X0cjT>S*uY+Cn^w`s% z2&szUHu|IRD)XY++N1Le7BUrAUuihd%>CYGBew2ZOXq%1RRnoCuD&%lzV>O5RZE7V z*4($(5kXc^ccRSYMl=YOfwlN6Y8Pfz-n>8(dJG%T`AziJ-fw_fm|8NO2V#Tux5A!X)N5DWpJlRU@$M>iOYNhqR{niDi?Qh;ItS>%Y#gZxOVuw8&0TKmlCeh# zzIk*#524Khk59xrWAGWjWcCgPc<9(FyiyWEnI8-JaeTM&VJF?&kPTDfwfIPG@G5L;5h5r9aMv; zPHhZNDB5sRg%ax;oev~>9N#l@^r)rK&ESm>c{=%4)#sBnb16%bm%`_EdfAQOTVCtF zw$6tq>hYry86?6)iT=j{`tv_i=l*~Fzxmf`G8A#hNC9YE^T`gf3&b=)Hiw`HlLywc zvPL$2LonPdnjMmnkx_m6zH8@PAOODyLe}8Z%g+JKivRxFyT7QF@F60ng5=vi0vTPy zIC*h&Hi|X|Vd7w@+rjvFgU9~_HOu4I#6vOj)-bbgs{CK-URtQO_G03{uw_BTk`)AYE45?-jtPD zWwt=0UrwP#wzj=E1i{!(&w(V05x)IG2vTndBdbPF3(OL@RtL=BQZF6^WvSUC28L#&Ts~TA08{Fch0F^S?fwSYv!|rL z(BLIz zO*aImvIj%(JTu;*YZFAi3j;!32G}=Y%%_Bi7x5?c=gctfu@{>Rf5Xi1Mr#VrdlVa+ zipYcnGmG`>6!a@I-u?OY;?Etdbx=BLQ1E(I|1<0}cM*erKITa>&;`Y|IzXth>v47P z-Mdf9H!lt1{vixcCdK5D5M6&50LakeXV3q;7J%C#2w74nDHxan-G7tMC8iU)*eW~} zfQ<~wP-gdT`30#?#p|P~{0&}l{{H@a{|*Mh)>b{vfVd(sDJiM258#%0=JiJFx>$WZ zJ%x9N(ZP7CidpOTJX^cpf1nvNJwL>byL;rOL;qI}+Fu3Qc-#VDOFW*?EjX?Bpq(E3 z(`>Y_z|N5Vz0=)2=h#uq^=d>OHM+_J^=TUu)OYWuLT%_5x?~H;4l*l{s{wuBV@&YM zU7(0Tiy}SpGBUvkPNG)`s(oBJGH~`ywS@c`c5rq+4a)o?Ug75xO;!MQsO?9B!Ho}O zEDxU5X(WAq*x)xrISx?QiCh?z!D{kvwC;tt1M{exLp3hh!cVr?8e4!?Quv5~+Z3t3GfTLc~ZT9dOTSHWfxeJSlX3 z;MOZhdKQYu#JvG^1ndXEA?8w8=Jo)8bc5C%M-RHSFHmuV#d{w;T>`ovh0SI_bHMB% zYk*Ri1m8xNe)QNL*KHO;x?adh? ze{jZ1ujILA6%rO!2JZwK?Ow#5nZZH!D`FLvk?~&-4s#?>KgCjSsny)S8~xvrssG#3 zul6Ef7j6)buy}(Rm>~U?lz@OyKL4vPN!8DhABxhF#z-Io8tBzG z*Ke`;4oIv(g|a~D3xnwCJ8(~;cckzjdXK+TK_F_Pt`7J^)H5n@$J2kYP3I=E3mZhm~ zIlTjxi1&zok#^h%W~chX632 zx~KY{Aix1q&>&J8e}&7cf9kY(^XBHBzauK;452ea z4m{WqWR!Fk;CZXUC8VR0MFh9?Bm99#ErFAW{bSPQU+aO#fi`l$K?H3+EHh_vw@|D* zl3`FY_}3XP_xAFFHkXjE-8wJ`nc?Ge4+ujBLwT@JN$2J&0%4-@-FopwnJ}J!wSzzv zjS{$$*xQN30045v6cuqi6Ko_Tcth?1{K#GSNa%4WS|wKVUQ|%ua|EDZ^b(}{)|r)K zV38UiCPn@$j%Jd7Lx%VU(TFu2=lcQW(dHXn#RRUcq|~zf55RBA!6p9@5^zAKU`XjH z@QMgDwD<&CF9i$C-{yQwZmATc1!%&nT3R&C%vPdDE&`gTv1ZL0f2e9vk{~5=^@a_B zG_C`?9YgPhBhpcO5JrYRoELgt{3-ydq7TW+ZLO_+@!Q(a0aJb@z7x?+&<21$fM@jz z+9+bfP+|bue~I;nkTHw)v0-v)!N!Yp0dDkxIJjP;F3HWy&l*MM(tdn5A|xOez|J1Y z`gaJ3;2r_r z!kdi%5l9ZsViN*#o*o}6wQ*y8ES~FRW96k1i0LZu;|bwRH@aB=OgCEcIA+b@T*B0$ zc?bXmTAqUSgofiTbczfF-H|j4PZdX!4F z3g(j(t>#-&@sXu6TO&-5gY5vHN2vsO>2PXbKQB$UsAeE2j;6xXNHZL@SpMWyhZ(NP zh5iQgLUbb#oVIMc`@aZHfCQ$>!rAHU)J0b51zaZ{lQa+%z$E`s`?DdtbS{=N&Imvs zj=%(PtBJbFzY&26M<&RVB=Qg351q?cZ#f1BTN)mv99w`OxGP}pBj|rnm0R+k(cd=; z-U#085H9+AmE>;s{46zX-OkBS#j) z`b+^RB_$~%Wc^TxN(r*L=7=r<9a#8%y=(Yn+ zZ{SFXw3vKB4@lPtjYzVJE(Ntw|{>Dcr4s4 z|Kw7kt3I}Gz?1(XBY=J_ppwIUd!D_YAtLN-P7IQ9bT;Q*T% z$UP7tC_VjcK99RgW;qp^Z^^J)EC(GKIL}MvZW*mo$vEaB6B7?KCqiMhX;W(9MaZNq zGx-?!bP#t$M@6Yv3G|MPjJ)@JhnOHZQ2a&3!2JPBIUib|SmD^*)lh3c8_tAN;ErH7 zQAocje@~OUHhH4-O`Uoq;)Xyv!q$iPoO@M2GCEvxT8BjxfrR*vB>vh_?XI{+Mkb~8 zQnRHbI3#GHhQ4AnN!xI#y1wC%gH#|{lwxXlv4J_!H* zN0{Q*Ale+u5Km{>QiH2uH^N&*l3(o69JrhaF<}@&0Vqo3$kA1DauZL7`x;I%Y>u$% z{c;E8jvhr~v!4Hp0^IsY*~zAXXH9uYh65>%8JC)WR7_MhK2OYO=I?XEn~qZBE+XSF zdlp8x=f8gr04nzH$$4wnT$$^5AZenZ(JnK0s=X>h!BMvF$!5cZ3;3|)<^;Zf0OlV& zL6R>{rAR=J3Ps%kRCSasj7cRlPzn#6AI69Hip)vdTTee3otmnpyf&1AI~^SzlVU~j zK3iDC74D9N>TtJCx+ptxk&e$i511`iLiYj|9>6&SLk>#6Kyg;)fi~CvE~dqPNZiug zjLie3n(#5fIsfr?YX8H^v(tAUvI6=rWNYl?tP!1&ffAtzy5#hK&Z0ig6>EvG$=vR5 zQ<;+H?B3PTnBP7z_`P`|!fNUlz>iMZh-e(AXn7EJb$-(01vVd;I&qIq%nzTikVI_qAO1ri2**&jQd4MG8iTlc^P2l!T6IWW{SQ_NCxD*o4uw;Zwjs zsk?rkQ4prxk)a2TBHnSz4n|)CTf!q*b0o{hq^JK2*#-VdR9JiPuJjdjM-;3Cb{~7P zxU%v|t1K9wXn;A?l=V+{A(tCI(N9}iNp=7A>(+~t(omVu_J@^1k^M)13`(KAL-9pn zsF3SmxzkpDU1a;bopA19F;m(pb}W>HCHM-I$@LWjz!RVb4-eD> zFrm7|O12%>fRFBO;0_FUC5C0>9wo62_E|;4$C=k#0nu!;@0^7a@G*w%K~n61$POFP zZ|;A?TJVAqQ;WC{oJ_c~&tG@AoK5U?g=-VT+$(arJ-=iaC$+(7JDek&GI@*>T=lPg0`3i3gWE{f3y>A;_)2e1cse1!jC~iii_FAYz zz2MW~C{2WdmNdiwAv&Q!_c|8ui+vhL)8QmjC5QlAp#+9|*9&mLz3_aq_lRqOs$&H- z90)%@sQk+*qOLZ_*@{xZK`azQ^0NH)eqJama7=QHQBW!5)CJfH=EocgfY~H$yGnF) zvKzgwPdu1k-cRuC{dg( z=Orw_c@!wD$cJMXx`Ul~#Uah}$DoJe&b~bow@q+vqLeN`2@!cjf>%`3F73?Oipt6b zq|Sz(39#ZkBx}=7FP9Wj$1|0PN*6#eNV3p#KR+Pk`x@%{`D5Qk+C|}vnjCF@rn^}Q zhKcbU&pn0{@{Eqlqo@^p5wivr4u15U8mE%=5)wFZW}0mh1dDtQ;V(_XCG&h|LinNr z4>-c=@TZi2#%{l&{(bwFiRbr=N|Hyn##L<{^Eb}v$TmK4Ms9=rpZH_(2kRXb1HwB| zZ=wMy0YugPIcjSydYH&#@iLgA`8Y8%ZrJX8l=j+AhB?E0_wUa$`rrADs~1YU+fI8{ zISB++UkltUn(^qB!f3KZ=<6ULaeVT2ZED!i0V@RGzkliYjm{Ev#M(j7u~te-9S0Ze z;pdVX*-%d$CnQHtvPO0TE@9Ksv~%>725RQe5F1@;~rc6-H?F zprt+kT3wZ|{iQYRt5vP0)-BhtMGH8@fnu@M;^Gd=*=2ZngXhaI(GwUjcY#mtR^c?k zjp8@qS;Whm&EtKS$$ahWdOCr<`|8x3MZDQwX?9mX+?8PtyivL+SfWY)~ zSyzpv?BaR8`^3g_-(TW1Q52}RW$8)cHyL7LVho3E=a=)!N|vyUV-C&5$Qa1~5L&o) z@x0e&o9eDxU3t8*@s!d0V{u1NhpIp&sCt*l;b|bX2fxHIA9*Mavj8>o72hbZrz|On zNX9BbF-2hsIHiyC2Qgm{3FM1nWkuFn`f@+xG#wBq;uG*s#!bg3L+67=b?9>xZlEMO zA&4gtM|x=T_pHJO3HB6@E}pu9ag4=cXCMF~JIhQ>ZMgD_p{}8!q|@Nc!Ul2n6fVCC zT@=`fQuBC&OHo~U>LvIci+6U`X%X>m2z0YK5nrn!ak~IQn%dnf#J>ul{J4o*Ez5Ue zeMaCeYm|Db$YfSL%gb9!YHySgT8RpK&ztfH$qd`txk6%%Tk-cgy4EhfnwzM=QFnEu zK#b3L`XOA&1+qs2n6ED#iaWCPU8%+&y%L|4f-f^VZyPh2mX+tSHRQDPOT{uG*U3G6 zK3XC~qm>N}Idg4VvUt(VWlV-M4U*Pfx>LuORAsK}q5L<2ouW=5n`K{rEBf0|Ge6GQ z1G>kd_^19FDoc#Oqc|S(_WbP#@McmjdJLypw=3tVW`UxWz$2a>t~;!)?FmMfoACvP zuxKQLfj}b-D&-2`xKLevYg^0)HMPVNF_%=BAeI9CDZ%g!CLq>M$kzKYb&bINhjLHr z2WYx00l@OMEj#HgxgipSpmYWU(!vzvTjMC2r4Yf5MyVJtJFlRiMe23zegyBUAz&RZ zl`k?3=HpN+!X~4GI8kic6tJ#xHXZO2o1|X)OBfLu3~&`B)B+mngGLEuISnbmsrx8- zdwtT$(tlQI+=LzS<)d+#d4De!=Gu zlb7em9TNbTOOP0rSOY8R&(DFsu}Y9rA`KNe&_(3xAdK?*hzPGvp(#%;g?;cs8Hh<^ zyAqDkk0nDBk0+cEr1z9T|M6|ORR~Z>2|6*)(3_XgVM5B4g0VBNdmLy!EpDy?X0mSZ zIf4F}QnGQrb>W0LfjPmrfe^R)1Ny;uy9EFt}X^H-N6r0&G+aig>g_ zaYRf?iW^E(JjuJtmv>+zCO!x+Dq3Z7&hwp20S>MKkQL$% ztJzcLr(4#(?KUbw;ki~qVkW~N*M*A|!p)gU{i%qf+>K}h9x2BA=WdSZ!#ePTRd_H~ zpsD-nDHLty%^3-AiuVDZhIQPE^$hDm)=gyDGV4QiSPt`-b288z9<#fy6Lwt)4`Q-6 z%aQM&%{PZk7YUgo~9qB!034dDgT*XL?{Kws6b4?oB^1v z5V+Y~2A1=&JF>1A3`LU~O@Rx7`h)XM=?e4#fL3^e)1;ZL$O-5CcmJwOe}0{>`h@REEqy_aC@=ElF%ukOkl|pUl3ZI@W@einJ>&KdN0^{gICBfTLXb&-M{#C zANZ(wFzjVr`lW!~#~=4~1_P;|K~Qv%KZnBb(8ze=b&N(4hsKS0xU4DD?qs@EJvT5M zZeS#I?r$*6S-d~y!{^%9Z5PM1@CH6C3B`v3T6YTC7@7eJfT=0N<{Bz|8VkUd8e?k6BLqkxY-0wY%e5QJS&Qu8DX%jhZm zaMuOh^F%y;etQL0WZ;{XiN?x>v?oz;4IXz8w6rh>3DNW_Oi?WE(Mva{IZDs;Gr19U z%`eqomF;-;;$(;a%{ONKNPeeT!9Ww(7$`2J9eXuFrxXo;MI12&g=V>pttMFw`fxx& zNxL#4m`@&V`L_GtA-C-TLB?J7hobF!7Zf@bIu<6svp!+_`*^~!2Yl=Aj^;6O=p&1m z^c3KOn+CmC58*8lfYJuuJSK$e**RO)x=pb6>;drI?Xb;k(>-nDy`Y89p1_SwTp|pbZe&>Bbz3vg2qEjjs9#kdWn?G!D(fG-7^GP{7f!DBP$d)^C^Q zxI%<+Pehj8N2RF)>f(oZd$a{{l?Ojgi0p zKGKc;RPSj80@ea!>4Wz0Bi`r+q^dJM;yanwJrfkUJZ|tee7Bv57TSZ@ zaqL>Ys3=Lc1R5m0A>i6FZ`6i0YJ!#}INNr@T3}TmRUqcF;_~$99DK9B&n6A0LBg(< zH!rs#e@Ms#;uo|h2>sUZ0(JAYPV~l|mD&`EM0dwoDgPIuOB`zWHwzgQz(m|kz zdodUaJHexG0!i@jM)K*2Tqb4$t7nBLqNCD?*F=f|jB-T=sNn)$ir$K zSKVX%K){y69{3D3fDYL$-6AC@*6}#V`JjE+8?(hc`+wZTKCKRHI2bvZ81;p2^6sF# zRrA>)58XU>S!(vM)j;I85P|R|AV{<(MzIA^;5r?xa8~o=4Sz>}y7J;`6tBcB0q9wf zpvNjeqL!(n@|iPdI+5&E(1%gpODdJdIFash4thh}82YaJV;0hQm2x@evr{~ZH}R0L z6tS`UY|KMNu|io{6y7lA)vK5dkobn*0$v$9v;i|N#|SnEi(IiE&0yd)p&@bTx6i>) zHvMxTi5M>t*N-!ZZUDOm5Hdf08E9|Jn@|V8T!l2=$lj<`%D*R9P^^jOUFjLf65j<( zof2Kqq=aoadE|%>;5ZY!{PdCn*3%rGdlAeOifyu^lHLigI(7IE`QLqh0MO`>0L@kZ zT?;@!3IkKHJa62%@m}HPty|szM8l>qp=|~7P(WF|L@{DNHDNQ@lD!C5z@PC8g;)V; zEw$Ieu+4-b1w+xQdv}0;BkmoAgpq5@ZeRWnSE3*{(*=?c!DeK6P&_o@TI zEdt7yl<>YGuR0J}{7Bs0pMDW(M1?qRM%-U;Z5S%WLWdWZ?knv%01bR9X@n<9++jWi zTpxwWro&Tv7Res94s}V!W#d(xDXUeDt%j%M=&@r_PoBJ9>8Y1#OR*Se3egKM!46Z9 zjx|p8+@ZL|D75L`9g9ymoDGTN!z%Ol@y9pP-yLk=MVW&KnQzsGfe`6-?IQTTo|>x* z;p*|})nsI0stFv?vjB&0v8v+){l=en{v6Ij+(5*t(vzS;9Do@05+)KuW@t=3M7M$& zuQ-3vwyFZ;P;eP!;>DO(22Mfcp*BOdJfURjJzur~Y5dV~LK!gw6Jq=S4Z+cka#1Dj zNC7@K#?8Ub6;fQkDSe)+o7+PWb@(v9 z+ZwB$Ye7LQfr7dTQ!H=#$vBDeGk}S-caPx_Lu~E|X&hQhFcGhNFRihBdt!x4GO%F8 zq(nY>vN!9UJ~lpk49uYGMP0Lc`;s7k)-;>#-S7%YNAxaX4bPQrhf)Kw>5qwek+J|- z5&lYx7hoAD1|DMHpC`+!QEwwF{Q#GH13ll}!1dT^ot(ZImi_$k<01GySEHjxXGaVx z-?72)SwE}^UEO;;L_UBoSR}azZ+ha%7uTUK1MngyAu*5k4glAN{CB^9|LzZ9kA}X5 zjWwBAJrEqjcerzhAB3XAac#XrdU_JGwD;``DE2UUCO2}eAr%$bF6fH~B~IF8wBNg(xsweJ+-R2d(i_yItF%jKZhYIZkVZ% zeBCxIhPi7vBo|u7qHSDVeg){_>XX-d-#r!zz4vFbYXQdR;5K29k#_oFEue-avE;YO<#tRnobR9gvD;XL3*7p&MYy^+1_;TUGF9H zswm%cfds8D7zu$-d&mwt{1NJu{p1X^VECz|TKye9tX)4!i{a}+iQ%QCf<*JVxC z;9w|#h@uM3lX3XNfI4_uW#OJe3nU3Lmq$Q=Njvivd2EFIFMj`AkDU;(UPG>>Hf;)0 z4Ltn(G{~(JK_;)TdjYSz4nYuk9-~S*RaI4GFcg4xXAln{@Z@yA<6!p(rT8&EDc?)w zA*NeR8w#^HIax-93vS}A1v`;@`6duBf-s3zr!g}4O=uF0k#6WBX=n35z}-lnM9iQs zX_gVPQwXlYL3`HzH~f$^^bU1oe`DHXLt}~C`-d)_eCLea1_QPm-~&ThOw%=Rw`5&! z^q`ZWL8^3$p=p4U0hsXeJ7wtZ?V+1TaKJ`%IMhMo1Qv4or540x=WXtjx$BW%Dx%PF zX0#5Uu|9YV)hHMVV?YPMr?Qu~u~*4u2=eMAVBY6^W z1P#sS&*D71ZYv9a<-Xa3>iPe~F#lhC|IqGLQseI1zq#l2yD~7ZlT)QWDl3JG*-&0;A{@rYn`!tV!-AeDQM~{ju9n(7I z8)5wS^XJR(dOI5(M@S20n4?krh+u3LC`oKvvab9=%rJQg$u9+6%JYh(ll=6G1GqSc z-O@kF3PG8ZkQzu^)~rRNwt!C7va&)z-~`+N-7ie6#~`pQ$G+>@XU6)}y6?lk_OR9x zt8DqLH)6N-hC|J4^i1pCD=QEFKXi79eJ%@mgV_L0Ze=WG=mo!UXDFl@=T%7u-WO6n zwMAIH>zjDjJAcWPvm&`$${&bg;n;fp2fWt$Dqyb)yJAV;>NK_>zVPHV{!joZbBhGVzAeM5O}bd&bRhp4fwEXikn&R3f`)H5gj3i8eNbcP=G+yb8Ckei5oZtARM87s z7qWnU8BgMDB+y8stSf+UO{{GQUa9{e#SNyt%nMMX*60+zn2u5;hWUct;lbgOD3z+O z0p^5+y*O2<#oL0R1|fb34p{aiJG=vGT`zcgvYtG;Plp%-)qtVlVh09$%AD$faU5v8 z_y3?pEx5C+5ecKS&}snbE<{+oCvHWXnLB)Z*ws=H{tF=>JCF){UES@-L%VL6$zA)& z38jer{(DO0xE1E3b56pWw*fzkvDln&4|gaNrv41W3?NNfR@}JCW`v)6~hJ)XVDt4mkF>^?q1i?BIdKSVE6&~DE`ogWQUm_2e z?dv{(<@S230J_fifO0S!%>=Cw%@Dw6wpduuTlOAFN={v!ois?M*)05rW9ozLk84KL z+%l2t5Qzr}0aCi#+e5g~q(516-*qNnr>oU(_j38;a~D}=wB|T_gIPpkT#DP+naJKO z(v}-)t5k~BwY<}Q@&INq4s_G}3cM)6`H^b*?2Qtk1%9|xFD&}4dExh8;>N=OnmW+Z zfwGZ2pt}YiE(O&6=cweeod9Lga}!U1Y-2W*J>boAa!!auU;guZ5=4UJf%<`Qn)hRm zv6)b1V({hrxSp}a$P3+rE!kHLs)nTH!F#38yc0k>@z(`<=|_z8ALw^L416kBn43gD z7O`iEZYW?W6wm+88?7xlBaV zpf5s?O1wH-19wSZhSip(w0;4}r)=G*Z!>%>titNK-o3uDZ`F5}wr-66*yFaQipw4DHHq9jk8>U4#IC2|0OcS*2*)rx}*Ub3X; z-%V~gND^N{E`{o}(;^YGpYh6zBgQieL<=KLdo^^O_9#$j$J+6udl5l(;1>6|yZ6ht_L>!alZIJe&DXxRa*{3Qxzqwdu~ z2UWjoru2=kl=BNJ-4|4HPnokTM*Q+=*}~LNQK8kBYc0n={j}~zqdSo1dJDOPy`ROI z63E|xjNv86umYTLP#Klwfqu(t!_>>oghOEMUzM^NJaDqsR z++H&5^z)y#84;yQ>bMmYSc;Bl?d|;l>*vut9zeY}@X``0+u!~|S;49Q)EJ9!H#CLf z2qW=k=W^Kpqty@tJIP@Eb9W02S3`4`tT7l9UOCJ{F%O0|)Agr*$*_dFW2 z01}hI01k_juZSdl3@}|UO>b;JGxqj$P_SNtTy}XhfNIE@{V|V&3(s{U<^u*HT9|=N zY*V)CQA5%WpdDJxe|ULV%j##_6V$C2j76-kQ>>s2-A)3H!G)nu@dDs!mTmTHcyv&juI;MO6W4KFtX`P-rB=<6WVC3gTFXC(ttF z*UZ8uN5iWENem3Y6nX>F0uY{qi9d6nY=wG=&EF7X^X;Fbe?YW^KpOTj)$_E+u&H5?HC|=7Tng1ouIW3JxP5n#4^-2$T(o8e5mHLc`n9 zpKW#M=D_Q+ac~Uhgekr^wS>TD@T3EAm2W>y74K5o^r$sY-Jm|=vyPoQUJ{TDM6*#k zD$VeMhfA3XJ#>#0UBqC}S&mAoD&OM*fUafePm5p(8O8Nua)KZ%Pby#wXy6NDC&Xwe zV13B1eBw?+%p6G12p>cAV<)JnQsP3O0bDaYqtvoKQ5e7iCB5T$ex#{1pi-bD;6WA+ zkRT$uA+qP+XjFul3Ibm5&2oW@1(@_~6it8{q5!3UvMUa=%MZZeNeXb%+Ct}`ky)z) zv~?DPfZ*=0f2J>eA06EVD4D^)$c&eusUJc+6oACvC zuoM&S3YmEdd`-xUS&E#4O}gI^DM1#v(2Li%2cVn+U;YJ4k1%Fz{pM}Yv-_WiNO9$W zSRj6*zaeD>5#Xp1n+-<5=wLpEKMvJ-Q`7hg-zrF~B%4`M@JDseR&<7RcQao`Npq;?d z8vlG0+b6sSGZ-LEeSZ|&{y2;4m{6yv}W9)eePg_S!Zxu@dc5eb^4FpcLwfEV=&t^w@W)gX!sk z`~s|HR0Skf!AqwyhTUjq`PuVe{pl*umVrQ>pJ#LfUytIJc%mnB6Ho|~Al!8bb0dtw zT5`AU*z@$s6WWT|Yo^;VX<`fwcT%ktwA70kUr=jA<5U1Gv`0n7tM)X?>8tAw$9^Qq zk*1~^%5ywX>gXY~P{Ac*8Q*X6I^2BCE{j#dQ^YPJSinF$@@$B@@MV;9OqN9mac_WQ zo{5xwd+HGf=75FmaKoxx>S`5U280x9 zEfK`y@Ge?pD&rG#C@%RVEJ0d3Oxao4Co_JW1#%@0u@538Ut;?u4!M)g32H|XVWnUj zp&=W3S?M5WXVa|2=JPcwS_vKCJJqlORz>Ze5A;iffmf5QX4WdkG~8v#>4aJ?@Hx}XFnFb(5FX$fu@b)o!Q#gj-!n2&F{ z_)-yi@j0L^D0d9AFEC@7tLEYlaEL-c^Ho50gTIl?kHt5IR4>J@eaAGkI3#pQG|2YC z+MrGRK#M}@KV>}-irg*#0U0bM*Q3*z_dv%RY&{~}h0!k*A(t!#SDW|fSlB$;YZuvO*d7T)308#_D^{=(aSl8hhA63T zUf_xt7#8k@Hh?29{v-$~0Mx{Kpa11x3rJi2`mz9^p%=ftS+mu#m(zXxGhwp}0BaUt z1^M<`)l8f0xcpm*=7UqssV#Bab%<3To-ewLlB7@@6~Jak_st;3X)cNuF{6v4yN&OY zUkdmJfO8l5GDJq6!gx;t{m8Wij|sZ{t>-ih_J{|Qb&t+*2uQwQ9tAL5PPAF_pLWWc zmT=N4M=B@WJCDoj4KZ{^#N(R|(NvTl3uh-2&D0#bpbPG(9dJBdfm3T{d8q8>ZAMCn zge5p|D?U4>+Fje>@slB&FqZ|K%^qzSarxK~Fq%Og{>6rm%^w)w`0@*jd&gX_o4-vc z4-$RXCo8(q<<=a5){n2Ivupa7%j8sfk7|i72A+3$?@+e!)7j5Iss74p))Ix%hD41!5ooHC#oXcA^$=XTRIe{ADplP;IcTWN zo4Hh7N2e+nwLU-N$h8)BowH8s)$()`8n*70Y+cBErt6d(H;bc_oy+>*4t48K$Ae>f z=XBiv7jLQ1=QI=5%7ah04=akNKI+ZYeP+=(Z5ORzG#DpqqOl;ww0KjnUdr=FkGju_ ziavOqV;#9a#`23sjqDO&xY!Qton@G>%by&1+5&>W|DENllFP-{xdsxHUM@{B4H#0> z01#ytj`P(+<8zJ!j-tB3&)DNO`vmMgQhxrcVS6oK!D6|Ywb5CoK>~c1FMA73N&`-x zsWv-iS)7XZ%>%6UwhSquxW9l@o%zAz7UmAw%K%0d6whWdIf2le&$MZtkW3T#(91GT z(Aioz=qj_}TV#fu^}85ZlRbt3Z*_$;-aWo2e^4Xvz{!6C!r!h0u{w3$L%|l>3P3wD zHzjYD_23P9Hg{3*lTdEGjR8K%KMM7|b>3!$NYPCkpp`O*NSLa*u6_~VF_Rg?gmX*ADQOo_@I;Qd2gof!Exba2L zj%|>Q7YwTj&4i506~)6rCS@hjGCicQZm*7IddEL-DZwzWP?aaKy(Ge4`!X=#1+vqzd)i{G*P zxv|v8ge;5Q)4s@Z+r{br7>wiH92oE0SLr;gHZrLY5c8 z3xapG@RV0i)LkvFw;1C8r{>u`Jtv^t19p`wvA?`p) zVaNgBh5C=TH|vC1Ks;O2X8I~5_L}SheaokECrhR$Q-7S)C~ptB#BoC6g3XOJiav_7 zWj4%89Nm)QnW!OfZM*!*x{DqmQiD}IQ#WU5sU>#4?t0vN{MEwv9+j0&140EMB>{P{ z+e6KGu1TI<_o&=^F^j|0s%wMu+tkdyExbC1P2yrLh6EDbK3)wBHEgi$vf*$J_j9I+<)OH=Yu<}~1ZP4RJh5Ui1Jc(t~tloFYPpt6LWV3Ga z%{Oh(iDspTpSUMkZWZ@jO)V&ZCGwWNcZS7|)(_7!ENk!(S;i@Sbz5UfS-I>fKc*+x zH(UEWO)$;x6;6GYaGZ0b2D%{M6Aeq#mUw2&Y&ayTYu!4*p443H*Wnc!mR8Vk$Z@lE zjd^isx@1C{T=n3+18Uv2gWI&?+w4E{4n87I|Yo?!M6(4RA&R4WavDd=9g45J$tUp0>^O>RW&Fs>=RhLi9 zQ@@~6bwAW0n$tK-dhasf5|iqLa?^x5s{~a(XwUnVi$a5f9_ubWyFS@!QK|@k!Iwy} zjEum%jKUZk4u> zLl~18UaWKFXjreMM)km<`5BoPxl%OqvK3~93zpR3uh}#=xr#@{#>#bAT4Xn|KP&Z@ zZdti^X%3%mvr)ywEC(B-W~1TckpO0(teQaMJfjrn#tWgr+mnWLmUGI_W834K!unw? zyS+YElS}Zun%e!BZ7-MTm$dbnbO{~hC=Bw7PV9M7o}I_CFiIRMRvPS)nhImS4)J>? zTz@*eVbYJgt7;hg;qZhIw3f9os>clbQvCJ(rIj{lFHL>soPA=CYNdu+ z_nXg-%WwFF*56C&k-jgmEODOMdEF4^>tKUgq3k!aldn8x_ge9GC~nG&`TFoSap~<6 zK2;nAr8+&|zx@I^lelcjzasoE*@Kp!3s2z+GFAqC=e2p}2UAsnpbe+O^CW{T+5xo9 zIy)z7&z$64rksn8+ue$WedgFa|>sP*Jh(@AF6rRCxdoPJ4y?AJZA9x$1o{a#tIvBeJmhx>6F@HFleXh~A5 mIU!>WJH`JO|12B$!|?b%_27;Ehx-itvv2nSwM3OuUjGg74`)yS literal 0 HcmV?d00001 diff --git a/help/C/figures/screenshots/image-missing.png b/help/C/figures/screenshots/image-missing.png new file mode 100644 index 0000000000000000000000000000000000000000..7a51bc969d110fdd98220c778325f69a62a46042 GIT binary patch literal 10456 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 XI=sy!AZhwL=a#C9S_);i?>+h-{PP_% literal 0 HcmV?d00001 diff --git a/help/C/figures/screenshots/main-preferences.png b/help/C/figures/screenshots/main-preferences.png new file mode 100644 index 0000000000000000000000000000000000000000..956ebd59d5d123018d52cebbd124460c6c27a636 GIT binary patch literal 54885 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 QqAz`P|A|zdgwE^#0v7oY;Q#;t literal 0 HcmV?d00001 diff --git a/help/C/figures/screenshots/plugin-presenter-remote.png b/help/C/figures/screenshots/plugin-presenter-remote.png new file mode 100644 index 0000000000000000000000000000000000000000..cfa6034af8289507e2f9496b23e02d00d477f608 GIT binary patch literal 14279 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 + + + diff --git a/help/C/figures/view-refresh-symbolic.svg b/help/C/figures/view-refresh-symbolic.svg new file mode 100644 index 00000000000..d26c20d0eb3 --- /dev/null +++ b/help/C/figures/view-refresh-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/help/C/index.page b/help/C/index.page new file mode 100644 index 00000000000..88aca79e44b --- /dev/null +++ b/help/C/index.page @@ -0,0 +1,46 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + Valent + Valent + + Valent + Connect, control and sync devices. + + + + <media type="image" width="48px" height="48px" its:translate="no" + src="figures/ca.andyholmes.Valent.svg" /> Valent Help + + +
+ Getting Started +
+ +
+ Troubleshooting +
+ +
+ Tools +
+ +
+ Common Tasks +
+ +
+ Status Updates +
+
+ diff --git a/help/C/introduction.page b/help/C/introduction.page new file mode 100644 index 00000000000..ec0f9ca8eac --- /dev/null +++ b/help/C/introduction.page @@ -0,0 +1,174 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + + KDE Connect Homepage + + + Introduction + Learn about Valent. + + + Introduction + +

+ Valent is an application for securely connecting devices, like + smartphones and laptops, allowing them to sync data and be controlled + remotely. +

+ + + + Common use cases… + +

+

+

+ Use a smartphone to control the + mouse and keyboard + on your desktop, or + music and video + on your media center. +

+
+ +

+ Configure select notifications to be forwarded from your phone when it's + locked or silent, and receive them on your active workstation. +

+
+ +

+ Sync the clipboard between your devices to easily copy and paste + one-time passwords (OTP) from SMS notifications. +

+
+ +

+ Send, receive and search SMS messages from your desktop, via a + smartphone running Valent or the KDE Connect app. +

+
+ +

+ Select Valent in Open With… dialogs to easily + send files and links to other devices. +

+
+
+ +

+ Valent is an implementation of the KDE Connect + protocol and can connect to any other conforming implementation. The KDE + Connect project has clients for Linux, Android, SailfishOS, iOS, macOS, + Windows and more. +

+ +
+ Visual Tour +

+ Valent has a limited user interface, usually preferring to + integrate with the desktop environment when possible. +

+ + + +
+ Main Window + +

+ Open the Main Window by + activating the launcher or menu item for Valent. +

+
+

+ The Main Window is where other devices are listed, including + trusted devices and new devices. +

+ +

Main Window

+
+
+ +
+ Main Preferences + +

+ Open the + Main Preferences + by selecting + + + Main Menu + + Preferences + + in the Main Window. +

+
+

+ The Main Preferences is where the + device name can be changed, and + plugins that integrate with the desktop are configured. +

+ +

Main Preferences

+
+
+ +
+ Device Page + +

+ Open the Device Page by + activating the device row in the + Main Window. +

+
+

+ When paired, the device page has the status widgets like the battery + level and the plugin actions like Send Files. New devices + will display controls for pairing. +

+ +

Device Page

+
+
+ +
+ Device Preferences + +

+ Open the + Device Preferences + by selecting + + + Device Menu + + Preferences + + in the Device Page. +

+
+

+ The devices preferences is where can be + enabled, disabled and configured. +

+ +

Device Preferences

+
+
+
+
diff --git a/help/C/legal.xml b/help/C/legal.xml new file mode 100644 index 00000000000..b2ab4a5acef --- /dev/null +++ b/help/C/legal.xml @@ -0,0 +1,6 @@ + +

This work is licensed under a + Creative Commons + Attribution-ShareAlike 4.0 International license.

+
diff --git a/help/C/plugins.page b/help/C/plugins.page new file mode 100644 index 00000000000..caf6af834ed --- /dev/null +++ b/help/C/plugins.page @@ -0,0 +1,37 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + + KDE Connect — Available Plugins + + + Plugins + Extended Functionality. + + + Plugins +

+ Valent supports several types of plugins, with default plugins + for features in KDE Connect and + freedesktop.org interfaces. +

+ +
+ Device Plugins + Remote control and syncing capabilities +
+ +
+ Device Plugins + Remote control and syncing capabilities +
+
diff --git a/help/C/tools-input-remote.page b/help/C/tools-input-remote.page new file mode 100644 index 00000000000..3f5ef22dc96 --- /dev/null +++ b/help/C/tools-input-remote.page @@ -0,0 +1,52 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + input, remote + + Input Remote + Control the mouse and keyboard. + + + Input Remote +

+ To control the mouse and keyboard, start by opening the main window. +

+ + + +

+ Open the main window and select a device. +

+
+ +

+ Open the + + Device Menu + + menu and select Input Remote. +

+
+ +

+ Open the dropdown menu and + select a device. +

+
+ +

+ Use the remote to control the mouse and keyboard. +

+
+
+
diff --git a/help/C/tools-media-remote.page b/help/C/tools-media-remote.page new file mode 100644 index 00000000000..bbb1e35719d --- /dev/null +++ b/help/C/tools-media-remote.page @@ -0,0 +1,53 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + media, remote + + Media Remote + Control media players and volume. + + + Media Remote +

+ To control a media player, start by opening the + Main Window. +

+ + + +

+ Open the main window. +

+
+ +

+ Open the + + Main Menu + + menu and select Media Remote. +

+
+ +

+ Open the dropdown menu and + select a media player. +

+
+ +

+ Use the remote to control the media player and volume. +

+
+
+
diff --git a/help/C/tools-messages-window.page b/help/C/tools-messages-window.page new file mode 100644 index 00000000000..5bed0c9b2e1 --- /dev/null +++ b/help/C/tools-messages-window.page @@ -0,0 +1,54 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + messages, messaging, sms, mms, text + + Messages + Send and receive messages. + + + Messages +

+ To send and receive messages, start by opening the + Main Window. +

+ + + +

+ Open the main window. +

+
+ +

+ Open the + + Main Menu + + menu and select Messages. +

+
+ +

+ Open the dropdown menu and + select a device. +

+
+ +

+ Select or start a new conversation and use the controls to send + messages and attachments to contacts in your addressbook. +

+
+
+
diff --git a/help/C/tools-share-dialog.page b/help/C/tools-share-dialog.page new file mode 100644 index 00000000000..c11b272c812 --- /dev/null +++ b/help/C/tools-share-dialog.page @@ -0,0 +1,111 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + share, send, file, link, text, url, open + + Sharing + Directly share files, links and text. + + + Sharing +

+ A dialog is available for sharing files, links and text with other devices. + + To share files, links and text, start by opening the + Main Window. +

+ +
+ + + share, files, file, browser, nautilus + + Send files from the file browser + How to send files to a device from the file browser. + + + Send files from the file browser +

+ The can be used to send files to a remote + device from the file browser. +

+ + + +

+ Select one or more files in the file browser. +

+
+ +

+ Open the context menu and select Open with…. +

+
+ +

+ Select Valent from the list of applications. +

+
+ +

+ Select one or more devices from the list to send the files to. +

+
+
+
+ +
+ + + share, file, link, text + + Share files, links or text + How to directly share files, links and text with other devices. + + + Share files, links or text +

+ This guide will teach you how to send files, links and text to another + device. +

+ + + +

+ Open the main window. +

+
+ +

+ Open the + + Main Menu + + menu and select Share…. +

+
+ +

+ Select Pick Files or + use the Enter URL entry to share a link. +

+
+ +

+ Select one or more devices from the list to send the selected files + and links. +

+
+
+
+
diff --git a/help/C/troubleshooting-firewall.page b/help/C/troubleshooting-firewall.page new file mode 100644 index 00000000000..97057a2efd0 --- /dev/null +++ b/help/C/troubleshooting-firewall.page @@ -0,0 +1,114 @@ + + + + + + Andy Holmes + andrew.g.r.holmes@gmail.com + + + + + KDE Connect — Troubleshooting + + + Firewall + How to configure a firewall. + + + Firewall + +

+ Valent implements the KDE Connect protocol, which usually connects devices + on a local network (LAN). If you are having trouble connecting to a device, + you may need to configure your firewall. +

+ +
+ General Information +

+ Devices are discovered using mDNS or, for older clients, UDP broadcasts + on port 1716. TCP connections use ports 1716–1764. +

+

+ If you are unsure which firewall you have, you can use this information to + get help for your distribution. +

+
+ +
+ Configuring <sys>firewalld</sys> + +

+ firewalld is a network firewall commonly used in Fedora. It + ships with a configuration for KDE Connect that can be easily enabled. +

+ + +$ firewall-cmd --permanent --add-service=kdeconnect +success +$ firewall-cmd --reload +success + + +

+ You may use firewall-config to configure firewalld + with a graphical interface. +

+
+
+ +
+ Configuring <sys>ufw</sys> + +

+ ufw is a network firewall commonly used in Ubuntu and + related distributions. +

+ + +# ufw allow 1716/udp +# ufw allow 1716:1764/tcp +# ufw reload +
+ +
+ Configuring <sys>nftables</sys> +

+ nftables is a newer firewall subsystem for Linux, replacing + iptables. The configuration below may be saved as + /etc/nftables.d/50_kdeconnect.nft if the directory exists, + otherwise the rules can be added to /etc/nftables.nft +

+ + +#!/usr/sbin/nft -f + +table inet filter { + chain input { + udp dport 1716 accept comment "KDE Connect" + tcp dport 1716-1764 accept comment "KDE Connect" + } +} +
+ +
+ Configuring <sys>iptables</sys> +

+ iptables is a subsystem of the Linux kernel. +

+ + +# iptables -I INPUT -i <iface> \ + -p udp --dport 1716 \ + -m state --state NEW,ESTABLISHED \ + -j ACCEPT +# iptables -I INPUT -i <iface> \ + -p tcp --dport 1716:1764 \ + -m state --state NEW,ESTABLISHED \ + -j ACCEPT +
+
diff --git a/help/C/valent.pot b/help/C/valent.pot new file mode 100644 index 00000000000..bbdd1363d1f --- /dev/null +++ b/help/C/valent.pot @@ -0,0 +1,1959 @@ +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2024-04-09 22:40-0700\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Put one translator per line, in the form NAME , YEAR1, YEAR2 +msgctxt "_" +msgid "translator-credits" +msgstr "" + +#. (itstool) path: credit/name +#: ../help/C/device-name.page:9 +#: ../help/C/device-setup.page:9 +#: ../help/C/device-unpair.page:9 +#: ../help/C/index.page:9 +#: ../help/C/introduction.page:10 +#: ../help/C/plugins.page:8 +#: ../help/C/plugins-battery.page:9 +#: ../help/C/plugins-clipboard.page:9 +#: ../help/C/plugins-connectivity_report.page:9 +#: ../help/C/plugins-contacts.page:9 +#: ../help/C/plugins-findmyphone.page:9 +#: ../help/C/plugins-lock.page:9 +#: ../help/C/plugins-mousepad.page:9 +#: ../help/C/plugins-mpris.page:9 +#: ../help/C/plugins-notification.page:9 +#: ../help/C/plugins-presenter.page:9 +#: ../help/C/plugins-runcommand.page:9 +#: ../help/C/plugins-sftp.page:9 +#: ../help/C/plugins-share.page:9 +#: ../help/C/plugins-sms.page:9 +#: ../help/C/plugins-systemvolume.page:9 +#: ../help/C/plugins-telephony.page:9 +#: ../help/C/tools-input-remote.page:9 +#: ../help/C/tools-media-remote.page:9 +#: ../help/C/troubleshooting-firewall.page:9 +msgid "Andy Holmes" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/device-name.page:15 +msgctxt "text" +msgid "Change the device name" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/device-name.page:16 +msgid "How to set the device name." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/device-name.page:19 +msgid "Change the device name" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/device-name.page:20 +msgid "The device name is what other devices will see when connecting or pairing with your device. This name will be appear in the device list in the Android app an other KDE Connect clients." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-name.page:28 +msgid "Open the main window." +msgstr "" + +#. (itstool) path: media/gui +#. (itstool) path: gui/media +#: ../help/C/device-name.page:36 +#: ../help/C/introduction.page:113 +msgid "Main Menu" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-name.page:33 +#: ../help/C/plugins-battery.page:78 +#: ../help/C/plugins-battery.page:115 +#: ../help/C/plugins-clipboard.page:84 +#: ../help/C/plugins-connectivity_report.page:75 +#: ../help/C/plugins-notification.page:81 +#: ../help/C/plugins-notification.page:130 +#: ../help/C/plugins-runcommand.page:69 +#: ../help/C/plugins-runcommand.page:109 +#: ../help/C/plugins-runcommand.page:151 +#: ../help/C/plugins-sftp.page:75 +#: ../help/C/plugins-share.page:79 +#: ../help/C/plugins-telephony.page:75 +#: ../help/C/plugins-telephony.page:122 +msgid "Open the <_:media-1/> menu and select Preferences." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-name.page:42 +msgid "Select the Device Name entry." +msgstr "" + +#. (itstool) path: media/gui +#: ../help/C/device-name.page:50 +msgid "Apply" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-name.page:47 +msgid "Choose a new name for the device and press Enter or click the <_:media-1/> button." +msgstr "" + +#. (itstool) path: note/p +#: ../help/C/device-name.page:58 +msgid "It may take time for other devices to display the new name." +msgstr "" + +#. (itstool) path: info/link +#: ../help/C/device-setup.page:15 +msgid "KDE Connect — Pairing two devices together" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/device-setup.page:19 +msgctxt "text" +msgid "Setup a new device" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/device-setup.page:20 +msgid "Connect and configure a new device." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/device-setup.page:23 +msgid "Setup a new device" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/device-setup.page:24 +#: ../help/C/device-unpair.page:21 +msgid "Before starting, ensure that both devices you want to connect are on the same local network." +msgstr "" + +#. (itstool) path: media/gui +#: ../help/C/device-setup.page:36 +msgid "Refresh" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-setup.page:31 +msgid "Open the Main Window and press the <_:media-1/> button." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-setup.page:42 +msgid "Wait up to 10 seconds for the device to appear in the device list. If your device does not appear, see for possible solutions." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-setup.page:49 +msgid "Activate the device row to open the Device Page. You may configure a device before pairing to restrict its access." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-setup.page:58 +#: ../help/C/device-unpair.page:46 +msgid "Activate the Request Pairing button, then use the other device to confirm the verification key and accept the request." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-setup.page:64 +msgid "Once paired, the available actions and information will be revealed on the device page. To unpair the device, open the menu on the device page and select Unpair." +msgstr "" + +#. (itstool) path: note/p +#: ../help/C/device-setup.page:73 +#: ../help/C/device-unpair.page:54 +msgid "Information about connecting official KDE Connect clients can be found on the KDE Connect Wiki." +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/device-unpair.page:16 +msgctxt "text" +msgid "Remove a device" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/device-unpair.page:17 +msgid "How to unpair and remove a device." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/device-unpair.page:20 +msgid "Remove a Device" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-unpair.page:28 +msgid "Open the Main Window." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/device-unpair.page:33 +msgid "Activate the device row to open the Device Page." +msgstr "" + +#. (itstool) path: gui/media +#. This is a reference to an external file such as an image or video. When +#. the file changes, the md5 hash will change to let you know you need to +#. update your localized copy. The msgstr is not used at all. Set it to +#. whatever you like once you have updated your copy of the file. +#: ../help/C/device-unpair.page:41 +#: ../help/C/introduction.page:158 +msgctxt "_" +msgid "external ref='figures/view-more-symbolic.svg' md5='8bb83a3e075004164078064eab6c1a11'" +msgstr "" + +#. (itstool) path: gui/media +#. (itstool) path: media/gui +#: ../help/C/device-unpair.page:41 +#: ../help/C/introduction.page:158 +#: ../help/C/plugins-battery.page:81 +#: ../help/C/plugins-battery.page:118 +#: ../help/C/plugins-clipboard.page:87 +#: ../help/C/plugins-connectivity_report.page:78 +#: ../help/C/plugins-notification.page:84 +#: ../help/C/plugins-notification.page:133 +#: ../help/C/plugins-runcommand.page:72 +#: ../help/C/plugins-runcommand.page:112 +#: ../help/C/plugins-runcommand.page:154 +#: ../help/C/plugins-sftp.page:78 +#: ../help/C/plugins-share.page:82 +#: ../help/C/plugins-telephony.page:78 +#: ../help/C/plugins-telephony.page:125 +#: ../help/C/tools-input-remote.page:35 +#: ../help/C/tools-media-remote.page:36 +msgid "Device Menu" +msgstr "" + +#. (itstool) path: guiseq/gui +#: ../help/C/device-unpair.page:43 +msgid "Unpair" +msgstr "" + +#. (itstool) path: item/gui +#. (itstool) path: section/title +#. (itstool) path: media/p +#: ../help/C/device-unpair.page:45 +#: ../help/C/introduction.page:131 +#: ../help/C/introduction.page:145 +msgid "Device Page" +msgstr "" + +#. (itstool) path: steps/item +#: ../help/C/device-unpair.page:38 +msgid "<_:guiseq-1/> in the <_:gui-2/>. <_:p-3/>" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/index.page:14 +msgctxt "link:guide" +msgid "Valent" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/index.page:15 +msgctxt "link:trail" +msgid "Valent" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/index.page:17 +msgctxt "text" +msgid "Valent" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/index.page:18 +msgid "Connect, control and sync devices." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/index.page:21 +msgid "<_:media-1/> Valent Help" +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/index.page:27 +msgid "Getting Started" +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/index.page:31 +msgid "Troubleshooting" +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/index.page:35 +msgid "Tools" +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/index.page:39 +msgid "Common Tasks" +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/index.page:43 +msgid "Status Updates" +msgstr "" + +#. (itstool) path: info/link +#: ../help/C/introduction.page:15 +msgid "KDE Connect Homepage" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/introduction.page:19 +msgctxt "text" +msgid "Introduction" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/introduction.page:20 +msgid "Learn about Valent." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/introduction.page:23 +msgid "Introduction" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/introduction.page:25 +msgid "Valent is an application for securely connecting devices, like smartphones and laptops, allowing them to sync data and be controlled remotely." +msgstr "" + +#. (itstool) path: list/title +#: ../help/C/introduction.page:33 +msgid "Common use cases…" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/introduction.page:37 +msgid "Use a smartphone to control the mouse and keyboard on your desktop, or music and video on your media center." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/introduction.page:46 +msgid "Configure select notifications to be forwarded from your phone when it's locked or silent, and receive them on your active workstation." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/introduction.page:52 +msgid "Sync the clipboard between your devices to easily copy and paste one-time passwords (OTP) from SMS notifications." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/introduction.page:58 +msgid "Send, receive and search SMS messages from your desktop, via a smartphone running Valent or the KDE Connect app." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/introduction.page:64 +msgid "Select Valent in Open With… dialogs to easily send files and links to other devices." +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/introduction.page:71 +msgid "Valent is an implementation of the KDE Connect protocol and can connect to any other conforming implementation. The KDE Connect project has clients for Linux, Android, SailfishOS, macOs, Windows and more." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/introduction.page:79 +msgid "Visual Tour" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/introduction.page:80 +msgid "Valent has a limited user interface, usually preferring to integrate with the desktop environment when possible." +msgstr "" + +#. (itstool) path: section/title +#. (itstool) path: media/p +#: ../help/C/introduction.page:88 +#: ../help/C/introduction.page:100 +msgid "Main Window" +msgstr "" + +#. (itstool) path: note/p +#: ../help/C/introduction.page:90 +msgid "Open the Main Window by activating the launcher or menu item for Valent." +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/introduction.page:95 +msgid "The Main Window is where other devices are listed, including trusted devices and new devices." +msgstr "" + +#. (itstool) path: section/media +#. This is a reference to an external file such as an image or video. When +#. the file changes, the md5 hash will change to let you know you need to +#. update your localized copy. The msgstr is not used at all. Set it to +#. whatever you like once you have updated your copy of the file. +#: ../help/C/introduction.page:99 +msgctxt "_" +msgid "external ref='figures/screenshots/main-window.png' md5='6b5a9f7c9ec91d98200cfd265f2ee89d'" +msgstr "" + +#. (itstool) path: section/title +#. (itstool) path: media/p +#: ../help/C/introduction.page:105 +#: ../help/C/introduction.page:126 +msgid "Main Preferences" +msgstr "" + +#. (itstool) path: gui/media +#. This is a reference to an external file such as an image or video. When +#. the file changes, the md5 hash will change to let you know you need to +#. update your localized copy. The msgstr is not used at all. Set it to +#. whatever you like once you have updated your copy of the file. +#: ../help/C/introduction.page:113 +msgctxt "_" +msgid "external ref='figures/open-menu-symbolic.svg' md5='53c42fca9e64a93b4c572d5ba805fd4d'" +msgstr "" + +#. (itstool) path: note/p +#: ../help/C/introduction.page:107 +msgid "Open the Main Preferences by selecting <_:gui-1/> Preferences in the Main Window." +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/introduction.page:120 +msgid "The Main Preferences is where the device name can be changed, and plugins that integrate with the desktop are configured." +msgstr "" + +#. (itstool) path: section/media +#. This is a reference to an external file such as an image or video. When +#. the file changes, the md5 hash will change to let you know you need to +#. update your localized copy. The msgstr is not used at all. Set it to +#. whatever you like once you have updated your copy of the file. +#: ../help/C/introduction.page:125 +msgctxt "_" +msgid "external ref='figures/screenshots/main-preferences.png' md5='b043bc8c704224014024c5e194a2041d'" +msgstr "" + +#. (itstool) path: note/p +#: ../help/C/introduction.page:133 +msgid "Open the Device Page by activating the device row in the Main Window." +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/introduction.page:139 +msgid "When paired, the device page has the status widgets like the battery level and the plugin actions like Send Files. New devices will display controls for pairing." +msgstr "" + +#. (itstool) path: section/media +#. This is a reference to an external file such as an image or video. When +#. the file changes, the md5 hash will change to let you know you need to +#. update your localized copy. The msgstr is not used at all. Set it to +#. whatever you like once you have updated your copy of the file. +#: ../help/C/introduction.page:144 +msgctxt "_" +msgid "external ref='figures/screenshots/device-page.png' md5='ad3751ee81a7ec799e50ddfe31e13347'" +msgstr "" + +#. (itstool) path: section/title +#. (itstool) path: media/p +#: ../help/C/introduction.page:150 +#: ../help/C/introduction.page:170 +msgid "Device Preferences" +msgstr "" + +#. (itstool) path: note/p +#: ../help/C/introduction.page:152 +msgid "Open the Device Preferences by selecting <_:gui-1/> Preferences in the Device Page." +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/introduction.page:165 +msgid "The devices preferences is where can be enabled, disabled and configured." +msgstr "" + +#. (itstool) path: section/media +#. This is a reference to an external file such as an image or video. When +#. the file changes, the md5 hash will change to let you know you need to +#. update your localized copy. The msgstr is not used at all. Set it to +#. whatever you like once you have updated your copy of the file. +#: ../help/C/introduction.page:169 +msgctxt "_" +msgid "external ref='figures/screenshots/device-preferences.png' md5='237bc138bc517a9b5aeb06754d605c7b'" +msgstr "" + +#. (itstool) path: p/link +#: ../help/C/legal.xml:4 +msgid "Creative Commons Attribution-ShareAlike 4.0 International" +msgstr "" + +#. (itstool) path: license/p +#: ../help/C/legal.xml:3 +msgid "This work is licensed under a <_:link-1/> license." +msgstr "" + +#. (itstool) path: info/link +#: ../help/C/plugins.page:13 +msgid "KDE Connect — Available Plugins" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins.page:17 +msgctxt "text" +msgid "Plugins" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins.page:18 +msgid "Extended Functionality." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins.page:22 +msgid "Plugins" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins.page:23 +msgid "Valent supports several types of plugins, with default plugins for features in KDE Connect and freedesktop.org interfaces." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins.page:30 +msgid "Device Plugins" +msgstr "" + +#. (itstool) path: section/subtitle +#: ../help/C/plugins.page:31 +msgid "Remote control and syncing capabilities" +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-battery.page:14 +msgid "battery, charge, charging, level, monitor, statistics" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-battery.page:16 +msgctxt "text" +msgid "Battery Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-battery.page:17 +msgid "Monitor battery level and charging state." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-battery.page:20 +msgid "Battery Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-battery.page:21 +msgid "The Battery plugin allows devices to exchange information about their battery status, such as the level and charging state." +msgstr "" + +#. (itstool) path: list/title +#: ../help/C/plugins-battery.page:27 +#: ../help/C/plugins-clipboard.page:27 +#: ../help/C/plugins-connectivity_report.page:27 +#: ../help/C/plugins-contacts.page:27 +#: ../help/C/plugins-findmyphone.page:26 +#: ../help/C/plugins-lock.page:28 +#: ../help/C/plugins-mousepad.page:29 +#: ../help/C/plugins-mpris.page:27 +#: ../help/C/plugins-notification.page:29 +#: ../help/C/plugins-presenter.page:29 +#: ../help/C/plugins-runcommand.page:28 +#: ../help/C/plugins-sftp.page:27 +#: ../help/C/plugins-share.page:26 +#: ../help/C/plugins-sms.page:27 +#: ../help/C/plugins-systemvolume.page:27 +#: ../help/C/plugins-telephony.page:27 +msgid "Features" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-battery.page:29 +#: ../help/C/plugins-telephony.page:29 +msgid "Monitor remote battery level and charging state" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-battery.page:32 +#: ../help/C/plugins-connectivity_report.page:32 +#: ../help/C/plugins-telephony.page:32 +msgid "Configurable notifications for low battery and full charge." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-battery.page:35 +msgid "Report local battery level and charging status." +msgstr "" + +#. (itstool) path: div/title +#: ../help/C/plugins-battery.page:40 +#: ../help/C/plugins-clipboard.page:37 +#: ../help/C/plugins-connectivity_report.page:40 +#: ../help/C/plugins-contacts.page:40 +#: ../help/C/plugins-lock.page:38 +#: ../help/C/plugins-mousepad.page:43 +#: ../help/C/plugins-notification.page:42 +#: ../help/C/plugins-presenter.page:39 +#: ../help/C/plugins-sftp.page:37 +#: ../help/C/plugins-share.page:39 +#: ../help/C/plugins-sms.page:37 +#: ../help/C/plugins-systemvolume.page:37 +#: ../help/C/plugins-telephony.page:40 +msgid "Requirements" +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-battery.page:41 +msgid "To report local battery statistics to a remote device, a battery must be recognized by UPower. Consult the documentation for your distribution if your battery is not recognized." +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-battery.page:52 +msgctxt "text" +msgid "Monitor the battery status" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-battery.page:53 +#: ../help/C/plugins-connectivity_report.page:53 +msgid "Configure status notifications." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-battery.page:56 +msgid "Monitor the battery status" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-battery.page:57 +msgid "This guide will teach you how to configure when notifications are shown for the battery level and status." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-battery.page:65 +msgid "Low Battery Notification" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-battery.page:66 +#: ../help/C/plugins-battery.page:103 +msgid "To change the battery notification level, start by opening the main window and selecting a device." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-battery.page:73 +#: ../help/C/plugins-battery.page:110 +#: ../help/C/plugins-clipboard.page:79 +#: ../help/C/plugins-connectivity_report.page:70 +#: ../help/C/plugins-lock.page:66 +#: ../help/C/plugins-notification.page:76 +#: ../help/C/plugins-notification.page:125 +#: ../help/C/plugins-presenter.page:62 +#: ../help/C/plugins-runcommand.page:64 +#: ../help/C/plugins-runcommand.page:104 +#: ../help/C/plugins-runcommand.page:146 +#: ../help/C/plugins-sftp.page:70 +#: ../help/C/plugins-telephony.page:70 +#: ../help/C/plugins-telephony.page:117 +#: ../help/C/tools-input-remote.page:27 +#: ../help/C/tools-media-remote.page:28 +msgid "Open the main window and select a device." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-battery.page:87 +msgid "Select Status in the view switcher, then toggle the Low Battery Notification row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-battery.page:93 +#: ../help/C/plugins-battery.page:130 +msgid "Adjust the Level Threshold to control when the notification will be shown." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-battery.page:102 +msgid "Full Battery Notification" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-battery.page:124 +msgid "Select Status in the view switcher, then toggle the Full Battery Notification row." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-clipboard.page:14 +msgid "clipboard, copy, paste, sync" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-clipboard.page:16 +msgctxt "text" +msgid "Clipboard Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-clipboard.page:17 +msgid "Sync the clipboard between devices." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-clipboard.page:20 +msgid "Clipboard Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-clipboard.page:21 +msgid "The Clipboard plugin allows devices to sync clipboard content, allowing copy and paste to work across devices." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-clipboard.page:29 +msgid "Paste text copied on another device." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-clipboard.page:32 +#: ../help/C/plugins-contacts.page:32 +msgid "Configure sync direction for each device." +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-clipboard.page:38 +msgid "To access the clipboard used by other applications, Valent must be running in GNOME Shell or an X11 desktop. Other desktop environments may provide an adapter to support clipboard access." +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-clipboard.page:49 +msgctxt "text" +msgid "Sync clipboard content" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-clipboard.page:50 +msgid "Configure how clipboard content is synced." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-clipboard.page:53 +msgid "Sync clipboard content" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-clipboard.page:54 +msgid "The can be used to sync the clipboard between devices. This guide will teach you how to control the source and direction the content will be synced in." +msgstr "" + +#. (itstool) path: note/p +#: ../help/C/plugins-clipboard.page:61 +msgid "When enabled, clipboard content will be synced without any consideration of security implications. This includes passwords and any other sensitive content." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-clipboard.page:71 +msgid "Clipboard Sync" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-clipboard.page:72 +msgid "To configure clipboard sync, start by opening the main window and selecting a device." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-clipboard.page:93 +msgid "Select Sync in the view switcher and navigate to the Clipboard preferences." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-clipboard.page:99 +msgid "To sync content from the remote device to the local clipboard, toggle the Remote Clipboard switch. When enabled, content in the remote clipboard can be pasted from the local clipboard." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-clipboard.page:104 +msgid "To sync content from local clipboard to the remote device, toggle the Local Clipboard switch. When enabled, content will be sent to the remote device when copied." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-connectivity_report.page:14 +msgid "connectivity, mobile, network, signal" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-connectivity_report.page:16 +msgctxt "text" +msgid "Connectivity Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-connectivity_report.page:17 +msgid "Monitor mobile connectivity status." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-connectivity_report.page:20 +msgid "Connectivity Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-connectivity_report.page:21 +msgid "The connectivity plugin allows devices to exchange information about the connection strength and status of mobile networks." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-connectivity_report.page:29 +msgid "Monitor remote battery level and charging state." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-connectivity_report.page:35 +#: ../help/C/plugins-telephony.page:35 +msgid "Share local battery level and charging status." +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-connectivity_report.page:41 +#: ../help/C/plugins-share.page:40 +#: ../help/C/plugins-telephony.page:41 +msgid "To report local battery statistics to a remote device, Valent needs a battery to be reported by UPower. Consult the documentation for your distribution if your battery is missing." +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-connectivity_report.page:52 +msgctxt "text" +msgid "Monitor mobile connectivity" +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-connectivity_report.page:56 +msgid "Monitor mobile connectivity" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-connectivity_report.page:57 +msgid "The monitors the signal strength and status of mobile connectivity. This guide will teach you how to configure when notifications are shown for the connection status." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-connectivity_report.page:66 +msgid "Connectivity Notification" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-connectivity_report.page:84 +msgid "Select Status in the view switcher, then toggle the Remote Connectivity row." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-contacts.page:14 +msgid "contacts, addressbook" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-contacts.page:16 +msgctxt "text" +msgid "Contacts Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-contacts.page:17 +msgid "Sync contacts between devices." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-contacts.page:20 +msgid "Contacts Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-contacts.page:21 +msgid "The contacts plugin allows devices to exchange contacts and sync address books." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-contacts.page:29 +msgid "Sync contacts and expose them to other applications." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-contacts.page:35 +msgid "Configure which address book to sync for each device." +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-contacts.page:41 +msgid "To access contacts and share them with other applications, a source like Evolution Data Server must be available. Other sources may provide an adapter to support contact sharing." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-findmyphone.page:14 +msgid "find, locate, phone, ring" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-findmyphone.page:16 +msgctxt "text" +msgid "Find My Phone Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-findmyphone.page:17 +msgid "Find a device by making it ring." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-findmyphone.page:20 +msgid "Find My Phone Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-findmyphone.page:21 +msgid "The Find My Phone plugin can help you to find a device by making it ring." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-findmyphone.page:28 +msgid "Activate ringer on remote devices." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-findmyphone.page:31 +msgid "Help locate the local device when requested." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-lock.page:14 +msgid "lock, unlock, session" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-lock.page:16 +msgctxt "text" +msgid "Lock Plugin" +msgstr "" + +#. (itstool) path: info/desc +#. (itstool) path: item/p +#: ../help/C/plugins-lock.page:17 +#: ../help/C/plugins-lock.page:30 +msgid "Monitor session activity and lock state." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-lock.page:20 +msgid "Lock Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-lock.page:21 +msgid "The Lock plugin allows devices to be locked and unlocked remotely." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-lock.page:33 +msgid "Lock and unlock a remote device." +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-lock.page:39 +msgid "To report the session state to a remote device, Valent needs a session supporting logind. Consult the documentation for help." +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-lock.page:49 +msgctxt "text" +msgid "Lock or unlock a device" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-lock.page:50 +msgid "How to check and control the device lock." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-lock.page:53 +msgid "Lock or unlock a device" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-lock.page:54 +msgid "This guide will teach you how to check if a remote device is locked, and how to lock or unlock it." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-lock.page:62 +msgid "Lock State" +msgstr "" + +#. (itstool) path: media/gui +#: ../help/C/plugins-lock.page:74 +#: ../help/C/plugins-lock.page:84 +msgid "Lock" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-lock.page:71 +msgid "Look for the <_:media-1/> button near the top of the . If the button is missing, the device may not support this feature." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-lock.page:81 +msgid "Toggle the <_:media-1/> button to lock or unlock the remote device." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-mousepad.page:14 +msgid "input, keyboard, mouse, mousepad, remote, touchpad" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-mousepad.page:16 +msgctxt "text" +msgid "Mousepad Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-mousepad.page:17 +#: ../help/C/tools-input-remote.page:17 +msgid "Control the mouse and keyboard." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-mousepad.page:20 +msgid "Mousepad Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-mousepad.page:21 +msgid "The Mousepad plugin allows controlling the mouse and keyboard of another device remotely." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-mousepad.page:31 +msgid "Send mouse and keyboard events to remote devices." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-mousepad.page:36 +msgid "Receive events from remote devices and emulate mouse and keyboard input." +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-mousepad.page:44 +msgid "To allow other devices to control the mouse and keyboard an interface such as the Remote Desktop portal must be available. Consult the documentation for your distribution for information about supported interfaces." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-mpris.page:14 +msgid "mpris, media, player, remote" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-mpris.page:16 +msgctxt "text" +msgid "MPRIS Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-mpris.page:17 +msgid "Share control of media players." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-mpris.page:20 +msgid "MPRIS Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-mpris.page:21 +msgid "The MPRIS plugin allows devices to share control of media players, including track information and album art." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-mpris.page:29 +msgid "Simple remote for controlling remote media players." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-mpris.page:34 +msgid "Share control of local media players with other devices." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-mpris.page:39 +msgid "Integrate remote media players with the local desktop, allowing control from media notifications and other interfaces." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-notification.page:14 +#: ../help/C/plugins-notification.page:53 +msgid "notification, notifications, sync" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-notification.page:16 +msgctxt "text" +msgid "Notification Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-notification.page:17 +msgid "Sync notifications between devices." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-notification.page:20 +msgid "Notification Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-notification.page:21 +msgid "The notification plugin allows devices to sync notifications between devices, including icons, actions, and quick reply messages. battery, such as the level and charging state." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-notification.page:31 +msgid "Common features including icons, actions and quick reply messages." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-notification.page:34 +msgid "Intelligent sync, forwards notifications to the active device." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-notification.page:37 +msgid "Filter outgoing notifications." +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-notification.page:43 +msgid "To share local notifications with a remote device, Valent needs access to the D-Bus session connection. Consult the documentation for your distribution if notifications aren't being synced." +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-notification.page:55 +msgctxt "text" +msgid "Notification Forwarding" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-notification.page:56 +msgid "Configure notification sync." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-notification.page:59 +msgid "Notification Forwarding" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-notification.page:60 +msgid "This guide will teach you how to control notification forwarding and filtering by application." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-notification.page:68 +msgid "Intelligent Sync" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-notification.page:69 +msgid "Notifications can be configured to sync in a more intelligent way, by using the session state as a hint to which device is presently in use." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-notification.page:90 +#: ../help/C/plugins-notification.page:139 +msgid "Select Sync in the view switcher, then expand the Local Notifications row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-notification.page:96 +msgid "Toggle the switch on the Intelligent Sync row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-notification.page:102 +msgid "When enabled, local notifications will only be forwarded if the local session is inactive, and only to remote devices that are active." +msgstr "" + +#. (itstool) path: note/p +#: ../help/C/plugins-notification.page:108 +msgid "Connected devices are considered active by default." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-notification.page:117 +msgid "Filter Applications" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-notification.page:118 +msgid "Notifications can be filtered by application, to avoid excessive disturbances or leaking sensitive data." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-notification.page:145 +msgid "Activate the Filter by Application row." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-presenter.page:14 +msgid "battery, level, charge, statistics" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-presenter.page:16 +msgctxt "text" +msgid "Presenter Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-presenter.page:17 +msgid "Control presentations." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-presenter.page:20 +msgid "Presenter Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-presenter.page:21 +msgid "The Presenter plugin allows controlling a presentation slideshow with a simple remote." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-presenter.page:31 +msgid "Upload and open presentations on remote devices." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-presenter.page:34 +msgid "Control presentations on remote devices." +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-presenter.page:40 +msgid "To upload and open presentations on a remote device, the must be enabled." +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-presenter.page:50 +msgctxt "text" +msgid "Presentation Remote" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-presenter.page:51 +msgid "Share and control presentations." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-presenter.page:54 +msgid "Presentation Remote" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-presenter.page:55 +msgid "To control a presentation, start by opening the main window and selecting a device." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-presenter.page:67 +msgid "Activate the Presentation Remote row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-presenter.page:72 +msgid "Use the remote to control standard presentation software on other devices running a KDE Connect client." +msgstr "" + +#. (itstool) path: note/p +#: ../help/C/plugins-presenter.page:77 +msgid "The Upload button can be used to open a presentation on a remote device and start controlling it." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-runcommand.page:14 +msgid "commands, level, charge, statistics" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-runcommand.page:16 +msgctxt "text" +msgid "Commands Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-runcommand.page:17 +msgid "Execute commands on remote devices." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-runcommand.page:20 +msgid "Commands Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-runcommand.page:21 +msgid "The Commands plugin allows device to define commands that can be executed by other devices. Each device can be granted access to execute a unique list of commands and may not execute arbitrary commands or pass any input." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-runcommand.page:30 +msgid "Execute commands on the remote device." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-runcommand.page:35 +msgid "Configure commands the remote device can execute on the local device." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-runcommand.page:44 +#: ../help/C/plugins-sftp.page:48 +msgid "command, commands, execute" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-runcommand.page:46 +msgctxt "text" +msgid "Commands" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-runcommand.page:47 +msgid "Add, edit and remove executable commands." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-runcommand.page:50 +msgid "Commands" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-runcommand.page:51 +msgid "The can be used to allow a remote device to execute a predefined list of commands on the local device. This guide will teach you how to add, edit and remove commands." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-runcommand.page:60 +msgid "Adding Commands" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-runcommand.page:78 +msgid "Select Other in the view switcher, then activate the Add Command… row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-runcommand.page:84 +#: ../help/C/plugins-runcommand.page:168 +msgid "Enter values into the Name entry and Command Line entry, then press Save." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-runcommand.page:91 +msgid "The command will appear in the preferences, and on the remote device." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-runcommand.page:100 +msgid "Editing Commands" +msgstr "" + +#. (itstool) path: media/gui +#: ../help/C/plugins-runcommand.page:121 +msgid "Edit" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-runcommand.page:118 +#: ../help/C/plugins-runcommand.page:160 +msgid "Select Other in the view switcher, then activate the <_:media-1/> button on the command's row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-runcommand.page:126 +msgid "Enter new values into the Name entry and Command Line entry, then press Save." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-runcommand.page:133 +msgid "The command will be updated in the preferences, and on the remote device." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-runcommand.page:142 +msgid "Removing Commands" +msgstr "" + +#. (itstool) path: media/gui +#: ../help/C/plugins-runcommand.page:163 +msgid "Remove" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-runcommand.page:175 +msgid "The command will be removed from the preferences, and the remote device will no longer be able to execute the command." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-sftp.page:14 +msgid "files, share, sharing, sftp" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-sftp.page:16 +msgctxt "text" +msgid "Files Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-sftp.page:17 +msgid "Share files and directories with SFTP." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-sftp.page:20 +msgid "Files Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-sftp.page:21 +msgid "The Files plugin allows devices to securely share files and directories with the SFTP protocol." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-sftp.page:29 +msgid "Automatically mount remote folders" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-sftp.page:32 +msgid "Share local SFTP server details." +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-sftp.page:38 +msgid "To share files and folders, a SFTP server like sshd must be running. Consult the documentation for your distribution for help setting up an SFTP server." +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-sftp.page:50 +msgctxt "text" +msgid "File Sharing" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-sftp.page:51 +msgid "Configure file sharing." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-sftp.page:54 +msgid "File Sharing" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-sftp.page:55 +msgid "This guide will teach you how to configure a local SFTP server to integrate with Valent." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-sftp.page:63 +msgid "SFTP Server" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-sftp.page:64 +msgid "..." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-sftp.page:84 +msgid "Select Sync in the view switcher, then navigate to the Files group." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-sftp.page:90 +msgid "To enable file sharing, toggle the switch on the Local Files row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-sftp.page:96 +msgid "Set the value in the Port entry to match the SFTP server." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-sftp.page:102 +msgid "The remote device will now be informed of the address and port of the SFTP server." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-share.page:14 +msgid "share, sharing, file, link, text, url" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-share.page:16 +msgctxt "text" +msgid "Share Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-share.page:17 +msgid "Direct file, link and text sharing." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-share.page:20 +msgid "Share Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-share.page:21 +msgid "The Share plugin allows devices to directly share files, links and text." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-share.page:28 +msgid "Upload files to paired devices." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-share.page:31 +msgid "Open links on other devices." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-share.page:34 +msgid "Share text with embedded markup." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-share.page:50 +msgid "share, file, files, link, url, text" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-share.page:52 +msgctxt "text" +msgid "Direct Sharing" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-share.page:53 +msgid "Configure direct sharing of files, links and text." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-share.page:56 +msgid "Direct Sharing" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-share.page:57 +msgid "The can be used to share files, links and text directly between devices. This guide will teach you how to configure where received files are saved." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-share.page:66 +msgid "Received Files" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-share.page:67 +msgid "To configure direct sharing, start by opening the main window and selecting a device." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-share.page:74 +msgid "Open the main window and select the device." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-share.page:88 +msgid "Select Other in the view switcher, then activate the Download directory row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-share.page:94 +msgid "Use the File Chooser dialog to navigate to a directory, then press Open." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-sms.page:14 +msgid "sms, message, messaging, mms, text" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-sms.page:16 +msgctxt "text" +msgid "SMS Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-sms.page:17 +msgid "Send and receive SMS messages." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-sms.page:20 +msgid "SMS Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-sms.page:21 +msgid "The SMS plugin allows sending, receiving and searching messages on a remote device." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-sms.page:29 +msgid "Messaging window with history and search." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-sms.page:32 +msgid "Send and receive text and media attachments." +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-sms.page:38 +msgid "To use SMS messaging, the remote device must have an active account with a service provider. Valent does not support sending or receiving messages with online services." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-systemvolume.page:14 +msgid "volume, level, microphone, pipewire, pulseaudio" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-systemvolume.page:16 +msgctxt "text" +msgid "System Volume Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-systemvolume.page:17 +msgid "Monitor volume levels and mircphones." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-systemvolume.page:20 +msgid "System Volume Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-systemvolume.page:21 +msgid "The System Volume plugin allows devices to monitor and control the volume on remote devices." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-systemvolume.page:29 +msgid "Monitor remote volume level and microphones." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-systemvolume.page:32 +msgid "Change audio output device." +msgstr "" + +#. (itstool) path: div/p +#: ../help/C/plugins-systemvolume.page:38 +msgid "To report local volume and audio devices to a remote device, the system must support PulseAudio or PipeWire. Consult the documentation for your distribution if your volume is not reported." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-telephony.page:14 +msgid "telephony, telephone, phone, ring" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-telephony.page:16 +msgctxt "text" +msgid "Telephony Plugin" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-telephony.page:17 +msgid "Be notified of incoming and ongoing calls." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/plugins-telephony.page:20 +msgid "Telephony Plugin" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/plugins-telephony.page:21 +msgid "The Telephony plugin allows devices to notify of incoming and ongoing telephone calls." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/plugins-telephony.page:51 +msgid "telephony, phone, call, ring" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/plugins-telephony.page:53 +msgctxt "text" +msgid "Phone Call Notification" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/plugins-telephony.page:54 +msgid "Lower the volume and pause media while on the phone." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-telephony.page:57 +msgid "Phone Call Notification" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/plugins-telephony.page:58 +msgid "The handles phone call notification. This guide will teach you how configure responses to incoming and ongoing calls." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-telephony.page:66 +msgid "Incoming Calls" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-telephony.page:84 +#: ../help/C/plugins-telephony.page:131 +msgid "Select Other in the view switcher, then expand the Incoming Calls row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-telephony.page:90 +#: ../help/C/plugins-telephony.page:137 +msgid "Activate the Volume row and select from Nothing, Lower and Mute." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-telephony.page:95 +#: ../help/C/plugins-telephony.page:142 +msgid "When the phone rings, the system volume will be adjusted according to this setting." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-telephony.page:101 +#: ../help/C/plugins-telephony.page:158 +msgid "Toggle the switch on the Pause Media row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-telephony.page:104 +#: ../help/C/plugins-telephony.page:161 +msgid "When the phone rings, supported media players will be paused until the call ends, if enabled." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/plugins-telephony.page:113 +msgid "Ongoing Calls" +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-telephony.page:148 +msgid "Toggle the switch on the Mute Microphone row." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/plugins-telephony.page:152 +msgid "When the phone rings, the microphone will be muted until the call ends, if enabled." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/tools-input-remote.page:14 +msgid "input, remote" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/tools-input-remote.page:16 +msgctxt "text" +msgid "Input Remote" +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/tools-input-remote.page:20 +msgid "Input Remote" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/tools-input-remote.page:21 +msgid "To control the mouse and keyboard, start by opening the main window." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/tools-input-remote.page:32 +msgid "Open the <_:media-1/> menu and select Input Remote." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/tools-input-remote.page:41 +msgid "Open the dropdown menu to select from the available devices." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/tools-input-remote.page:46 +msgid "Use the remote to control the mouse and keyboard." +msgstr "" + +#. (itstool) path: info/keywords +#: ../help/C/tools-media-remote.page:14 +msgid "media, remote" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/tools-media-remote.page:16 +msgctxt "text" +msgid "Media Remote" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/tools-media-remote.page:17 +msgid "Control media players and volume." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/tools-media-remote.page:20 +msgid "Media Remote" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/tools-media-remote.page:21 +msgid "To control a media player, start by opening the Main Window." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/tools-media-remote.page:33 +msgid "Open the <_:media-1/> menu and select Media Remote." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/tools-media-remote.page:42 +msgid "Open the dropdown menu to select from the available media players." +msgstr "" + +#. (itstool) path: item/p +#: ../help/C/tools-media-remote.page:47 +msgid "Use the remote to control the media player and volume." +msgstr "" + +#. (itstool) path: info/link +#: ../help/C/troubleshooting-firewall.page:14 +msgid "KDE Connect — Troubleshooting" +msgstr "" + +#. (itstool) path: info/title +#: ../help/C/troubleshooting-firewall.page:18 +msgctxt "text" +msgid "Firewall" +msgstr "" + +#. (itstool) path: info/desc +#: ../help/C/troubleshooting-firewall.page:19 +msgid "How to configure a firewall." +msgstr "" + +#. (itstool) path: page/title +#: ../help/C/troubleshooting-firewall.page:22 +msgid "Firewall" +msgstr "" + +#. (itstool) path: page/p +#: ../help/C/troubleshooting-firewall.page:24 +msgid "Valent implements the KDE Connect protocol, which usually connects devices on a local network (LAN). If you are having trouble connecting to a device, you may need to configure your firewall." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/troubleshooting-firewall.page:31 +msgid "General Information" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/troubleshooting-firewall.page:32 +msgid "Devices are discovered using mDNS or, for older clients, UDP broadcasts on port 1716. TCP connections use ports 1716–1764." +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/troubleshooting-firewall.page:36 +msgid "If you are unsure which firewall you have, you can use this information to get help for your distribution." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/troubleshooting-firewall.page:43 +msgid "Configuring firewalld" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/troubleshooting-firewall.page:45 +msgid "firewalld is a network firewall commonly used in Fedora. It ships with a prefined kdeconnect service that can be easily enabled." +msgstr "" + +#. (itstool) path: note/p +#: ../help/C/troubleshooting-firewall.page:60 +msgid "You may use firewall-config to configure firewalld with a graphical interface." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/troubleshooting-firewall.page:68 +msgid "Configuring ufw" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/troubleshooting-firewall.page:70 +msgid "ufw is a network firewall commonly used in Ubuntu and related distributions." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/troubleshooting-firewall.page:82 +msgid "Advanced Configuration" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/troubleshooting-firewall.page:84 +msgid "If you are using custom firewall rules, you may need to configure nftables or iptables manually. If unsure, consult the documentation for your distribution." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/troubleshooting-firewall.page:91 +msgid "Configuring nftables" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/troubleshooting-firewall.page:92 +msgid "nftables is a newer firewall subsystem for Linux, replacing iptables. You may add the following rules to the beginning of the \"input\" chain in /etc/nftables.conf." +msgstr "" + +#. (itstool) path: section/title +#: ../help/C/troubleshooting-firewall.page:104 +msgid "Configuring iptables" +msgstr "" + +#. (itstool) path: section/p +#: ../help/C/troubleshooting-firewall.page:105 +msgid "iptables is a subsystem of the Linux kernel." +msgstr "" + diff --git a/help/LINGUAS b/help/LINGUAS new file mode 100644 index 00000000000..e69de29bb2d diff --git a/help/meson.build b/help/meson.build new file mode 100644 index 00000000000..3c1e6c89a7a --- /dev/null +++ b/help/meson.build @@ -0,0 +1,42 @@ +# SPDX-License-Identifier: GPL-3.0-or-later +# SPDX-FileCopyrightText: Andy Holmes + +help_sources = [ + 'device-name.page', + 'device-preferences-other.page', + 'device-preferences-status.page', + 'device-preferences-sync.page', + 'device-setup.page', + 'index.page', + 'introduction.page', + 'legal.xml', + 'plugins.page', + 'tools-input-remote.page', + 'tools-media-remote.page', + 'tools-messages-window.page', + 'tools-share-dialog.page', + 'troubleshooting-firewall.page', +] + +help_media = [ + # UI Icons + 'figures/ca.andyholmes.Valent.svg', + 'figures/channel-secure-symbolic.svg', + 'figures/document-edit-symbolic.svg', + 'figures/entry-apply-symbolic.svg', + 'figures/open-menu-symbolic.svg', + 'figures/view-more-symbolic.svg', + 'figures/view-refresh-symbolic.svg', + + # Screenshots + 'figures/screenshots/device-page.png', + 'figures/screenshots/device-preferences.png', + 'figures/screenshots/image-missing.png', + 'figures/screenshots/main-preferences.png', + 'figures/screenshots/main-window.png', +] + +gnome.yelp(meson.project_name(), + sources: help_sources, + media: help_media, +) diff --git a/help/templates/plugin.page.tmpl b/help/templates/plugin.page.tmpl new file mode 100644 index 00000000000..a4c8b06fb17 --- /dev/null +++ b/help/templates/plugin.page.tmpl @@ -0,0 +1,62 @@ + + + + + {{NAME}} + {{EMAIL}} + {{YEAR}} + + + + + + + + {{TITLE}} + {{DESCRIPTION}} + + + {{TITLE}} +

+ {{LONG_DESCRIPTION}} +

+ + + Features + +

A short description of a feature or use case, ending in a period.

+
+ +

Descriptions that represent use cases should xref to a guide.

+
+
+ + +
diff --git a/help/templates/troubleshooting.page.tmpl b/help/templates/troubleshooting.page.tmpl new file mode 100644 index 00000000000..7d21370d9f4 --- /dev/null +++ b/help/templates/troubleshooting.page.tmpl @@ -0,0 +1,25 @@ + + + + + {{NAME}} + {{EMAIL}} + {{YEAR}} + + + + + KDE Connect — Troubleshooting + + + {{TITLE}} + {{DESCRIPTION}} + + + {{TITLE}} +

+ A troubleshooting guide. +

+
diff --git a/help/valent-html.xsl b/help/valent-html.xsl new file mode 100644 index 00000000000..90d818f0b6f --- /dev/null +++ b/help/valent-html.xsl @@ -0,0 +1,392 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +/* + * Valent CSS Overrides + */ + + +:root { + + --blue1: rgb(153,193,241); + --blue2: rgb(98,160,234); + --blue3: rgb(53,132,228); + --blue4: rgb(28,113,216); + --blue5: rgb(26,95,180); + --green1: rgb(143,240,164); + --green2: rgb(87,227,137); + --green3: rgb(51,209,122); + --green4: rgb(46,194,126); + --green5: rgb(38,162,105); + --yellow1: rgb(249,240,107); + --yellow2: rgb(248,228,92); + --yellow3: rgb(246,211,45); + --yellow4: rgb(245,194,17); + --yellow5: rgb(229,165,10); + --orange1: rgb(255,190,111); + --orange2: rgb(255,163,72); + --orange3: rgb(255,120,0); + --orange4: rgb(230,97,0); + --orange5: rgb(198,70,0); + --red1: rgb(246,97,81); + --red2: rgb(237,51,59); + --red3: rgb(224,27,36); + --red4: rgb(192,28,40); + --red5: rgb(165,29,45); + --purple1: rgb(220,138,221); + --purple2: rgb(192,97,203); + --purple3: rgb(145,65,172); + --purple4: rgb(129,61,156); + --purple5: rgb(97,53,131); + --brown1: rgb(205,171,143); + --brown2: rgb(181,131,90); + --brown3: rgb(152,106,68); + --brown4: rgb(134,94,60); + --brown5: rgb(99,69,44); + --light1: rgb(255,255,255); + --light2: rgb(246,245,244); + --light3: rgb(222,221,218); + --light4: rgb(192,191,188); + --light5: rgb(154,153,150); + --dark1: rgb(119,118,123); + --dark2: rgb(94,92,100); + --dark3: rgb(61,56,70); + --dark4: rgb(36,31,49); + --dark5: rgb(0,0,0); + + + --adw-card-bg-dark: rgb(54,54,54); + --adw-card-bg-dark: rgba(255, 255, 255, 0.08); + --adw-headerbar-bg-dark: rgb(48,48,48); + --adw-popup-bg-dark: rgb(56,56,56); + --adw-view-bg-dark: rgb(30,30,30); + --adw-window-bg-dark: rgb(36, 36, 36); + + + --color-bg: var(--light1); + --color-bg-blue: var(--blue2); + --color-bg-dark: var(--light3); + --color-bg-gray: var(--light2); + --color-bg-green: var(--green2); + --color-bg-orange: var(--orange2); + --color-bg-purple: var(--purple2); + --color-bg-red: var(--red2); + --color-bg-yellow: var(--yellow2); + + --color-fg: var(--dark4); + --color-fg-blue: var(--blue4); + --color-fg-dark: var(--dark2); + --color-fg-gray: var(--dark1); + --color-fg-green: var(--green5); + --color-fg-orange: var(--orange5); + --color-fg-purple: var(--purple5); + --color-fg-red: var(--red5); + --color-fg-yellow: var(--yellow5); + + --color-blue: var(--blue3); + --color-gray: var(--light3); + --color-green: var(--green3); + --color-orange: var(--orange3); + --color-purple: var(--purple3); + --color-red: var(--red3); + --color-yellow: var(--yellow3); +} + + +@media (prefers-color-scheme: dark) { + :root { + /* --color-bg: var(--dark4); */ + --color-bg: var(--adw-window-bg-dark); + --color-bg-blue: var(--blue4); + --color-bg-dark: var(--dark2); + /* --color-bg-gray: var(--dark3); */ + --color-bg-gray: var(--adw-card-bg-dark); + --color-bg-green: var(--green4); + --color-bg-orange: var(--orange4); + --color-bg-purple: var(--purple4); + --color-bg-red: var(--red4); + --color-bg-yellow: var(--yellow4); + + --color-fg: var(--light2); + --color-fg-blue: var(--blue2); + --color-fg-dark: var(--light4); + --color-fg-gray: var(--light4); + --color-fg-green: var(--green1); + --color-fg-orange: var(--orange1); + --color-fg-purple: var(--purple1); + --color-fg-red: var(--red1); + --color-fg-yellow: var(--yellow1); + + --color-gray: var(--light4); + } + + a:visited, + a.trail:hover { + color: var(--blue2); + } + + #valent-banner { + /* background-color: var(--dark3); */ + background-color: var(--adw-headerbar-bg-dark); + } +} + +@media (prefers-color-scheme: light) { + :root { + --color-bg: var(--light1); + --color-bg-blue: var(--blue2); + --color-bg-dark: var(--light3); + --color-bg-gray: var(--light2); + --color-bg-green: var(--green2); + --color-bg-orange: var(--orange2); + --color-bg-purple: var(--purple2); + --color-bg-red: var(--red2); + --color-bg-yellow: var(--yellow2); + + --color-fg: var(--dark4); + --color-fg-blue: var(--blue4); + --color-fg-dark: var(--dark2); + --color-fg-gray: var(--dark1); + --color-fg-green: var(--green5); + --color-fg-orange: var(--orange5); + --color-fg-purple: var(--purple5); + --color-fg-red: var(--red5); + --color-fg-yellow: var(--yellow5); + + --color-gray: var(--light4); + } + + a:visited, + a.trail:hover { + color: var(--blue4); + } + + #valent-banner { + background-color: var(--light3); + } +} + +html, body { + font-size: 16px; + font-family: "Cantarell", -apple-system, BlinkMacSystemFont, "Helvetica", sans-serif; +} + +@media (min-width: 700px) { + html, body { + font-size: 18px; + } +} + +a.linkdiv:hover { + background-color: rgba(53,132,228, 0.1); +} + +a.trail { + color: currentColor; +} + + + +#valent-banner { + padding: 2rem 0; + margin-bottom: 1em; + text-align: center; +} + +#valent-banner a { + display: flex; + gap: 0.5rem; + justify-content: center; + align-items: center; + + + padding-right: 2rem; + + font-size: 1.5rem; + font-weight: bold; +} + +#valent-banner a, +#valent-banner a:hover, +#valent-banner a:visited { + border: none; + color: currentColor; + text-decoration: none; +} + +#valent-banner svg { + fill: currentColor; + height: auto; + width: 1em; +} + + +footer { + /* background-color: var(--dark4); */ + background-color: var(--adw-view-bg-dark); + color: white; + padding: 2rem 0; + font-size: 80%; + text-align: center; +} + +footer a { + color: var(--blue2) !important; + text-decoration: none; +} + +footer a:hover { + text-decoration: underline; +} + + + + + +
+ + + + + + + + + + + + + +

+ © + + + +

+
+ + + + +
+ + + + + + + + + + + + diff --git a/meson.build b/meson.build index 9eda5d97947..68b9008d198 100644 --- a/meson.build +++ b/meson.build @@ -277,6 +277,10 @@ if get_option('documentation') subdir('doc/sdk') endif +if get_option('help') + subdir('help') +endif + if get_option('tests') subdir('tests') endif @@ -293,6 +297,7 @@ gnome.post_install( # summary({ 'Documentation': get_option('documentation'), + 'Help': get_option('help'), 'Introspection': get_option('introspection'), 'VAPI': get_option('vapi'), 'Optimization': get_option('optimization'), diff --git a/meson.options b/meson.options index e045bed271a..19799ff36fd 100644 --- a/meson.options +++ b/meson.options @@ -9,6 +9,12 @@ option('documentation', value: false, ) +option('help', + type: 'boolean', + value: true, + description: 'Build help documentation', +) + option('introspection', description: 'Build introspection data', type: 'boolean', diff --git a/src/plugins/gnome/valent-window.c b/src/plugins/gnome/valent-window.c index 5fa1a5c16f8..7b071669a44 100644 --- a/src/plugins/gnome/valent-window.c +++ b/src/plugins/gnome/valent-window.c @@ -279,6 +279,21 @@ page_action (GtkWidget *widget, } } +static void +help_action (GtkWidget *widget, + const char *action_name, + GVariant *parameter) +{ + GtkWindow *window = GTK_WINDOW (widget); + + g_assert (GTK_IS_WINDOW (window)); + + /* GtkUriLauncher may try to open the URI outside of the sandbox */ + G_GNUC_BEGIN_IGNORE_DEPRECATIONS + gtk_show_uri (window, "help:valent", GDK_CURRENT_TIME); + G_GNUC_END_IGNORE_DEPRECATIONS +} + static void preferences_action (GtkWidget *widget, const char *action_name, @@ -447,6 +462,7 @@ valent_window_class_init (ValentWindowClass *klass) gtk_widget_class_bind_template_child (widget_class, ValentWindow, device_list); gtk_widget_class_install_action (widget_class, "win.about", NULL, about_action); + gtk_widget_class_install_action (widget_class, "win.help", NULL, help_action); gtk_widget_class_install_action (widget_class, "win.page", "s", page_action); gtk_widget_class_install_action (widget_class, "win.preferences", NULL, preferences_action); gtk_widget_class_install_action (widget_class, "win.refresh", NULL, refresh_action); diff --git a/src/plugins/gnome/valent-window.ui b/src/plugins/gnome/valent-window.ui index 6d46be088ee..e5a3cf82702 100644 --- a/src/plugins/gnome/valent-window.ui +++ b/src/plugins/gnome/valent-window.ui @@ -11,6 +11,12 @@ global + + + F1 + action(win.help) + + <Control>comma @@ -142,6 +148,10 @@ Preferences win.preferences + + Help + win.help + About Valent win.about diff --git a/src/plugins/lock/lock.plugin.desktop.in b/src/plugins/lock/lock.plugin.desktop.in index 952d6113e3f..958fa808d0d 100644 --- a/src/plugins/lock/lock.plugin.desktop.in +++ b/src/plugins/lock/lock.plugin.desktop.in @@ -4,7 +4,7 @@ [Plugin] Module=lock Name=Lock -Description=Lock and unlock +Description=Monitor session activity and lock state Icon=valent-lock-plugin-symbolic Builtin=true Embedded=valent_lock_plugin_register_types diff --git a/src/plugins/mpris/mpris.plugin.desktop.in b/src/plugins/mpris/mpris.plugin.desktop.in index 7321a2fd50e..45c4ee25546 100644 --- a/src/plugins/mpris/mpris.plugin.desktop.in +++ b/src/plugins/mpris/mpris.plugin.desktop.in @@ -4,7 +4,7 @@ [Plugin] Module=mpris Name=MPRIS -Description=Share control of MPRISv2 players +Description=Share control of media players Icon=valent-mpris-plugin-symbolic Builtin=true Embedded=valent_mpris_plugin_register_types diff --git a/tests/meson.build b/tests/meson.build index 4929e50e723..2bb604e06e4 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -108,7 +108,31 @@ test('Validate GSchema files', find_program('glib-compile-schemas'), is_parallel: false, ) +# Help Tests +yelp_check = find_program('yelp-check', required: false) + +if yelp_check.found() + help_path = join_paths(meson.project_source_root(), 'help', 'C') + help_tests = [ + # See: https://gitlab.gnome.org/GNOME/yelp-tools/-/merge_requests/11 + # 'hrefs', + 'ids', + 'links', + 'media', + 'orphans', + 'validate', + ] + + foreach test : help_tests + test('yelp-check @0@'.format(test), yelp_check, + args: [test, help_path], + suite: ['help'], + ) + endforeach +endif + +# Uninstalled Tests subdir('fixtures') subdir('libvalent') subdir('plugins')