From 163e03e4e6e2d2bb70177c4bbbd38beb4c064525 Mon Sep 17 00:00:00 2001 From: Jens Tirsvad Nielsen Date: Wed, 14 Oct 2026 19:38:40 +0800 Subject: [PATCH] Publish the wiki in English, Danish and Bahasa Malaysia --- Development-da.md | 47 ++++++++++++++++++++++++++++++++ Development-ms.md | 47 ++++++++++++++++++++++++++++++++ Development.md | 47 ++++++++++++++++++++++++++++++++ Home-da.md | 23 ++++++++++++++++ Home-ms.md | 23 ++++++++++++++++ Install-da.md | 57 +++++++++++++++++++++++++++++++++++++++ Install-ms.md | 57 +++++++++++++++++++++++++++++++++++++++ Install.md | 57 +++++++++++++++++++++++++++++++++++++++ Usage-da.md | 31 +++++++++++++++++++++ Usage-ms.md | 31 +++++++++++++++++++++ Usage.md | 31 +++++++++++++++++++++ _Sidebar.md | 24 +++++++++++++++++ images/retry-invalid.png | Bin 0 -> 19212 bytes images/spell-word.png | Bin 0 -> 15519 bytes 14 files changed, 475 insertions(+) create mode 100644 Development-da.md create mode 100644 Development-ms.md create mode 100644 Development.md create mode 100644 Home-da.md create mode 100644 Home-ms.md create mode 100644 Install-da.md create mode 100644 Install-ms.md create mode 100644 Install.md create mode 100644 Usage-da.md create mode 100644 Usage-ms.md create mode 100644 Usage.md create mode 100644 _Sidebar.md create mode 100644 images/retry-invalid.png create mode 100644 images/spell-word.png diff --git a/Development-da.md b/Development-da.md new file mode 100644 index 0000000..735c36e --- /dev/null +++ b/Development-da.md @@ -0,0 +1,47 @@ +# Udvikling + +🌐 [English](Development) · **Dansk** · [Bahasa Melayu](Development-ms) + +Sæt projektet op først ([Installation](Install-da)). Udvidelsen `dev` installerer pytest, ruff, mypy og import-linter. + +## Kør testene + +```bash +python -m pytest +``` + +## Kør de kontroller, CI kører + +```bash +python -m ruff check . +python -m mypy +lint-imports +``` + +## Byg kildedokumentationen + +```bash +doxygen Doxyfile +``` + +Åbn `build/html/index.html`. Installér Doxygen fra [doxygen.nl](https://www.doxygen.nl/) eller din pakkehåndtering. + +## Sådan virker exception handling + +`spell_word` (i `domain/spelling.py`) slår hvert bogstav op i ordbogen i en `try`-blok. Et tegn, der ikke findes i alfabetet, giver en `KeyError`, som `except`-blokken gør til en `InvalidWordError`. `generate_phonetic` (i `application/phonetic.py`) fanger fejlen, beder brugeren skrive kun bogstaver og spørger igen, indtil ordet er gyldigt. + +## Kodens opbygning + +| Mappe | Indhold | +| --- | --- | +| `src/nato_phonetic_alphabet/domain/` | Staveregelen, uden input og output | +| `src/nato_phonetic_alphabet/application/` | Use casen og dens porte | +| `src/nato_phonetic_alphabet/adapters/` | CSV-læseren og konsollen | +| `src/nato_phonetic_alphabet/constants.py` | Alle programmets konstanter | +| `tests/` | pytest-tests, som spejler `src/` | + +Afhængigheder peger indad: adapters kender applikationen, applikationen kender domænet. import-linter håndhæver det. + +## Pull requests + +Én gren og én pull request pr. milepæl; CI skal være grøn. Projektet følger SQA- og QC-frameworket i `framework/`; se `docs/` for planen og review-optegnelserne. diff --git a/Development-ms.md b/Development-ms.md new file mode 100644 index 0000000..abc50f1 --- /dev/null +++ b/Development-ms.md @@ -0,0 +1,47 @@ +# Pembangunan + +🌐 [English](Development) · [Dansk](Development-da) · **Bahasa Melayu** + +Sediakan projek dahulu ([Pemasangan](Install-ms)). Pilihan tambahan `dev` memasang pytest, ruff, mypy dan import-linter. + +## Jalankan ujian + +```bash +python -m pytest +``` + +## Jalankan semakan yang dijalankan oleh CI + +```bash +python -m ruff check . +python -m mypy +lint-imports +``` + +## Bina dokumentasi sumber + +```bash +doxygen Doxyfile +``` + +Buka `build/html/index.html`. Pasang Doxygen dari [doxygen.nl](https://www.doxygen.nl/) atau pengurus pakej anda. + +## Cara pengendalian pengecualian berfungsi + +`spell_word` (dalam `domain/spelling.py`) mencari setiap huruf dalam kamus di dalam blok `try`. Aksara yang tiada dalam abjad menimbulkan `KeyError`, yang ditukar oleh blok `except` kepada `InvalidWordError`. `generate_phonetic` (dalam `application/phonetic.py`) menangkap ralat itu, meminta pengguna memasukkan huruf sahaja dan bertanya semula sehingga perkataan itu sah. + +## Susun atur kod + +| Folder | Kandungan | +| --- | --- | +| `src/nato_phonetic_alphabet/domain/` | Peraturan ejaan, tanpa input dan output | +| `src/nato_phonetic_alphabet/application/` | Kes guna dan portnya | +| `src/nato_phonetic_alphabet/adapters/` | Pembaca CSV dan konsol | +| `src/nato_phonetic_alphabet/constants.py` | Semua pemalar program | +| `tests/` | Ujian pytest, mencerminkan `src/` | + +Kebergantungan menghala ke dalam: adapter mengenali aplikasi, aplikasi mengenali domain. import-linter menguatkuasakannya. + +## Pull request + +Satu cabang dan satu pull request bagi setiap milestone; CI mesti hijau. Projek ini mengikut rangka kerja SQA dan QC dalam `framework/`; lihat `docs/` untuk pelan dan rekod semakan. diff --git a/Development.md b/Development.md new file mode 100644 index 0000000..93209cc --- /dev/null +++ b/Development.md @@ -0,0 +1,47 @@ +# Development + +🌐 **English** · [Dansk](Development-da) · [Bahasa Melayu](Development-ms) + +Set up the project first ([Install](Install)). The `dev` extra installs pytest, ruff, mypy and import-linter. + +## Run the tests + +```bash +python -m pytest +``` + +## Run the checks that CI runs + +```bash +python -m ruff check . +python -m mypy +lint-imports +``` + +## Build the source documentation + +```bash +doxygen Doxyfile +``` + +Open `build/html/index.html`. Install Doxygen from [doxygen.nl](https://www.doxygen.nl/) or your package manager. + +## How the exception handling works + +`spell_word` (in `domain/spelling.py`) looks every letter up in the dictionary inside a `try` block. A character that is not in the alphabet raises a `KeyError`, which the `except` block turns into an `InvalidWordError`. `generate_phonetic` (in `application/phonetic.py`) catches that error, tells the user to enter letters only and asks again until the word is valid. + +## Code layout + +| Folder | Content | +| --- | --- | +| `src/nato_phonetic_alphabet/domain/` | The spelling rule, with no input or output | +| `src/nato_phonetic_alphabet/application/` | The use case and its ports | +| `src/nato_phonetic_alphabet/adapters/` | The CSV reader and the console | +| `src/nato_phonetic_alphabet/constants.py` | Every literal of the program | +| `tests/` | pytest tests, mirroring `src/` | + +Dependencies point inward: adapters know the application, the application knows the domain. import-linter enforces it. + +## Pull requests + +One branch and one pull request per milestone; CI must be green. The project follows the SQA and QC framework in `framework/`; see `docs/` for the plan and the review records. diff --git a/Home-da.md b/Home-da.md new file mode 100644 index 0000000..b24e4bc --- /dev/null +++ b/Home-da.md @@ -0,0 +1,23 @@ +# Det fonetiske NATO-alfabet + +🌐 [English](Home) · **Dansk** · [Bahasa Melayu](Home-ms) + +Et konsolprogram, der staver et ord med det fonetiske NATO-alfabet. Det er opgaven fra dag 30 i Udemys "100 Days of Code: The Complete Python Pro Bootcamp" og viser exception handling: input, der ikke er et bogstav, fanges med `try` og `except` i stedet for at få programmet til at gå ned. Det kræver Python 3.13 eller nyere og har ingen runtime-afhængigheder. + +![Programmet staver ordet Hello](images/spell-word.png) + +| Side | Læs den, når du vil | +| --- | --- | +| [Installation](Install-da) | Oprette et lokalt `.venv` og installere projektet på Windows, Linux eller macOS | +| [Brug](Usage-da) | Køre programmet og læse dets output | +| [Udvikling](Development-da) | Køre testene og kontrollerne og bygge kildedokumentationen | + +## Hvem det er til + +- **Kursister**, der vil have en læsbar løsning med opgavens funktionsnavne (`load_nato_dict`, `generate_phonetic`) at sammenligne med deres egen. +- **GitHub-besøgende**, der vil se et lille, testet Python-projekt uden runtime-afhængigheder. + +## Links + +- [Repository](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet) +- [Fejl og ønsker](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet/issues) diff --git a/Home-ms.md b/Home-ms.md new file mode 100644 index 0000000..e08ac37 --- /dev/null +++ b/Home-ms.md @@ -0,0 +1,23 @@ +# Abjad fonetik NATO + +🌐 [English](Home) · [Dansk](Home-da) · **Bahasa Melayu** + +Alat konsol yang mengeja satu perkataan dengan abjad fonetik NATO. Ia ialah tugasan hari ke-30 dalam "100 Days of Code: The Complete Python Pro Bootcamp" di Udemy dan menunjukkan pengendalian pengecualian (exception handling): input yang bukan huruf ditangkap dengan `try` dan `except` dan bukannya menyebabkan program terhenti. Ia memerlukan Python 3.13 atau lebih baharu dan tidak mempunyai kebergantungan masa jalan. + +![Alat mengeja perkataan Hello](images/spell-word.png) + +| Halaman | Baca apabila anda mahu | +| --- | --- | +| [Pemasangan](Install-ms) | Mencipta `.venv` setempat dan memasang projek di Windows, Linux atau macOS | +| [Penggunaan](Usage-ms) | Menjalankan program dan membaca outputnya | +| [Pembangunan](Development-ms) | Menjalankan ujian dan semakan serta membina dokumentasi sumber | + +## Untuk siapa + +- **Peserta kursus** yang mahukan penyelesaian yang mudah dibaca dengan nama fungsi tugasan (`load_nato_dict`, `generate_phonetic`) untuk dibandingkan dengan penyelesaian sendiri. +- **Pelawat GitHub** yang mahukan projek Python kecil yang diuji tanpa kebergantungan masa jalan. + +## Pautan + +- [Repositori](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet) +- [Penjejak isu](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet/issues) diff --git a/Install-da.md b/Install-da.md new file mode 100644 index 0000000..8b0538b --- /dev/null +++ b/Install-da.md @@ -0,0 +1,57 @@ +# Installation + +🌐 [English](Install) · **Dansk** · [Bahasa Melayu](Install-ms) + +## Det skal du bruge + +- Python 3.13 eller nyere med modulet `venv` +- Git + +## Trin + +Alle systemer gør de samme fire ting: klon repository'et, opret et virtuelt miljø kaldet `.venv`, opgradér pip og installér projektet. + +### Windows PowerShell + +```powershell +git clone https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet.git +cd 030-nato-phonetic-alphabet +py -3.13 -m venv .venv +.\.venv\Scripts\Activate.ps1 +python -m pip install --upgrade pip +python -m pip install -e ".[dev]" +``` + +Hvis PowerShell afviser aktiveringsscriptet, så kør først `Set-ExecutionPolicy -Scope Process RemoteSigned`. Det gælder kun for det vindue. + +### Linux Debian + +```bash +sudo apt install git python3 python3-venv +git clone https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet.git +cd 030-nato-phonetic-alphabet +python3 -m venv .venv +source .venv/bin/activate +python -m pip install --upgrade pip +python -m pip install -e ".[dev]" +``` + +### macOS + +```bash +brew install python@3.13 git +git clone https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet.git +cd 030-nato-phonetic-alphabet +python3.13 -m venv .venv +source .venv/bin/activate +python -m pip install --upgrade pip +python -m pip install -e ".[dev]" +``` + +## Tjek at det virker + +```bash +python -m nato_phonetic_alphabet +``` + +Skriv et ord. Du skal se dets kodeord. Næste side: [Brug](Usage-da). diff --git a/Install-ms.md b/Install-ms.md new file mode 100644 index 0000000..c8003cc --- /dev/null +++ b/Install-ms.md @@ -0,0 +1,57 @@ +# Pemasangan + +🌐 [English](Install) · [Dansk](Install-da) · **Bahasa Melayu** + +## Apa yang diperlukan + +- Python 3.13 atau lebih baharu dengan modul `venv` +- Git + +## Langkah + +Semua sistem melakukan empat perkara yang sama: klon repositori, cipta persekitaran maya bernama `.venv`, naik taraf pip dan pasang projek. + +### Windows PowerShell + +```powershell +git clone https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet.git +cd 030-nato-phonetic-alphabet +py -3.13 -m venv .venv +.\.venv\Scripts\Activate.ps1 +python -m pip install --upgrade pip +python -m pip install -e ".[dev]" +``` + +Jika PowerShell enggan menjalankan skrip pengaktifan, jalankan `Set-ExecutionPolicy -Scope Process RemoteSigned` dahulu. Ia hanya terpakai pada tetingkap itu. + +### Linux Debian + +```bash +sudo apt install git python3 python3-venv +git clone https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet.git +cd 030-nato-phonetic-alphabet +python3 -m venv .venv +source .venv/bin/activate +python -m pip install --upgrade pip +python -m pip install -e ".[dev]" +``` + +### macOS + +```bash +brew install python@3.13 git +git clone https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet.git +cd 030-nato-phonetic-alphabet +python3.13 -m venv .venv +source .venv/bin/activate +python -m pip install --upgrade pip +python -m pip install -e ".[dev]" +``` + +## Semak ia berfungsi + +```bash +python -m nato_phonetic_alphabet +``` + +Masukkan satu perkataan. Anda akan melihat kata kodnya. Seterusnya: [Penggunaan](Usage-ms). diff --git a/Install.md b/Install.md new file mode 100644 index 0000000..8932fd7 --- /dev/null +++ b/Install.md @@ -0,0 +1,57 @@ +# Install + +🌐 **English** · [Dansk](Install-da) · [Bahasa Melayu](Install-ms) + +## What you need + +- Python 3.13 or newer with the `venv` module +- Git + +## Steps + +Every system does the same four things: clone the repository, create a virtual environment called `.venv`, upgrade pip, install the project. + +### Windows PowerShell + +```powershell +git clone https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet.git +cd 030-nato-phonetic-alphabet +py -3.13 -m venv .venv +.\.venv\Scripts\Activate.ps1 +python -m pip install --upgrade pip +python -m pip install -e ".[dev]" +``` + +If PowerShell refuses to run the activation script, run `Set-ExecutionPolicy -Scope Process RemoteSigned` first. It only applies to that window. + +### Linux Debian + +```bash +sudo apt install git python3 python3-venv +git clone https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet.git +cd 030-nato-phonetic-alphabet +python3 -m venv .venv +source .venv/bin/activate +python -m pip install --upgrade pip +python -m pip install -e ".[dev]" +``` + +### macOS + +```bash +brew install python@3.13 git +git clone https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet.git +cd 030-nato-phonetic-alphabet +python3.13 -m venv .venv +source .venv/bin/activate +python -m pip install --upgrade pip +python -m pip install -e ".[dev]" +``` + +## Check that it works + +```bash +python -m nato_phonetic_alphabet +``` + +Enter a word. You should see its code words. Next: [Usage](Usage). diff --git a/Usage-da.md b/Usage-da.md new file mode 100644 index 0000000..3fdc97a --- /dev/null +++ b/Usage-da.md @@ -0,0 +1,31 @@ +# Brug + +🌐 [English](Usage) · **Dansk** · [Bahasa Melayu](Usage-ms) + +Aktivér det virtuelle miljø (se [Installation](Install-da)), og start programmet: + +```bash +python -m nato_phonetic_alphabet +``` + +Den installerede kommando gør det samme: + +```bash +nato-phonetic-alphabet +``` + +## Stav et ord + +Programmet spørger efter et ord og skriver NATO-kodeordet for hvert bogstav i rækkefølge. Store og små bogstaver giver samme resultat. + +![Programmet staver ordet Hello](images/spell-word.png) + +## Ugyldigt input + +Et ciffer, et mellemrum eller et tegn er ikke et bogstav. Programmet siger det og spørger igen. + +![Et ord med et ciffer afvises, derefter staves et gyldigt ord](images/retry-invalid.png) + +## Tryk Ctrl+C eller Ctrl+D + +Afslutter du inputtet (Ctrl+D på Linux og macOS, Ctrl+Z og Enter på Windows) eller trykker Ctrl+C, lukker programmet stille. diff --git a/Usage-ms.md b/Usage-ms.md new file mode 100644 index 0000000..48c746f --- /dev/null +++ b/Usage-ms.md @@ -0,0 +1,31 @@ +# Penggunaan + +🌐 [English](Usage) · [Dansk](Usage-da) · **Bahasa Melayu** + +Aktifkan persekitaran maya (lihat [Pemasangan](Install-ms)), kemudian mulakan program: + +```bash +python -m nato_phonetic_alphabet +``` + +Arahan yang dipasang melakukan perkara yang sama: + +```bash +nato-phonetic-alphabet +``` + +## Eja satu perkataan + +Program meminta satu perkataan dan mencetak kata kod NATO bagi setiap huruf mengikut urutan. Huruf besar dan huruf kecil memberi keputusan yang sama. + +![Alat mengeja perkataan Hello](images/spell-word.png) + +## Input tidak sah + +Angka, ruang atau tanda baca bukan huruf. Program memberitahu perkara itu dan bertanya semula. + +![Perkataan dengan angka ditolak, kemudian perkataan yang sah dieja](images/retry-invalid.png) + +## Tekan Ctrl+C atau Ctrl+D + +Menamatkan input (Ctrl+D di Linux dan macOS, Ctrl+Z kemudian Enter di Windows) atau menekan Ctrl+C menutup program dengan senyap. diff --git a/Usage.md b/Usage.md new file mode 100644 index 0000000..7e696f1 --- /dev/null +++ b/Usage.md @@ -0,0 +1,31 @@ +# Usage + +🌐 **English** · [Dansk](Usage-da) · [Bahasa Melayu](Usage-ms) + +Activate the virtual environment (see [Install](Install)), then start the program: + +```bash +python -m nato_phonetic_alphabet +``` + +The installed command does the same: + +```bash +nato-phonetic-alphabet +``` + +## Spell a word + +The program asks for a word and prints the NATO code word of each letter, in order. Upper and lower case give the same result. + +![The tool spelling the word Hello](images/spell-word.png) + +## Invalid input + +A digit, a space or a punctuation mark is not a letter. The program says so and asks again. + +![A word with a digit is rejected, then a valid word is spelled](images/retry-invalid.png) + +## Press Ctrl+C or Ctrl+D + +Ending the input (Ctrl+D on Linux and macOS, Ctrl+Z then Enter on Windows) or pressing Ctrl+C closes the program quietly. diff --git a/_Sidebar.md b/_Sidebar.md new file mode 100644 index 0000000..f889c64 --- /dev/null +++ b/_Sidebar.md @@ -0,0 +1,24 @@ +**NATO phonetic alphabet** + +- [Home](Home) +- [Install](Install) +- [Usage](Usage) +- [Development](Development) + +**Dansk** + +- [Hjem](Home-da) +- [Installation](Install-da) +- [Brug](Usage-da) +- [Udvikling](Development-da) + +**Bahasa Melayu** + +- [Utama](Home-ms) +- [Pemasangan](Install-ms) +- [Penggunaan](Usage-ms) +- [Pembangunan](Development-ms) + +**Links** + +- [Repository](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/030-nato-phonetic-alphabet) diff --git a/images/retry-invalid.png b/images/retry-invalid.png new file mode 100644 index 0000000000000000000000000000000000000000..eecc21b8389dd6af68f615a6aba4d2724cc1a88d GIT binary patch literal 19212 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 M1SJIW_+GvHUwu^=a{vGU literal 0 HcmV?d00001 diff --git a/images/spell-word.png b/images/spell-word.png new file mode 100644 index 0000000000000000000000000000000000000000..67d815da0beb633c194b7140323efec6ac4b844e GIT binary patch literal 15519 zcmeHubzIf&wk8&Wk|IhY7Tw(f(%l`BN_U4Sf;573NlJIOAT6MD3DOPH4YRhtbM8HN z=AM~zXXf*nf5t!9!ruEE@4MEsp7lKI>n|rGihhgW77`K?y13YL1tg@a-;t26sG(ei zzwGmA%^@N27>hp_P;yS#_=&1^S2dOG*Fewkvr?;kimr!LEL68p-U!I4U&nrgd?(>b z>Ki71g925p&BUNKv;cn$MtPg>dMtGQf?8KmH>n@eJr5JUjx9i-{?Ws%=F}^F@nHJe zIE!TQaeW_8>}rmp^5L!J#nnKxVU~8#H+(PGBPq=Cj-e@3qNa} zObiV>N?uh}AfvS|Ci1#fgogG_)w|i**{yI(_FZu9<)t7i?_S*_xhi`2{Q2{kxVSrl z8X6i@)YOU!3UoSk6nFf^F2kdvli{lo5fLFFAqfdYWb;;Dr+#5#j~=Ckg@sv6RFs#Mq1kIAPgz?8f3em+T0;76fI{@sacwyN?M=)QH5$5TLL#DX z#-*}}T*4=+&z?1X^~b>^;*itQ`nI%tdc6KNtfJzeqUp3B`g}{^9B63~5)w))DcR|QGZ*S)G_Y4!RdH~0Z%sE&!@tqds=U1Q zUtiundGf>uizJlY<7Ch6a1;0beW!v*vB$2L=ZD0^#0&HD{R0D-q)2!aLw6t{En%dZzs{3dvcQ{ByOzdE9Z)$34IaL=M6C;Ka%kS0jaX8GjlXv-U zT-;%>Zfbv_s9!0rvXZVw+PoFX} zGV+jEO;*{EdYu)+0%t3JcIHXS&(EK4kb0^pB=oj@PM-NE?AOJ9p%?DGdm)7EbSx}N z53sZvJrk+2Gcxu&$&-orJ$cyK*;!av7#J9+r~Hi3|Ni~*IQg=(v$NW9V;q9@ zu@_Dpqk)KoMAuTXSHb7cmGEacux6#DgG+&c{^n#gyVcZWiP7!&o{RO;K6vZSojbO6 zc7cI`uzT4}U-TFf5)$Zi8zv_w-79{6q*PQX(5f~a%IS4FoE}DOf+@X|(;>BL!P(a3 zMPX8s&hzJA(?mlR6ck+Dby)GN}hQmBNe{S66iaWIUvmsq|w`gheg9+JHt+QVVkBGowB}hq26GAC2 zDjF>{3C+pL@%2TH=uE%r7au=yyt@PdlwA+2XJBGN&KDgX-tT?w=Ec!mDCF(w;Z`UK zZ=8m%x_Y(4+OSpQc|}IX6BZWx^OJqJ$=Ujnk`m9e?RH;Z-_NqiQIV1UTZs>y*N zAybE5us+QAhptDzXF~Ze)HF3UH8kR)qS#z^3{B4=+%jbnCCPT3u`UrBm?Tk!J8n<7cpIPC5Y82%#?7~rK=QQlZ>HqW7KGaSwLWDbSaAbtsr_Om> zux_z6@IKtQgoFfK8Wj~4%{{Z#!R+el>VZsYYD&simX-wt1uAlK-vkWW3n<6kn4Pe5>S=yh3HShzLQ;+HKwTg&5v<^Aj#Z(ILD^~vPwP_A21 zwBf?q>grd4)!szz+xO|pN=s{P7rMU1G8byss_4=y(*Lzq`;s$+hpXF90Do9nSme5g zhK2^m+_YQ--xm~Y0x0(M^o*IaMI4`uAS1seJD1bevBl)du!@fkp_ljYIG>%Jt*EH5 z+!%VhxS=itNyJW4ba_d8Z4Z?vqn}-;!Cl!nb#b8?tiS&bO*e#YfKu6H>tN~v+6+rF~$lH#@JYxdxSU z(&%+PGwiIU=EU|~`*edxZFh4$kLsnIs;Wup7|p%zsi~>q;e++D(pl+|LS1$Sh9gK6 zC^?cpBeAHdsd4IPGYg8f*X$EciklBBkFA_0CJpGVF7mD9Quq?0Qm94FrZ zxIH{PR136V5j1pkJZHb6ZnFrjri6ENhzW{mXpGOc2F}gRWlKXgTAG`m{cgc5FE7u& zGIVrwWVh5S&iNrE1jB(sP)tbZT4+1B^KZRqoUM#xv*VowHa0e;;>NQDdY`a~N-HlY zdHw7^zV!F+)^xU#Y`2nuzLwDxG4j6eGse$h8$G4f@M{ku8-~ho@tq4x!csF z52P(0bIDrFi`La2>1<^0l}X3w8)dV%Qf-SpgC?wDy8uCre^CLl&G8ZsVs zD;D;5ckB%2?lF}-MokZXAuccf1Cph!ZSixmC&6+Jkhz{pC3BK{V)#p8lpmf`AYPw* zC~8^D2(o)%fhM`tczKbhUMe9e*?4}SxjJO>-S1#y;;?NWKx;PMspT8Db0?C}N>soo zA+sp`G|TwU%J@b`_$nM3E%~z&mr3B}1#M*SSZb}8WQJYEvvGI>PvsGUMk4)ubNHW; z%j+2M-Y4R#H{s>0xiPa-E-!3khlJ z1`3gO5lYNmcee$xTKV$<(%+l*!yJXE0p`NYTd3D;4}MKhw_e(vOqO59yS{X|hqRaE z9(p*BEK{t$@Qk*SwUV_ii{7iLo5Q(r(5|Kh;bd;^i5Pne_42*0VWlb zZkT}a8`6=TmQItmGG)V+81~w}Y-Q=|8)3-#qKTSn?{M@M%D8*3#nzR)Sybzx zOmR#z#*@~5<@9P}%Lgm>ff+9EP~8Bhy68pL(oiR5S8x%r(I&IJ?V$}Hj_4@C)TFKY zcdBJ0X(YW4Y=7h$WF&?%5svY=qexEN=#le_AFUZ&bNgA51P0|OWS9+&6LKoDDA;AU z0_gZDYtEkAibg%{Hr(WJ5DE@7^D@gZUEg$}z4~;_W6@dv%Zs@&v)=Nk~_2yK<$IR^hj7EGuP0YMEO}T#gml0erO?6&ZVuHYbgngVDnm zqED7c*>*{+HqBDfzql&PMOMri3#&{|YUqc`?Q)ktwoz|R|C9}DT^eG5P1Zh}|L z61gT}x`RV%MC|e4PS?q0jo^O~#g3L#kWr0~fa@`ZjbGsZCOj72tEE)cFUXx8=-4WSJ!sPDL{AeTD1 zQc_UM#otxB%X3*Cc1mt`Am)(Cqo}SqHaIZJZHevX6E}~ol{%T(0A*x4$ZsH6<<)VTh#-z#Xw?3*~^h3RXmB#XD7mWXCS@MYVM z8c*R&I`%~OR}*)P%JFV)damWg#+ytO#HBEbL}WK9{ZLN))$TCOt1BZPvPTSeckFjR z{!}AtwG?iRMY_y_&*3}Mz=v~``t`gi_VOTym=gQA^YK^+&?)Bt&zGi1c>0fsZsi1M zWR5GUjxsL9^cCPLP;YHXGRJV)=H*hhyBhZTf2&jEv^vATTsM8uzoTpH#cMUy=w9gI zDPLE+zDI6{*duqZ!tw^A)vlGrhI=^tMG|AKkyznQRGNKVO`|Ny?5|K!mCGtR(G)l zpVF89U>frLpc8j5Q9)5D-#E+ibOis=hKRb~nD(^2y!&S0kwGce<+e*dU$#q5B3@u=YxcS$88Nh1BHs2^tkBTmOLtJ! z=@a&VxZLc?+OCb+GX?lS_9o1v{`3vwI0zx<>`+%J(nHGQhQi8@_1wgwMtRgaZb*&fqNpb%}a_%fgzH`TetmT zjwEDW+|zN~SbDnr^Wd5QxWreNbz}K&_ex4#rw5sa1-d9tQUD9YdS|jcRCedxJ$q&G z!w2|p2h*sb6q( z;9|GG*2TP_I~}Ybrwo}%EAI02ctY9C!^}wLUCQ}O;fio)k1tj(v&kmmqRZ5>^tg2w zjR%T6^+&GigXhQ2{nXheuNWu|b4W&>iNAf)p!jGmg13ZS$*QK7luL5pdEggAdy-f^ zyBciLjI{9Ch}}@5x z7I#Sxm75lsKJd^Q91do*Ua^(o`AF2a>{SzWl62}Gd+XbmVL9TO_)RW`sS2-YUIpp% zZ}$#ntMhdnRkq@5+8y*d7+XIt`(+}(PGN5*!@=&npd5Ip7ao`5>PH*brcvtjO>tPI zp=|TeM75UJPbj=iObmHmO=jg~3Syc9i zY}RHTw;NNGM+9{RgavpsRph0`L(RU+>GWBh9LBxSt1G;r=zaX_)UBGFl&#V94yv$$ zwzP?bLqzeDSEgCLKWT-N2U8mIbPV!_87nzfbg6hR0$e?A=@65B{r+Y72mP2&Z*OX0 zwwuaLX#?7Qd4h~rt>?poNDNXs7Mlkf?#zYTIVa|T_d4nV-BRrU>4l%e%Ny@WnSY$a zE4;SFybvp%^4T?tt*mW@;#JXnBrb=dXpOl8Ioi(SWBxX=9hs$jbM4T$Y;4y+s^1+8s3-c2Z$3XxN|)tw zl9N%PKJ=Qm*RA=Z+=OMB;WVpK^v`n@4|%`vcww}sEe^GQUp`_7n73Bqt{to1C4_j%JqN*BVZ#3zarQ8J%7|B&Fb%(W!NYSRnAfO zS-Hql*Rr%->?CdKdAeBr)mN6Qucm&A9s@%0+Mc`=Ivu&hDRkd=^}OI^3i@ps9a9zT zwiU>^<-zEu@o4^b?NGSKkes$-<=y(imN{n5xkcGuQp79OeX6$S8SgLg5+eFB02*Lb zzCP)xYm0XYCigKUcCj{5y~R4gwUNwD%-$RKt3C2;z_J9>*?vr2dpHGhWbVFHyJ9+z z8?Sd}C}hf1BzDMcv+!HtB&;8YZcq616vk26QIWWNZJB=;@5E0#6Y-pRcQ&n(uxc~@ z$=El*=b=FEFXb=YwY8So8mDf4+&%dYw6gTPFBtHTt&SblKOE2Q_|6C9-RC{hq;lvp z^Frr5o}ZjsRF!UKd%;_{IrD+v^Y*zg&r5zD9+_|Tr`o0#Ho;-^=FalTZaXv8$|nDK z+iyQ9|32*+h~-Zo;meKMah;rU7nbKY>&xdlJsU2K8ovkEvasf4`qMd5cc?N^*i6w$ z-ES$o50W&`bEl-dVSoDb5uNgxo=hVvE7BgJ?}s02H!1xnRz2P?@$qWLJ>3{)dfWMX zaw!*>&+b`EBDr-F!hM(OVjO?%k<>MFFXt8;Tg$Pr4YUZ)e&u5xfh-`u22T3lh_R4Jdk3Tr z3}UY5w9tzmpPtgI73s})d|+i|1=(P%(n=SEg?WoaQqQBA(PD#{nHf4dIyB_DorP{) zuX6`U$-tm}7IyZ--QCjia?q3Vb8>2&wsg$R&DGUoX-*5&OO3Z@TS0~fT_Jo8%mvTW zjml)N3zwzdL?0}+c;dTvS=@$4DTIZ>!+qMtYnc#Ky%b#Fv$q!=H$Why(=%LCB_21=Tn; zH5G*8ukR50uNtYBmzR;z0&I9#NE4Z)?w)TD;*z&!6{*0H2@fSn&&+hB(0lR1W^2?FU2fgKe;;(LKK{$e)>aT-KlUxTxw>|FqTaZ11H|wBg9Arf+nvKh zSy@?9X5%2x!QHG?(ip) zAp53eXXD?y_jFF#+0~Vclam+p*oCf0hzb%C601N(a@izvQ&TRR+3PEOI5-g)+MJe? z9NQ}Rr>X3Q<`f`W1ibX3VWXs6+48z{b8$KDj;7Bh^%)E`QFnHBMtRqaPRKUDxL8qE zb{7}dV!TZJ0oJz|Mxhe0YShKVI$#kX)0p5NGjsM8Wc+;f(#5@%fxnbS&{9xQQ3nf0 zO4c{R6EV8dZ#UL6~0i_-y;Qjmepyp?0W}cm$!I=gJ2RXR7BxE8ZZE=;j z^K={eczNsLp5c=qG6nCC)w@*&21-gvp{N75FUCYpFg|P1K z?oQ_Sl3CuH?~GvQyEl>Fu*^6{2*#*ys<#)7Nthy{Jum=}k&$6nc}Qd*V9B8_T5x9O=SxSGGQ@ssYZGD0J57~ESgpwU z-k3y#M}9durc1gny1TmCLWm`U%LeQn0Z?w-cvn?b6+tfB;JPnCaTgX0(y7bSXLeQ} zlw5A^+V%DIyu7^d@H?WSqM$*pdP=}gA)ywq3ze0WzNQFBO9yu^L`6q;bGTHbrZ$g` z!WPF;(UX&pT++{_*3zG(rvSWtCpc1#S5;EN5^Qd62C<&&tR^8myxEYc(rTK|sOv6U zymb4RI?X+@d2lfRW8ls}bA_PV8paL?3`9pqPfSd-`dK540)|9XZEdZ$_Z3zHrN?(N z($hh2eJ&yr7aLowMq_8Uo0UZYN9&1-6c!Od4s1Qy8<0h8g_KlkS{fW=TFtgK02kz7 ztqODe6*K!oXp`=OIyZrhu}T>^RX2V%UTy{&chUw|o!=Y;LnAljLK(lfaWcqaa z^o$Gu6AMex{FP0iBrp#F^Gc0-xZIBzShI})Cm()ThJ97?j){qZ+fl^)_5P5Gg5rH( zV8r&_?d|Qrd$g{N#N~^S>41&r$7<%$9y9CfM7X$5bhd^2L}1L@ z;igb)Lt|sh$tp%_>fGIFg_+%BKyYxHT@TjPb?ett-a?dsybg%5dwd4>_O-peP@_CY zQ}mMvlc|{*SUsp@hg;KDmX^j0c!RXy1%jTM-7cGxn>#T+?#wgw;gKk8jA3%rHi+C{ z`G92yt_pZ*kZHP}#~FR3fsqBIC#ip3(7l$9j+dX-5aqUI5-tv2n~MGgpZxEo_Fs@P zFE-v{@>N;Syh%a(lj&#b#AD=-4D&E zWsV9Q`FlI*pRZoK#(%!2XbM|(4E7Cpt4A|_q)Cu<$oT(Qx-Tq@!o$NwLP-)oejIF6 z27T3;e2>RkOutyoU>y8npLg$gU3PrXos`z1 z>+1nv#KgoTBm&~%#shGvPqHlG0}N7oJt(4zii$Eay(jx?^g4AM0JNRbf+-9S9_T@+ zaB*>kf<<0!XCfmL;!GXigK_It960?A4W1Sj8&Jdy3=AYCCA0G(QgT%b4N4rNsfuBGU|@%z27lo4TX=0h=_%iRZ>C%)+2<3m+I~ir4qqn7QAGNI^U5W}6f^}z(d@EhvyKiL2{y*OS1ICNAO|BEr5gBbyK z_iao}CmWj=40vGEU7V~HLU}i=y9FQNzdY`PD#*yfl9!!b4K6pB9Z;pY?`jt7w}P(` zO3Yp1b?G@4M+)F5{Ojnjczz*P%GkglZN3Y<;?4+i#ctRcZpU@CvX}CTia2D?!9WBL z2dcxM3K&;VA8+3D3kw5-pPa85=miZ8O_mYBC>V+~T2*0OSIG>4pTISwM1kRTes%_c z7e%Yt26GUrHQ#!A8c#R5;f>WaFha2grnD8U0uX7 zKjIxfd8XQNBw(OEgY(uYxAj7e<8uD}z^^5RuQ!>$v96AXjZLL3_h>ed-nb|3Ny9Ce z5&&WWd4|z?c76^ekpJwr5M;`0r!`7ka77^H3mZ;=TW$g{g~vaYO>&1q4Mr+Jeoos4*Kx)L$91dzP{+}+qOhMXSP)z5+C-iFZMTg`7`UW}u_>O!l zgnfnin4rhH^>s{4%oMq*7cIUyIaGpTU=w9Z$0sBvntY4-5El0A7W((PLdA7vw!ZS6Ls~Qm=ZrErAWvqqM zI!~uw!?r(TJw__?s4)@Be5Y+#CGQH=IqIk-*!hoq_KZc|?>*}1$4E43+q2+Cx&Ef4 zgbBkhEhEE7U;hpPf$OiPE5J*DszWkkp`4_b*3{h+?0}I9Ac8zRJX+e?=M%)7w)3@H z4G{}RP&Epq2sWa?X$9nlK*-6;dhdk+%+RKKa%abOJ3(#*cHs{pI*_CkK@ZEy$>};8 z6!BA(VP0Qs3f%d zbBW33mw%+yI&M7lf#ra<*lM)sg*>-Sr{ZUsPPIzcsPmGY#3%LP|3hb)~a(Z7JJO)vXdSZxvmhc`o)mRq W7g!<8#d14ahM$4`LCK{c6QS~?uUt}*vB=}XGjtSl%h3hP^1 zT38T%{@lKb`;h^+m_V>0j0V7jjY1j|7|&?PZ)-C8$rFbblnwuk1YK;mlhW%pn46iw zR0*f!`Y810ty}0gEe6HV9%K9??RpmShjwva{g)l#f0=#FcVa~&=z)xs6wFn1zg9u; zwG(@vN1U9;uusG)AZ~DQa#m}$Z}08~hK9n71aAQYJMb(!OE*e|^^y$-Bsma>f+Q{(mRD%aM8yhr?AF*cV=1OhmL~J^N zqy|QV?QggIoy=4nDAe?{*Oxap9*Kq^xB`sEGkeC=sXnVx=17I&n%qAG+c`(7Sv}9srRBk@T#Fs3q*$VYTkKqOe4h~MI z-*XC}l7r1KlmfEDz`#J`@nU>x>O<&w8ex=T4iLmWtD*S<*ynSjasmHjR3A1H%G^W$g(euowWo9q)&k>|VIQ|3t zqWkO};cLLL@l+y2U@Hg-2%gF$WTmF|kB*AvD=8|@*;X$sEWm2ahClr9o&bA=XAx=^ z8}O~wVKnLe>!7`n@ideDQ!v~7P1O(ZDJZ6<76Zd|ekp+;Ki+*BQ4P`yrDEnU<#af= z(0vH)EEBh<prez~*48e0CLr(ykqZVSgYhDV8x!O%yTWHA z7|_0sj*g<@JhkW8uW?u_(5aU|v2k<^2?$u#ss!8x%9Lv|0>uZ0GAJWKR`K)kN#J%W zfIc@rKe&AkO2uQKM@$x2f}ljOTTaGAMk<4BH-qBN2U6h;h z0||e|DjV_o-^~F3%h~lGM~DCMYiMgtAowA)8#6QR*A8%w*Paii=Xhaw69&MBUCtpH zA@xRUH6UV}ir#2KtAoVwUX+6Z0eq##(xl3W9P|A=g&aa>!;t`-_vX!;&K6k$`{ics*5J@kb|}n%CcE#5!}OAlPEwWB%a@3bH`@rvDuPyPlx1aS`(uHE z_P2aA&Ha!0m{$HLCEj24OG`5_HO-kPaC37r^@f56S`ifSwqQaK2kEJ(m_X?`IJk#$ zJ$wNqDFpMiYBK`9>9WQ$YyY|3`M!N`8z5boHZKeQTgR0>~5%m{W%xU_IDx#yIWl2MB1Lw!a#)hARn}lrU z??XeK?ClL1@E{2qx}ZyJ`X0k#YHTcm!s&HUHy;$->v_JfYU91SYAX2t&6}(Lo|f+< z2tNV?fvIh{N49v{Y7)4bsUPk7FjQp+4Gwe7_XRDMl+1K!kAyB-3>r<0QS zCn6dl4QytgLlkUF065V_138oFp@OJ>?Zj(6+33|+T>N8f%w=P|+@LK8hKZRN8U5eC z$KrQ*m?-vGLR|dE_wVn6f>@ZD4T{yE_Q=c2o3n9qa>h28B5niASwi^CbQcKH^71l> zX*8zfbk?hbl=zq=I5^B6C-$d~vyq@V!suUp-XEY%KD18YwDWDByMc@h3RRI>9&9wT zNiVEtchxC?wvZq~<^kzw)Z7tTybQ@`m^maMBz*M;sP|}nKYWlUCA|Z8`ip-iv=XBE zZ`p+Or0v!^N!jl;-I64fhV^~>PvBhsJEDT{T!Bo`inR^@{ z2tlcUjw|CnG`)Y#cdqtSBQ{_;e9O;{$Z7x7)a)ESp6tR@z}?Fx*@S;M(!OaQAl+3{pfD=TenOtElEb>5c{WB zouNN1)3r+pGl#n6ib_fed>$t`%DJ8=E94L^0NgnU^aQF0B1K|C0yLRW*MKnsp%pSK zN8FcMu(hF~Auud%4h}5A-Xz}ms3>C?cSV6UOfqe6(U9}bnc298>wcy~s=~pm_`qlpknV?vp*$X4q z_Xru|pQ(=+_VtKQ;N8Hu7buM4a`%BrY0g!ZV)*y5j1}txcbrDY5x;0__ z2k-9`9-4}xaJud-!yvXHr!CAJ!M!~%cKmtUvCqz`CQ#V9BqDB8fdpweV4%h#MVZ1*mk9W^|?%zZ$UH$~{g#ZSc zW;Ql@j7#h5>i!B=QSC@5Y6NCM8wiiwR@Sj2z$@B;=b zaqis7(g!R6D+PcV${}!w!_A+8!NIiD)M@2^n8KcAwiq@EiKT^wGzuyjS^~q1H!w;~ zW(XMkStjw$t#>|QpikLx5alrVwSX!$Yg-Lj0JQd+rX5@q9!;gv`h>U(Un>ygTt}FW zg=YwK%T0%5`OhJXGPASAaS;+$jYBRp3eej(HhQ_bp2RR3fa~-(N|%cr0*Q2VOd{z7MMDr>vw3fkX~CF;Njytc+ta$U(YZ#BjU5=+W)T4`M(rj=iN$~16wsp z4E=$G`L#f|44S(NYzjPXG_8yYC-=REK=8f;B?X0Xc(edG!h9EuUxSpm?Oex~gQ#zH z6O~F3ipH;A#loWq;0}Vm*3{Irw`UKm17v~2SLkpXzqE;GftARqy}__;}Xqqs0KbpgbYJwE+YN8Knm9WF#1{0_hr;pTX=`f9ShG z`kE~hKza4@WtH=GYG`QayLZA861T|a1L+%LSk3O01NR>J`BPh6o%7*C!MZ?Do1LaT zJ{J_oc(5=s9?wU}_QNzas3fdli^5F(Ak%+Lmf5$kx5PZoa$4pf>HyOQ(#2cL0@r{? z<81&UkWUySualatnwl62BLl;yr!IBy{0HbP#SmiM1H@Z+ zgA_OwtTME-a{_;}vssI7 z1gt3#lO8^NQ{xv7$~`eLtvaZjtg{Qi5PW>DLyp2ZJDH$Gq*lrMv{?#e2b>L%0{7Qz z;7od0H!w_neU4P#$7E(cB}*?Z{%~@%5UmT(Il(hQXXNl;4cOrd3gJgOsAOM3e#5dw zc;7(2pk%&%`?gxE0P&E^@gijb1naCiu}|3V-@lWz5$KLq@LB1Pgc5!zN&(R4gSB1u z9oF#Z_}F8&haG4DDCnTQwt&X_kd6i@F$(xBR@{NG;ZjoH;3*8Sy{DoO3`p^dK4`0ODeLO*5csuxBLuoy=#s#o2I;p8pj|+~+jZ)>xHu&l zSqeOLMv#nva@g5|0=kG!^Or9_Wqve$`BLs?^*>XEUO+j=)hkx>34><@fGH5*;W@jx zf!0vBRX_~4gnXXcla`hS3s_#h4{p#`>e7-D3?hzav|xs+Z#+JPrR(bG_!I^GA@C-4 z^U#92I5LeN(z8J*bwy8)RHnXe9*BT z1#3d=e)#YKR6=GZrqo;TL>Mo0c{`C>kn}U#&fvX43r%wmB%5Ve^yA~>!Qro8pF_aG z7zBpjF4TQkDy=H(7w`Z^eS;~S5bvRvB%;ZCCgQw@$libDnazJ}y#A||{J%bp|NqbS mcZ&aS56%9+TN13AbN)?bER{Zv6*7nxBynMx=LLd#Z~hxY(-nIF literal 0 HcmV?d00001