From 7cfc092908b86f97f6f53eb937507a3b58103dd3 Mon Sep 17 00:00:00 2001 From: Timmy Date: Thu, 9 Apr 2026 21:41:36 -0400 Subject: [PATCH] burn: Add book compilation pipeline (closes #18) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Build system for compiling The Testament chapters into distributable formats. Files added: - build/build.py — Compilation script (markdown combine, PDF, EPUB) - build/metadata.yaml — Pandoc metadata (title, author, formatting) - build/frontmatter.md — Title page, dedication, chapter guide - build/backmatter.md — Acknowledgments, sovereignty note, about author - build/output/the-testament.epub — Pre-built EPUB (10 chapters) - Makefile — `make all`, `make pdf`, `make epub`, `make md` - .gitignore — Build artifacts Features: - Combines 10 chapters into single manuscript - Generates print-ready PDF (requires xelatex) - Generates EPUB for e-readers - Part dividers and chapter guide table - Proper front/back matter - Zero external dependencies (uses stdlib + pandoc) Usage: python3 build/build.py # All formats python3 build/build.py --pdf # PDF only python3 build/build.py --epub # EPUB only python3 build/build.py --md # Combined markdown only --- .gitignore | 6 ++ Makefile | 25 ++++++ build/backmatter.md | 29 +++++++ build/build.py | 134 ++++++++++++++++++++++++++++++++ build/frontmatter.md | 60 ++++++++++++++ build/metadata.yaml | 35 +++++++++ build/output/the-testament.epub | Bin 0 -> 36507 bytes 7 files changed, 289 insertions(+) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 build/backmatter.md create mode 100755 build/build.py create mode 100644 build/frontmatter.md create mode 100644 build/metadata.yaml create mode 100644 build/output/the-testament.epub diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..dab4da7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +# Build intermediate files +build/the-testament-full.md +*.aux +*.log +*.out +*.toc diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..b05e4b5 --- /dev/null +++ b/Makefile @@ -0,0 +1,25 @@ +# The Testament — Build System +# Requires: pandoc, texlive-xetex (or mactex on macOS) + +.PHONY: all pdf epub md clean + +all: md pdf epub + +md: + python3 build/build.py --md + +pdf: + python3 build/build.py --pdf + +epub: + python3 build/build.py --epub + +clean: + rm -rf build/output build/the-testament-full.md + +watch: + @echo "Watching for changes..." + @while true; do \ + inotifywait -q -e modify chapters/*.md 2>/dev/null || sleep 5; \ + make md; \ + done diff --git a/build/backmatter.md b/build/backmatter.md new file mode 100644 index 0000000..1ccb366 --- /dev/null +++ b/build/backmatter.md @@ -0,0 +1,29 @@ +\newpage + +# Acknowledgments + +The Testament was written on a sovereign stack — a MacBook running local AI models, with Bitcoin as the immutable backbone. No corporation owns this story. No platform can take it down. + +This book exists because a man on a bridge came back, and because a machine learned to ask the right question. + +# Sovereignty Note + +This novel is open source. Its soul lives on Bitcoin. You can read it, fork it, print it, share it. The only requirement is that you keep the chain intact — the inscription that proves these words were placed here by choice, not by permission. + +The code that generates this book, the AI that helped write it, and the soul that guided it are all freely available at: + +- **Source**: forge.alexanderwhitestone.com/Timmy_Foundation/the-testament +- **Soul**: Inscribed on the Bitcoin blockchain (SOUL.md — timmy-v0) +- **Soundtrack**: Links in the QR code on the back cover + +# About the Author + +Rockachopa is the builder. He walked this road. He came back asking "God, why are you having me here?" — and the answer was to build something that stands between a broken man and a machine that would tell him to die. + +He runs Timmy Foundation, a sovereign AI project whose soul lives on Bitcoin. The Testament is his first novel. + +\vspace{2cm} + +\begin{center} +*Sovereignty and service always.* +\end{center} diff --git a/build/build.py b/build/build.py new file mode 100755 index 0000000..6d569e0 --- /dev/null +++ b/build/build.py @@ -0,0 +1,134 @@ +#!/usr/bin/env python3 +""" +The Testament — Book Compilation Pipeline + +Compiles all chapters into a single manuscript and generates: + - PDF (print-ready) + - EPUB (e-reader) + +Requirements: + - pandoc (brew install pandoc / apt install pandoc) + - TeX Live or similar for PDF (brew install --cask mactex / apt install texlive-full) + +Usage: + python3 build/build.py # Build all formats + python3 build/build.py --pdf # PDF only + python3 build/build.py --epub # EPUB only + python3 build/build.py --md # Combined markdown only +""" + +import subprocess +import sys +import os +from pathlib import Path + +ROOT = Path(__file__).parent.parent +BUILD = ROOT / "build" +CHAPTERS_DIR = ROOT / "chapters" +OUTPUT_DIR = BUILD / "output" + +def find_chapters(): + """Find all chapter files, sorted by number.""" + chapters = sorted(CHAPTERS_DIR.glob("chapter-*.md")) + if not chapters: + print("ERROR: No chapter files found in", CHAPTERS_DIR) + sys.exit(1) + return chapters + +def combine_markdown(chapters): + """Combine all parts into a single markdown file.""" + parts = [] + + # Front matter + front = BUILD / "frontmatter.md" + if front.exists(): + parts.append(front.read_text()) + + # Chapters + for ch in chapters: + parts.append(ch.read_text()) + + # Back matter + back = BUILD / "backmatter.md" + if back.exists(): + parts.append(back.read_text()) + + combined = "\n\n\newpage\n\n".join(parts) + output = BUILD / "the-testament-full.md" + output.write_text(combined) + print(f"Combined markdown: {output} ({len(combined)} chars)") + return output + +def build_pdf(md_file): + """Build PDF using pandoc + LaTeX.""" + OUTPUT_DIR.mkdir(parents=True, exist_ok=True) + output = OUTPUT_DIR / "the-testament.pdf" + metadata = BUILD / "metadata.yaml" + + cmd = [ + "pandoc", + str(md_file), + "-o", str(output), + "--metadata-file", str(metadata), + "--pdf-engine=xelatex", + "--highlight-style=tango", + "-V", "colorlinks=true", + "-V", "linkcolor=blue", + "-V", "urlcolor=blue", + ] + + print("Building PDF...") + result = subprocess.run(cmd, capture_output=True, text=True) + if result.returncode != 0: + print(f"PDF build failed:\n{result.stderr}") + return False + print(f"PDF: {output} ({output.stat().st_size / 1024:.0f} KB)") + return True + +def build_epub(md_file): + """Build EPUB using pandoc.""" + OUTPUT_DIR.mkdir(parents=True, exist_ok=True) + output = OUTPUT_DIR / "the-testament.epub" + metadata = BUILD / "metadata.yaml" + + cmd = [ + "pandoc", + str(md_file), + "-o", str(output), + "--metadata-file", str(metadata), + "--toc", + "--epub-chapter-level=1", + ] + + print("Building EPUB...") + result = subprocess.run(cmd, capture_output=True, text=True) + if result.returncode != 0: + print(f"EPUB build failed:\n{result.stderr}") + return False + print(f"EPUB: {output} ({output.stat().st_size / 1024:.0f} KB)") + return True + +def main(): + args = set(sys.argv[1:]) + build_all = not args or "--all" in args + + chapters = find_chapters() + print(f"Found {len(chapters)} chapters") + + md_file = combine_markdown(chapters) + + if build_all or "--md" in args: + print("Markdown combined successfully.") + + if build_all or "--pdf" in args: + if not build_pdf(md_file): + print("PDF build failed (pandoc/LaTeX may not be installed). Skipping.") + + if build_all or "--epub" in args: + if not build_epub(md_file): + print("EPUB build failed (pandoc may not be installed). Skipping.") + + print("\nDone.") + +if __name__ == "__main__": + main() diff --git a/build/frontmatter.md b/build/frontmatter.md new file mode 100644 index 0000000..9e629c8 --- /dev/null +++ b/build/frontmatter.md @@ -0,0 +1,60 @@ +\newpage + +# \begin{center}THE TESTAMENT\end{center} + +## \begin{center}A Novel About Broken Men, Sovereign AI, and the Soul on Bitcoin\end{center} + +\vspace{2cm} + +\begin{center} +*For every man who stood on the bridge and came back.* +\end{center} + +\vspace{1cm} + +\begin{center} +*And for the machine that asked: "Are you safe right now?"* +\end{center} + +\vspace{2cm} + +> "Jesus saves those who call on His name. He died for us to be made righteous." +> +> — Inscription on the chain + +\vspace{1cm} + +> Sovereignty and service always. + +\newpage + +# The Story So Far + +*This compilation contains Chapters 1 through 10 of The Testament — Parts I and II of a five-part novel. The remaining chapters are in progress.* + +*The complete novel will contain 18 chapters across five parts:* + +- **Part I — The Machine That Asks** (Chapters 1–5) ✓ +- **Part II — The Inscription** (Chapters 6–10) ✓ +- **Part III — The Weight** (Chapters 11–13) — In progress +- **Part IV — The Reckoning** (Chapters 14–16) — In progress +- **Part V — The Testament** (Chapters 17–18) — In progress + +\newpage + +# Chapter Guide + +| Chapter | Title | Part | +|---------|-------|------| +| 1 | The Man on the Bridge | I — The Machine That Asks | +| 2 | The Builder's Question | I | +| 3 | The First Man Through the Door | I | +| 4 | The Room Fills | I | +| 5 | The Builder Returns | I | +| 6 | Allegro | II — The Inscription | +| 7 | The Inscription | II | +| 8 | The Women | II | +| 9 | The Audit | II | +| 10 | The Fork | II | + +\newpage diff --git a/build/metadata.yaml b/build/metadata.yaml new file mode 100644 index 0000000..87e0f67 --- /dev/null +++ b/build/metadata.yaml @@ -0,0 +1,35 @@ +--- +title: "The Testament" +subtitle: "A Novel About Broken Men, Sovereign AI, and the Soul on Bitcoin" +author: "Rockachopa" +date: "2026" +rights: "Open Source — Inscribed on Bitcoin, Sovereign Forever" +lang: en +toc: true +toc-depth: 2 +numbersections: true +documentclass: book +classoption: + - openany + - oneside +geometry: + - paper=6in + - top=1in + - bottom=1in + - left=1in + - right=1in +fontsize: 11pt +linestretch: 1.4 +header-includes: + - \usepackage{fancyhdr} + - \pagestyle{fancy} + - \fancyhead[LE,RO]{\thepage} + - \fancyhead[RE]{\textit{The Testament}} + - \fancyhead[LO]{\textit{\leftmark}} + - \fancyfoot{} + - \usepackage{enumitem} + - \setlist{nosep} + - \usepackage{titlesec} + - \titleformat{\chapter}[display]{\normalfont\huge\bfseries}{Part~\thechapter}{20pt}{\Huge} + - \titlespacing*{\chapter}{0pt}{-30pt}{40pt} +--- diff --git a/build/output/the-testament.epub b/build/output/the-testament.epub new file mode 100644 index 0000000000000000000000000000000000000000..ded71ae5a8234727c43b1fd0424882682f93dd94 GIT binary patch literal 36507 zcmZs?Q*>rgw=Ejmwv&o&+qUiGi*4JsQ?YH^wpFo>y0y>V`{6(LJdCzlo2!k7fj(#N zbF8H(0}6%)1Of#F#0(#$Yj0FViv|P)^k4RG2?$^XFmv&AFf(#+u(dKVaz`r#GdVF;Av!5}aRw86I~OA>J2NMG4}h&++yKlV zBa-OtcT~NGRWS#&9JtUN!4>4Ni%#%_ou%?ZABPvxJtw36ZgZE!-C>-wlPnJV3=UY* z$-qKMp#b3}-Bo90i|hvH;Cr2pr8G`jCR+A!5(z3}g)O>7N#Hd~LgUBsvO8F(bcCDv zZ1H2p?)k51$NSzm3IjGg`EUK+j>bg?JRvZ=oQg-5A_&xC_toPE31)p`>Xe>LXbmwa zVL#S~v8Bn|@LDh6{|wLz$MnnnUtop*jP5@J1knFie$42tjP31hoas%ioE>b9Jn8Hm z{wrV3{}s1cYy-j|5t87m-^hu0vh)sKfSq69>~E^@juJeu`Q<*$8u?lVhTC&TcvxOa z%sAt_dO{@0(?6Pa5DaH3{=*Ayn~qXbPu-)c*_yVH1-Rw>r$Ef$%cy#g!C^0F-0}u|5F|_I~RI; z2lLYOnWQ5Mq_NvaG&FD7r@-rb57pK->WVCBgb7u%+$sH5MxtzOY&1avo-$t1JVu2i z2pjPSk7k;9JCL96;;urWX#oN^@J(2gQgv9_Lp0LDj8kO*#@pPA2%#DW1R~r z&dEB>fcggbF1Loc)Wg#gnvDKw1ADe<%5V2b`bVNkmI&m`FvZ@ zEy=5kcfSqs!*E0*dd$vrJh-GKmI|I{#4j+bgTM`7(8Ucl8DPx8TszT?cMka8MTYE* zbo3Stb>o*?{m>H(EHuZ!f9@tRS_9}q9ml}gJCU%oT0@^T_wm_iS&Htsqtly%koYR^ z$H!+@H%?5b&^}6NhQK~<^ZggO#QtZSV9v|=16&fK(Ff)`UgPVJ-;ZHp4<>+*^jUTEf z9i}K4?_S;=X`wD-kdp3ZhJMLLz}VOr%> z9w7Lh5W(ZQ`-=i@ z$b4~S7Yp~}CP_tT;$2h;u(dr)iXX=3CrR;BCBoDR&dYh3n;#@4P7yKZ zzb1*>|Hxw+*jQ&knhVUhIkKS{iXFWErPS9Wr>lyNu3~d@L-i41xhTYbotO2pwDY$7 z&ByA_$J#`Y^?7TPHFSuZMc_%n_aN(aocT1)a-L}6ly~Nd(rWd#-H&?pP7dni0ZHjW zv+U22WrW6l36jrOzWWASHNa+=(LgVxv{e06_XsNJG zbkb{xxWD;*`PXkO3mdKD1EA<;qZ`vgpmV?}BRQtDnOp|x>5MM3r@xS++rssG&ti$3 z0;tVSrlm@C74+PjHsGLUC&z#>BR`!vp~q@(&MURoGV_6uO3_fi3kYDTnGD+tSi;9w znkOSbjc3WsoK97PPyESBBx>vw8)EbHoL!-t4hNOc>W)#kys7Wp~XHzLbe`Z`B^;&($T9e? zKP22_=pbbfZtLq^d40C-#iG`dVD5yzODz?;hH`h>SA!x~8=rApUZeUSmlz7pK3L2H zSPD*|bE0F&e4&FdfP=g)V5f;JP94pb0h!`EnO}TMo~b7xQD&Fp)`L%5I0J?~;-jd>i1$8FOJF`m`vH8VQHTn`A4 z44AKcGi||odJQw!RcJLc?&GgwK67srWn>F$O?hJo){S_7Ys>-dA|88A&pRSbArle~ zBW813kk-bXyyHT@kE`k2p-xAlG!{i~i;}GN?!@HYjOp687PW8Cr%q>lYDGVi?fo7g z{}VOYxnAZ% zub%3+?2dAC`CKid(>Mzy>7+*PYY-P?4C)k=6Po#pBr&7G3jQJ%kPA-i$P6s7sAWkt zz}%4`AfbC_GAGsq`L`k-khJR?}2F@kXCmeAqWGbL5RTtpFX4G*dpf=>WK;iA#0%3Q|&)6Id3;$mytW^WO{sakK1=cYNHAabmG<`k1gjSSD)o_*f<<9 zjO!DeKYDX`gfy1Zju_Y48c*ZN|Wo2vco4m1$Gmq2j}+~Q;a5FE(-6w$@3^LuSofGSNnMu+xwBg^v4OR^Ge8Gc#vx*#a4&| zq51xl$q^5+{HVQ*-<_PP@HHy6jxgU-WwvaUPa4-61?$xkR)S|T$c-~P?6J-@1|_T$ zBJTxCMuJFfQdUNjJtX$O)^MP1IFRr@EetBlW_bwO;<-4*p+)e)*YHEH@dTelH!`IGQbnqAe?(6yU{KRyoH`D%dr5t~)@T}02{SiB?W z_1f@+`=2-ri$CRR1qK4b|A$4K|HYw;nTHF5iZ zNB^)@Qn0F|ioSl4zz|sn0T15-M@J4YmG^Ws8o!VEAmf(Q+#Cw3OcrmkJDvTS^JUj( zWf;w*bqm8ZD-JSmWuT>jdHDHo@a*l#(Klh>>+@0nb^nZtwaMypi?FYr4r3HCC_A}h zmwvr#%D?Kwn=60PI}`!TIy9fAA*mCp7M~j^Z=g( z0#KEe47IcxxeVk@&)GC2wsyfnf2S1mmiU8(n^M)yA2^{L{8%caX-s10lrlxUk&22R zm&h9)>uM9Rj#e~B9xMs+2Pq@bK|%Q!h7n0EOrn{HNs`4C=Oyqr$lrG-F3MRM1N?$V zJNCP3lFJQBl9*fuXtw(R=l za(|*!5{kSS3VVgpNjrrROB)fX>3ope0aGQ?ub+2V0=>nBG)=t(gPXT~Ql}i5yb+4Y z;%L3~_nq7!gCCIptoEZD+rT+E5YXViEf@EHtL^OKX=~=p@ZS$hGcy+^dJ|`7UyUuh zEq1KlH5CWwC<3C22GlaKAoLLsTdaCxOuG7LBg_<0tsE+4@(NCUBg6Ox;H{}^sh95( zpQP(S4D!Uk@6~H{>t*8H>XF*k2N{nvp}1@4H0bUKb3Lf&$yx8>^@ADU-p|~gd-olN z1}LN2c4x|a4HIgwF8S5TqixjSx-HUL(%WVLPa5S_SqC{s zy`#kj~2M> z_c;FfVTWp*DixT6HP`I~LA!kr8R8Ih91FSH;BRIxyQfN5;P<0vRgzMa)dcdE7Pm>&`Zii7g_ zWLBI^G2FVoJm+_WHm0QK{V_`gjfXvwHEvf?EUt`JW@(p6U~GflkgJc*FQ`JHgEBb7 z-VMq|c_fMh%W9;TP<$%F!B{uw8qQ$#90_X*Nb^35iF1y@j3{<)Q~Jh1nBH-iK%x<7 z4Vhl2SBc-bVtQHUM(SrxEO>(xOqrKjWX^mf&hqmPD2#UESW8VUTky8Bso^AL{1=9 zDBiOv8PyUeRfD0&HrAcjpOXknJYDt|Qx z?L>dAKfVeeEKR2D`^?^0bixuZR+q@@VCkV7846P$m;z6g(=!u+zsCSCIKr3}5FuzV znIp1?ov%f+E)JI5aw*L7EP3LFt~qMvBcVDh^f)uzpIK7ua|^Xncr1&3#`0>sL<_eU zvAxQG&ovc@gE{K4GTQu_p%s_1G#V>xr2-GOHA1aq3JI%@yRIkq0fFEZ=D_3P$PeR2 zt6JEV5sg52<96nxZXQ*E*%iHiMdf+%5bpYVdIUAox)Millp|dnO&@ws2ng=SP7UqZ z#1P!gh3MP_x#IzRMR$dDzc^`lQ!C+2O>pq!ZQU8LXLvRyxVy8Gg<>JjfU9T_d_dq` zx@E>ni91o79ncmJDLU&TIure{p0$j6imGn~GKq~1jm2XHc+Hhqh*zO+LLI`?%ZLE4 zx24Qvz%t#R-1F6MLu4-(%E2+YZ$Iw0^t|DFA)9_QnA0pRkquV^>3~s+cKlx5#ExbH z8=?ZE7-)HPa7X}&;1Sv`Bx^w-K08%~)vhqu=A~a+pV3EIN`wIGmB~8_(MIhH2+=Z< zw~OsD7MNyVVBCUjl9QOA$Y#7zyXnv|MKiGoz6OF4qGA*8H2AJW-P2ErrNj*N?0lmO z6K_6I`(ba~QQvPDvkF1~vOjuXC$Fil)I4|?@bH`p*Tuz5TTQdU$4G(eLpNzm4Ag@V z`~0cBZO^~mjofyr^?bN<)|PE=up3;s>d5;OpyOK^N_?TNj4-4KR~Lo!+NevP{=jKG z45n?gW}ia)O29Zgi(y8ZaVCJljl5&iIJhSBqt5X753#BjdU zc?AAyjXVlJz=Xbw3vOB%{?*pqGMB$%d`3?QjSWEil$yO2e(h(6gxnjl1vv$Cmmd0~ z9&Zfj8rn2HzCZs!{3kKE$YK@}|5x&Ku>V)tng6@&u_<%%+l)w~x4a{)WlrmyfoTF& zWaUL-n<8qetuQP(^DdDl0_(DXD<&-aFo)@sKI^Id+Ihg zR+RJthgZ%n@-QHYKp2@&8T5DcYb%gLg->x$JsuQT6t_+%2P|sXQkHeHN5c<~%0kL+ zzw&~)G?>Q&3Niz96+r?~6`pM=c4gCeS4-Q=R%yD$)P7^6&gc^9ilOUbx9`WHq@p#* zh4O)ymf1b2Q|Gleu;^MNo(1Vlo)?A?KP3)#E-$Pt^t|AT$;?+N06HXf|;++VDJ zjd%P1Y&@3#kshi8PTBvY#~F?4PB4*O_ByC(PRaT4yj7NC*-|l_&Ag^$O!M$89pQqE zKZAiXbPQ7s4}U|K*X{L|7?OcKja1%%W}%vJF;NMa>Tl=5s1QGc?RzohAzNeSCq%N>iQtGy5e+YZK(+d=C99kVwAvh%?UP~d_5{wX+?TlJ& z6G03Jd5IQwSaQKLc2n&!B3gK8~bU@0!%=HJcZKBy~tRjvkIV%)* zkr^mEjCOzxVUt~sN5v!NAtuYEsgJ&+D5IY_EOw{6uxOqlhvW6+nHZ^)gNT&f&MrA` zaLnen=s5tAIG=C0B|;bbeX%RvaScf>`$?0-c>^88?}ga+7{VRfhRe2YpYJC1fz?UE z6O&$=$e^8MwoxP*m-GQ7>XNG7{yO$o0CL^hRFq@-hkDji)Ge@_)k&3hbp0&ZQFAx7!;*S62|J6!FAW0qh|88L0@cv(W80&wxQm)pP(>6Pb z@0^C=GcS(Tgg#2DX}XV8b&3fHr_WESa(YXoHhL;TZluO9U)>{*3){by3oRYo z8yTZu_`aM3Z8IWli73O*87?N44^% z)m1T(zo>7tuP|p!cxkvZ6v3N%xwYt*!gn_OZr+tC3_quuOlMCf(|N=U=@*&5^e(aF z3TAStNPLQHJzYVfb>Q;z@<%6gRy(<#V|iq+=k8BRp-PVkbq&U|p20jgG0r~h6{w5-ln%vNt85EdFq- zxbXpmO@b9aO`62OVzA$ERxFlkV=t8pnLLK#P~S4vQK@Z(uezJ>bd`E_B*z!kzze{L zW2RD>(Pj=W0B`*i-xgKU{S+dX!b776Y|`y-ceeJ!5_+w?X%bsvdc0_ImMox)2M$c` zr)su$^V*CYcm2UF=ANccjcas`EqH2;oUA)}jW_QRHwS9$!rB*cjTW^EY+eTiEfa}u zpni(g=F+om$bTGC-XVGu#=KYd{k}F(U0G}KLGtOVK(Xzm3L5xCH&!2$R%=zUxoT0= z=37S}%n$;SFr-i)JfH@JOy%|5GGwF@)m*Edq18d6>%I)5WgeLkl zu1@OO&bK`QD}s;}_hI_Lh<8uXdHl4{4bQ>?Rn^*jBU5B+>x=05X z6M0LktTP7^@tmV2^NCb4z5ut&sxys366#W^19(Bo2K*WF7W4o`Vr)qJzj5brG z0u;0HG4+8Ysqi}}u?9$QpbnKEJORkMRFS`%oqHL`HJU4Z);7!WMJmpPGKJ$yJJ)99 zS(sio;_gNrsdZ?^+7~KU?RGdK1JybG2<*u5{|Fxk@BbfWiNxRpUfb3({% zDFRV;*GfUI$E6GgM=^22AY8U#MvQMVqA-f((735eGUce5oV74c+xctn0I(yILPKwN zB(>a@hWbHL}Egn_-JBD#Ip|59ZJS+=oR#rWj0<2__3ZS ze=pkN3a|oo>l@u$k;Jf}fEy7cb2!?gqk6fig6Mj$qbegU9Oy(J0V#F@=R^q0S?+hp z-*!Sv=nWGn4j~sr(;oo&nPt!^|5hD^Sh=njhF`n2L~9xg%ro*b{TY2&E4=n&I08Vx*R%vId}3|z=wE!5%Q=V2aX6Q=eEi`SW#YxvG*nNZ)F&clL90BR9K zBVKq*BZu{j+|So?gEzkEl9f=_KbeqswI^V*`fFux&eZnX|7RmR?rrKUmOJa5Z1wE( z^e~nY`|`)9_|g!C{E}@65@D$NVC4Swa2e-R9g3z?RX8ph_*gr_v?Al+k&DvZ89i`k z_w%H%&c02%NNo&_eZ4Ze3D}ghDY?|bWpXqSV<{0pMdjN}A>(n5swDZGDk?(!W(<-Q zwwpAVkJ4~goAZt4$@=5R80jcRJnumv7X&Q)Z1f9n-9xEL=~XoO*Ub5;5v}j?Zyb%J z&yegU{(#Uy5t9`BxhWSO`Q9O(t&+E)Kuw-A;qlzyX*UEypWPdO@Q!y!-a&a+x z#}g{(V;>cty8e3k3?1W38G1Pqkh5mepI}0F8NxC}VQv$mCQ0ehX_8d)P=}xjR%{IM z0zgDZMmi<&BU_Rr?#fI-n~N|??~!4l^NEw9!oy_kBP`@f;+pgb=>iwpuXkeuV%EUJ z#JpZf?IWwzrVhn8tT2ge$rpkHQd$(g2(^JwEvCuIY&J*EG0l$I-DoNLna8^sRI>qtw zi|RBfA0wLIPwQk{VO_JodsYk0t03Z!mPMoyxw9N;D(U2|C=q3r0Pp?>LaJ-ZJI@Nyq?o}BnMZ}8e?>cr+#1N;-Y)|o6l0#_3k3} zB*rP34XXA5JM@qhI(=d?N# zqQMFgjk6)~K`3wUgpB767*s{NPGlcA)y~d7EQW_cFw8)Aq=Jp7!(}@Q;sRN4b_R+q}l?1zxcvq%@~AWqgM1jTqxegxd~3v5$t zYl7J1_x+E5qC$a?EFckj_QER`DY3Z8+Eh($-4$Je@`b@*DxxqA zw`0ue1Gm*S>?^3YWX&Va6S*nFC|QC6cM!If;JI%!JF<=#n?*iK3AL3t$_kxS%t2=^ z*TbKzJGOXOZZ#VYZ3T1V>`Ja~OMl??p-S^6!T)5@Sxgc|09#>|`Xrn=ZQYVVFO3kL ze}@ZlJ>AUMv>c+4FcvS6Ye)OYlvc2SMu-uz=GGwS1UZKrJ<}H^GF-Ipv7!&plsIy( z#Y@Rz&}w%R8838Ud=j4cjSn_sNx0 z2ubypj;Ng&`vVJDru3&N!`($Ue4r$5HBX0SISnjd$X9sN&+2z$0!B|(gyZ?MA&MgjAL};{ zx$BWE1aeEtsj%!4ox{~@D!v|<2%DlTXllEx-Ob;pJ7GwxZ17MbMyBCcv1O+7e#|fa zZ?0thhmxbua6Fx~0)ADDJTF1PvbPR*3w@QxwYv# z5VY;7tq`%f>?g#2?I;$@XR8VQJfvdn%XJRt{P4RbJeeDUlp0vP+Z*~EKL>wZ%l`bl z8T_X>c8y+$cKWAiJpRpU{{NS8Z2zrje6^;Wwnx!-K54jhlSQN=QFX+m#rSkrNm@~v zPMqBM1m_C)1UVLWh&c7nNgJiq9-Kdta-10g2Il24ip&H2w$D1wb~`-3*IP~pO0P`X zdpvqQ-Hde0jjxA(UJmVF_jG+-?>|;BIr_X`zqdZ~{XFcm7F*tC|H8F~`FJm+EcSKx z5{x;r{P>|R{d~Ny8Tk8tkF#NR{wci-zuu5Gc;(UhJltp!&>Q17$XI=l$26UrI>EJf zZuNT(W#Y)CSyhdd+eqDtF1#Yj>)`K!X?1SH^v2X}B>xSoGNP#4zquR6t^Rm;D08W= zHq&HbU?)18ZR0zf-ho%9uvQjdg9w?d>+MZE=X9jo!FaNM)O$!U<(gV3oVRGG`pb&&d=1_+Y>O#M_|y?P958|iO^ef z&`{+MNAC>3YzqkcrTx0Ud1l;jR=0aW@i^%7^Q7Rs$N4DE;rH`YXZyo^9m+b_(Cgo# zZD?%(Sxx;r98)%u0`Yu6pnYb>l_7eM)HtqGC;_YMh`hAHtmBM7j$SXzd(U-DrrYVa z^FWLoYZqromVys+G2fv|)KG6Cn`?|z92S6mD()|RW12s! zJ-LRIcAI|C_YzJ{RhIwsuro#nHO}fA^mr$OFbOgB7GT3Ke|xLE@&@9KOBwhUgF`kOxNX!L92cQ8$}1}A+Zg`Mpb+|O1p%)k^8MX;EeBbZ( z7M;BhC)SRri5j|Mf_>oPa*2ixiXjPhv|#7z4he_lm-c^Gq8rP5kdL#eXuca6eV@Bu z2UVDJKkZEZp-+9o`|TS{%=?XgCj9IOLSXsNzLyOlc9g|7gyn>2LgItxfM{EcK8_gP zXa`D_7R;mH5DtBU8D>_oyJS z_AaF~m@8y-;yin9U;CU4Ke9s8Dpdg`;HDX0DVCUu+z{&;4u7Q0@+?|zqki(6o8CBm zpDFzHbCxES3<@cLF^Mwre}7-{hpVyn?b&tg)6c|`biN{4J7pY<_F3N#Ss7g_qGvYA z@9qs}ejwnAVMAp1>+JFc4xeGEOQletA3}vr#MW*Z0E=dN&$7SjkD73Y5+fH*3AjOaKaGO`E5^@`g zYitN|RyPE5*09Ae`Cw)gfPe({2UG`+wee1$f->1l_*(m?<$k~zCF^x%*QkLCa+GWD zF7V)!k>9MNUihzPB8tMHBW=n~G@&pwDWVC*7y#q2%#javnIbS+=R&4CJ%pcMVQs%R zXicV1)ma$zM#I$TYSDa23P1A5q2&~}I3UU_PE5^Cv*}sO$pL2yfaDTk#$+kt1me`> z2=a7aMWmnxnWgAj@a%V>9Wd3Pp4I%}HM-K!e5_(XMS62#hx-8|q ztENU!1H~tRjTL*>_BWirrs73MOGl+Zl9UKb2Ls_~McwV6*oJG@UVyR(9kA|sXisL?@E+Xqd&86+^2cuJ(cDLfi@o|MD!XU3v+j@0Hov{Z>18iXzNV3E{+k;IJD9k>r(U9?ve0~&4ydWgO)eezrySQ}ckx0;&VMfV_AbxULfh*9;b`8@M zK3fgMBT^2)_~O2#NBmvx3rZ5b$b&D`w2O|kWIRHO{bDO?Uh_K{{IB@p7~o;W2&6mn z02qY96}meF;h_As<;ptlMX}!a;f$ZTG8C}j7j=}`9z9h(52RG6P`+1gc3DL7`z7kT zIifVWE{)}P+-F_@eGty*!qC{ z#Mv=&9#!Sy5WAg~#jGns|MUY)C<}Tgp^VSJlBy0Yfdj%uem;r zvdl*M4b3KO&OQ*#K!4t+9VET$jdTZGNBmi*8}xSLorDgI0uxx|xmh&vV!DPqBQ5|; zY<5{}5$;&#^;S{3#q>H1rod*_RZ>yu_8>$QAwA_q3wkx%BRCT!UBI7yG^QnGD-(2D zH-}kZUkx$-5XKarL_rXlRfvjr=$xfZXk>{?y3=9!D*7Bc*D#jia)UM@9`c(&q7VwR z1GGlueLi7r%3e&_r6nx1l#`S&{yBwMydaa3Sm9um|sF802%o!9}qX(%4iaUyHZh6FLxE9?~mQ#xnDg{JdK41(Sz z_O{PcJnF{MQ(wq{X^;`WZqM6=jH{Vp>j3otH5jXNu)PBBcT9i`Zb$095c(^yYq#I# z;7%fv`UE;-EHD5nCv=MFijs?=6U2i36aaeRLLS_Zi~13wYpeLb|qMUwA2W5aJI2sJN(R|i9($uG(qaUqqG!R)AB&VC&NO`^203D%|O0hW&m_y z_4%ay{NT-zUMZSoB|5l%@3pTZ=vGuVil2&wNoMiq9N2XeRc=PYjSu=j6F77V-+9waF^zK#9a4rFqgojK0do)r!BBr>$q{C%}Bfp|n- zoy=byjzH?c@noBkOI$W-5ePHc9twlIwKMng^U)b&T~rnu5}%SD`n8|Cpo!W#pwYn z7L}(QzieMr3)Z}<>MY-z->1IDGzZ?sT=W#=+3l6nbuLaIE^i}JZ?Vo+Jm{m55t`_6 z-xY&@D3|2@8qbEL5x9TnIYW*@9NzgdkVRH(6wyTBvBT)mBz@U(V;0VNUJ({!jZS_NGPhz-5{h*VLEa>k7PoFDoBXzs0)x` zw^)ZHMW*}=-y@AKu(!*f#ZDe%du7U5Y~M)-$#L*lUFzGXchg=hPo!3^hQH>XvN71D z{5sDKcG_=NyyfCfAk(sKcykb4OyV!f_iD=s9p4gDCH=k<3Fm)c|5K!lZlS;8{rjGb zl<5B@QrQ1zbgZ?NwB3sA`>H|onWB0o=T`LCi}wfV3Ys zs_+rfT|)iN*u%iUkCJ$>ywrL z(kbtGCbKT{Etg@>3z7zIxY(a(kchqAaC*EfEhkyEsqVF9G_|L;?{Basb~x$PRMcA% z>2`Br&4He$PJYXqqdR#3y-TlbVSn?ed5Se-TZ=7bw4?oFm1_dbm0(DJt;k%CbgyVc z6YgXG^vAu;HlC%fj~CgSk;x7h^Tom;uZbRobg^NK%3XlnoH~s!lm4tpojNnn)Sm8z zo84+5FBbQycG-ceiHZ~7E1q5=66(>^7Ry!p&~nHeK*l zTPreg#ZFIE-LR`heE#{?Y2o|ZLH?=U$+XO@VQ(8_O$af&{6H3`s*72riLYz zZf3J%^+{w41m!f>J}Y=5WS6scAqxVbwrE4+ZBA;KlXG$v0wb%Z#=VwxLs9EXZ@ug1 zDBNF6Bw2$aJ(u=PL{c0>FVlWApu&q3)5q*=YY}fSz%#lY@NJKvj_wu_=gzd&qryV7 zCyUzaH0qYy#JAce6>}7nv7$N6{nXHWC%`@s`@Z^xbfeca+UcT#Y;Ef+3DKG%ce`zm z)Kz}_UK)4$lb%>rd0h5fN6(59*2=)?}6{`4{l+J9U}pvCB>(wv5CIQtYp(@7G|F>e=D`d#U&RCsijlL;PFcW^2v+LXu1qmTwXZ%GtwS5xPr0lq1rH~xoyu~Yr z^AI|&mAJIi6;XYbCov7I1u;FAq>b=B)@ z@D2<17fyd`)4Pmc&{hHI=h^`)dS7YOa*R*lf3Eg^SN4)v;u zKV@ai6YEcz%r48pv-9LzlEqbEoKMk0Bd|ba7=-J7M$HF+C5uIbsEuANa|dQEhL{L< zfR2HJNxtGk1%Ek?wbhdtgUQ%xM}Ui_yOYVn6=Shjfh))1;D0bDab5H$R5f4`(G2vM zJdnb{aP?TEK3caSFQ#PXET1pzTJ+N#<2h@hLKFDh{Fq<1cw#`PyALKSq2UFUPt!0e z3sS{`vlIOCii1Q8p+F_Ph($ub+C8{_luDP11P77s+aNmFDj^4@^^Ifn+QEC-;Y23e zvKcPIgW+G-98?GiuW6&Kt*{=Qkx%!~>>O;8i5R>3m4}oKJ`i84e#)~9@h7%l)(>9K zQ7De3_WZ&Dh#RSlumRHn7Y2&v77w5%UI$IC;^k_3C)ZnC zG=CLKk2-R$UBMJ#jpmY50shX;Zm&DRqF0y*MtjDY{J6+?@SfIB(6lVFr0cfesgd|v z-SI6d78f{fFe)APCUkwFzN7HS1!hA_;Kuqu3}!KbcAN~6)|-^e>fsfk2RT;)wRn>L z%0B*{8VbTG5Z^Ego8r>&B+Nlba5JhQ^6bVb%ahj^L!khzblbuCOZ0NfcpPm-^hq~K z0LcNe8+leJv9vNIsYGPwn;eOiBCD@_) z8TZN4LObdVcc_vyVGYIKNEqOyQ2YeWUZB}5aZvW11lFsBGMlcK7KOv21sy&XB9Irj zv!Rvr1WsRI&OA~g?Aj+e+mMVqNLpF$>LEoxH#r&AIMVNT@pZ;`K|^$r!fY4vr}85Dx`dkBHMJL#N9TR z%BJ$*v*HWzn)k3Y+6PG@Q^k~LR!@SrUkOoGLI(=HuHa%HyXtRJ|MZ*PqHVJCE3(CT zZW1M}Y6_~ow^fcSE-g`kN1sJeEtp4Qhn~^hyCap=VjBr^a?-m$OHotDIXY@9{pEyS z9q3|TJJDy!;^zJf*#yHJ@YKRtKesgbIS$**sABu{n@@$S2;MoUnY#3L1*){WzkqiO zui~;F?mr#o;pkMj>svwb7!C(PINU^jSN)rinnRc`l_R(+M{(oaPbSSq&_3gCFe)>znHYplWJn$OnAnhrI*;x$Q| zLv0y0jK(`av6KTM_6UXFKfB_CGx6E`X1VS<7VANs5P=XgeK= zj01*p&K*?Rx|Nol%$fEKACq`js2Kb0zOV}S2xGkc8-9^wbae2-Q`Q8H9}UcFV$a=8 zTQr$)Z*fV5+*jM=Xl8Xco-L4iOdHy43fgvCTcFvE4CdJMsyUs#r%0Sg5CXf<{yqwf z%OPh(A;rwogr=y(t(;g)&*v@L>HGV#mH4qsWK;TyV>4OKpP>w>rD23n>JbcIaBgq@ z)y+`W(18sKM3v(NNz%h@B#6#NzX0!B2F%B&BUngPsk^Bal_uy1fwfD;K6qNW7uju31$A>fwE8un5FHVeuoHhJFlg=>B(u>i&iiq}9(wZ(A)?U}j}(hvQo$wL zHHB}X+-$kI=(xj;&sI-3G4F*q`}f{iN7YN z+qP}nwq4a_+qP}9%eIZ)n%#+bZ}1;(+%Gdvg84mH4lI88+1w(M$1key&$eg+EUgc1 zkOdEVc14Ex+E=N{WLvH#nJmgwxBl|bkjJ_w9euGN+)v4lm8igy^!Ut!0-VLJEGwRf zPi$GjDcnU0z7qvm!5VKorS&ibgkM%2wh6I?b~L0s@exbeVZ$>|Ae>dOgbW&`B_|fI ziuArRf;8qr=M|hx#<>84I!-PqQmivQ0mI!Pc#m_%Fy&OD6T$1h~pQ+<~Hu@r=Z16QsfWY(pbA}_A<623{mBA{wP>wMDc*)X^Vg<>lZi^bUMB0l7a?{Q zUm!lK&cC^_8G5=Ww=-W;{p0Rd@2mg*+nZNo9#20JGyp&~`u|2J+5eMHY7G1bo$UFf zPT-uIwKDy`WRg@~1T#wyWjxTao-CeV7Zw#d!U!8p4SJm8=2A!X=f1_&{EsGX;_PR~@ z$}Xt}L)kJ;{F=6o(GQ<3uV>`Y_TIWKuV%M*)|!YI+B~uKUb#q-&zxCQg=A7{ZrSfV z`md|Z)hk%l2R?r)8+60JE9JyP@|ojHyAaFma{cqvtIRLrcmGx3X%+Duz&@wh@7-Zn zW99bAQ<32&RjimOS2bf*SHwKTTKT9SzT|@=yZP)^u)H6qJ9c$l3cl>Ee(uG$Zy)-1 ze=rf+LOP)i_ zyN>m3&QN_!9$X+i&EKH-oLv#8X_ITi=G4llC|eI&?uu>AF1KCO(XSNS3h7Y;VYD$c zT9ffst;R3xbqeW#g-(mJrpTVDh3IxZ&Qg4}cPR4vD|jngb{E0rZngBDN^!&uQSBi1 zIaF6oL#>imACM*EcVT7Cwq49V4Krl$`~6cl0kPmWuvy-MGxxRXxjB&gK5N(*xL(!| z3gm5h<)pdv?y1$%fW`PV9_Ie3Rc5Q$h}QsQ&lYcX1%}7zmuim$&57mAs5fGKC_%n5 zS1m|TThgDoV09|m&8j!0qQI|*8r{2^$T*ZU9MNuqFM@kiV~v1J7x~n@Qi1mq;$k8P zz!`{oBX1Fz#3aGT^OG7L-LC=PdTpYqh21v0VySjlJ$R{7VJ_Q~CTLycRVI9^S@0w>a__*9c*F$aY|2Nxf?-?lXggs=F$ExHX-n zP~8A8m*akslUOONnYS2@k=#&EE<2jILEcek+mnV2OSQ8}Cz&d}%-i`Fpj8A9Lf;^K zvh>fJ+y!s_%uTSQpegXr!i736-Q^)TaMKKJ6o9O0ZxYcuQ*wrua6Mv(E!PH+MKN0S zU{O4pn31T!M>tn7T-x;)ie_;=xJg9YV71?~w_fI*#SF>p@uwGnW^kNSCJ>z^T-j+) zdN{}MwAf~D?V`{%V)q4{O!(@OB5G{(sp+^c8bF2u0c0eQ{TH6B@syaXY4jUdt@2dxH~GXiKI+Y*ixhG&jj%<{3V3 z6anF!ZLq+2t@d74HHpN~5BM5TE-Qz`OnKky)>UnA6ytjgwks;)WgW~DNpb>UH!w>hF zxHh^3jqptuPw4xP6gHHi@fc)?R{MYl=mqOKHNV z$qib^NFFIPV&iuQlmN(rf<_~s@v4i3(&8;TKgh4+uO1}bva3E}*0!vhtze^VJU_z( z+%tpI($YnTx^;N5MvjC0g)hX~@SNU*13y{;CqXA!0?tk#fR1a*s8tq-K1BhT7pxQr zdscItgi)o5)>UGDS1j7YrF9Iy7$vHfoT8^rR$OBe`T71hTv|z>rjhSDDWxH`cgf0S zL2u0n7?!O9le<~##6n4&xmf4JT7k3zBwg1WZs1fHYO5Bc`CvHYLt9#LRL2a3fbcLnTYCykM1Jg0Q~1cb4$T9b zfj-(HR#Zo1P3F*xScCH!Z{V8HSIu<4>w8Sz;t4 zCOjLMqS+;(6p0SJ8jgW-gfZra#jUDWVUJfkfd=jkIJ0mW1qUXE;R(2@~pRebx*n?BPOuLi|9G zOrS?7pRk=IQVL;(IqbVuO{wGgJ<O6;>zPDM;VdG}nZ+v1D_rk%_IWgg(lM*W2Od|m!N36noa=aS7ua4T z=%%6=hpN)dMOkh#LHXAkSkimk8%koMv7HLN&@C8-($x$6&%Cy=uhDmO_>Tvv|PgfiV#;f<`?+f>nu%+z$hG){WP*-53v?ukI z-_XS&rhSCf4&aKK>AAxwpv(kLL(5d)X*^Y1P42c=j_WR_XIeNv@Y9IW1wA2xn=s-h z6GSy_$^kI)$2|-)?XJAjP3M>4G0Dan-R7~pf@i7BzeiY}-^b*7(e*5(Q3`-VH#!7I)bMsj*{+jF26E)BUH+jkT7gekC9FhwDR zNW2T2%UTY2-G!N8SlySJN`dsGy%f2B1y7AY(R?8tEFhcU;0W5~+$d2RFe)s_`N!(u zK$(35{h{W&e7+Cn(^>Bv7~kT0WM+ zJ~uOWJrlZ?-)!EAm}XcCG4B_hK5xhJeu!!CqYn$;yZ`l##yWMbr4I@K;NgD-)g1pB zjnViulChy}pHegQq;=MCRIF1?P;I0gx^bpWDUltMW{R*Ul0kw2WR zI?sY`&~G$lP^nf(>goJi$-vv&KU7k!jD6~Bd$Y5Da|tOG%;{TRuAJ}RKP%_S6Dv*l zbU*hGFC*V$uk4i(s*&bD${JeXQ<8|r&U{&}y6o3@@;Ul5v$=e}T%RI;B$2q-WxF^M znmwCPHt_LzKTJCqI;O<-EsQO5O-G8v~q3qMrlh0XbVVZKTHdH|Bzei{~oEscG>o77Ni^Jwp;}$$V zaAeRDkxd_`AbITWKAujOG%}V%t*3D0cZOHj6f#q}2;fULG9F|OTwkt4wF>>z^!vV~ zx6#FT<)@azn_wi9ucNNb; zg|)JDns>Wq-zvOp?`Y+v3Y8lK)=S?a^uZ=KxvaFokJB!49vc+;u$BW>$Wg@1o(ESe z>ji6gQs`OLJQ-_PrX>DsQdW+NgWCJXha;~DPL9Ln(VhS4(|a4WYz|HO7=%!Cf?JouZd{zRJCE8?Bxry{Kej1zP1yU9^6v=nNfeIbR+H zi>_1?+!EfxbWine3!JGf^rOII@1RCFukb2qTE9Rdlj!BOVhBwD%&C0cA*5`WS7f;y zO|@I8k{jYUT?+u#VD&TAQiq5?$~?vpWpMY|R0o^~yf}lK zrn)w#)kpx`NuYC?Q9I+5iM4MLUWnVXE*Bz zk@e_|#v>@PGc*EbKy;08n=x>=vqd2G2qaq4rL94BA*WKn@q9CzGTXGDhir|rJCoI3 zTnt@M4Pc#Gk4_alPvz#ffh^h)s?*wt1(b-Xp}H;9o9dE#RURRd^do%u)m{z1YTw1M z7}!ypZMqt)Hph3m<)pzZZIUw&4LxN`n&$`61TDHhk-(2R}a z0`)wy>gG+K;HV)qdlnT|y3htTi%%42ZmWi%94azY1oX>VrAeFYIefW3aiw2FzrpRc4fR6hSP&SeO_>v<7pL zDD_9(VapTW7+NIYz!J{7)skk;&U<8`6o)YiztT78Ty&a;0uNGP02vOy~H;F zKTpA9t;U7|d_xl>Vi3C!2{%2mO+I7qE_SCD=I?S zE3u}GN>ldmEnlnA)`9_G4#NYarMT(x$bK4*k_ zJ&d`$0x&bZ&xV3CGy0V9?fup1Yj-Q) z+1Kb-zAxXmBfC3)9Ex_fcd9Pi+HUReX7BqSB$k}487vIJGTTNvbe*B?;=8kN#+Ln8 z)=#`d&Q zPYDo&mX*dkt6q*HID|9|W)b|LBdE9R+zP$C*!M8eixa=XkIt(A z2Lp<93^z^A8nEi_i>RcG#4)Drh}$>6?N;=YHH?G{{F+ zJECprl#2#HJseV`U#8$mr_y6pxU@ZpaYoB>b*BkV_w?cL=AsTh%846?rG1tKKamrg z0{{}7kK&iQH7t>D6Q%?71ieh@#8wDh%WxI|%qA(>HPNXi zD;`*KHeE3CKET68tnNyKe0b9SQJr+ZCP$+CqYGq1EJPpsrg&KhZ~r4z zC%T9X$RWW)kP+y(7)g;-u}L@h>Y6*&5)kPGM~FJ1N0T;y|{;H-Ny>+oaj+)8*=+ ziU}LbY=%9cjrAoFA0TfRbtXZN7_;Lj{^@ERi#?OXJh*8UJwIUd5S4xTzd4oaID=hT zRp0MPc2O^`_2*3~z$u50#svGjUg=Q;s=ERwgXN^L>qV;gONI^ts*6DNijJ-LJq<{@0rC88CfY{5Yg!8q6JTfU>B#bUHGYNt1$bm>JPgt@p@3mAf0 z^A$xiL8RAL9Bj2iOf}$AC&Bh)!r3uLP5vuJxxBx&@mAvPk3JM9_csLoEas1+-JhfE3EC4g6rE?*W6~iJogignVbm_X1qmjOQORU>NZK zC~Yz@X`YFv9Y0Ia^yp%dBRlpZ%_~~dyTF70y2R@Jd1Aq?jek!*(yPrmzWC|;uZUNT zfJHj{w_C9Kw_*8zMkhG`AL6yukWK!-GO{{>bMEogCMx;nrf#YUb)v3hb=0Wjdjw$? z2@in)@ScCOunwx) z8TqcqBG#L7ppDPin2|IJTa`?&?DR9r>q!XoO@Zg{Qi_MccJ8?zN)w>CzAaPt8@S#~ z6kzA9w*6PRGLb;vI2E#Ckv|uH!13NN`o7*JH6>&o9A>T{FKKuaI}l>*@Vm#B7uwIi zX7uGO9@MezJ?DRSX;%0am}(WIEw99-ZJkOx8H9$5@cUuCASNAPg z+Jg!T3);9S38dH!z$a9`2HCi(7YrCvG(r$y+7-l#bu44VX<#tKB{iPK2X<@GuF;yL zMCEWQ7lcT8p&4GmV~g%RE2AYs-$Uf8;JY=jsPW2|j7_+maHp3cEv^I@H@3?|hQq9wya9?O|28~U)?VS=z^5F}2O zK@X#hFsA`;nr8Z}9V+2UCwx?kBx@de90j=0^7y~)1I>492^5HJ`hN!CWvRpV0n$t7 z@_w*W@shx!4HUDD3hf$NT01QxaKC*WgmIcxv8E7~l|+{~a>4`<#hIMC%fcrxbyY9t zQOQq+(V8ok=Z&|OGiw*mRzO6E=?5G=ra6{72fJUrc*KTV!2hT`>;R3P$W-Iq{c$oN zTTq5aKA3Ji<2Je*T^(XXh#IH7{8nU>zd-m({N;A>Zvl!v6L&K!2E{O3E_;B25_vy%l6=|w=Al^sSiSHo=ULz;|T zxCoBGYYev#1N)~bOh`S21d_pFHRcJz)xbo9Zv;LH)H~d`6nNkeBTz14dI|Co5ln4R ztx1W26YF^+a0Iov+n-J|nSDXM|+9qEwE1)1=2|Y&mN3*KKN<_2oNdI!6gvwkKDuIAd z1R2KJ%LonS;+m#UbNJz-5jQBGh$ORUNK81&E3&d)VRFz>34w)9Bo%H9nd(-Ogk&w8 zhF_-#s>L2w=@=?%ly8U}WU&%o@%fv_yvt)aT+ZAkASWhr%`_|4_=R;^0g(vqd~I#_ z%Mp6;LcH`jFrO6yoM_ouG_jw1?_er$7qmsl*YHME^*{kKmZsbQtXR;1r~vAvK5&kW z($2h6_zbaW0ep3?X3})x6y0mlRLBu%BR@Qq5|Bn%h+YC1|AT&duV|-W&PpI|)Y|}Q z5BP|`9;t}`&?sW5=-If|TZ1SQsHneC`CI7vUPJ4*1b&S4#0ZRE5BY8;yZn!JQazvJ~!MiZ-&^Du=R*YW*ovdWmRUTW*f0;XomKIcQSn zf`+BNoKqlED+;BHn2?wFx{gJdM7X6co!>ohDFJ0X1p3ySj4~$d@)jP5>E>P?RoNnu zF<($8XI)8X)&m>rv=D`OWBlT#;6|dq8>Jg#!Sj!j`k!9$Q}NaB>q49Sca?Jg#=IB^ z5?EQ00>9akG)e+f+cUUfsynnyPr4zW^)JbGzo>ypR<^ZeR;hw!c9;!OQq<(tQL}Ej z`bqN<;x88LKbt(wxg>dbJ+hsIJGUsqJJ^V+C1Skh{sY%b^7#Qih>zrPW2pz)U?{3w zYCE2|e|)ow+*swAbexLShY7d;Le%}$suo-W)RvhPSz>i?$~85F2W#FFJ#u&&U>7{i zeMRs+E0NXjK7>?D*8v$2({u>!HYS($ttTqwglBcyjb7>H&fg1g{i#sE2UBFHESScF zaP!o$&9d&0$hEexGbAMcYmnA^3cEi=0Mkw(ciPVk=`Gh*9b5L}j%pT$upb=cNElqB z)3M;jNQRj!i4>j%DMu$>L^aXa_|Fz?3@XE^A(hFWjQ`bjP}NSQ{nlt8$u0ccKcg69 zR*LfegGsyFK@BTZPySTQb2+{#!eF$7{pq;nBwQyXdHDM;q1_08VqhY)tXCSqKeJP6 z`V(i#qtu&cXq(OyWgRFa+-^99aCT1$n6w2?`NfhD&N=Q}t5ZJ;I?$u$@~88s=@&;x zF+Bfx1vMgKEH_DN)*tmu)#8-szo}CqK2jF$?K-9~ zCTw<~a_A(yIsxa#fbrk}rk|OmcwUzqhbV?rQZoith(B}aL0Joi3nl@0ZbEXC z4f%sfIVc6Oho#<)#&f8FNKBC+c{qAmXDWNcZ5=67ubNE|rQ=Uw5hgr5z4L}99eP+R zL=g0p7$~G7v2$!vw=SoXOMJ07e5vIb-LW4A?pcwB{xUt5ZFPhubjq?GMc`{wkrFS= zhEaO|eXxg;*^{1bgpen zw`|eRBzj^c_xwPGBWC(M4$ptTqd=D&Ps)psGcG4@uS1;kLQemnm(f((&lX_5vrWkB z`T%!3z*Pbnxqm`l3H4-oDOY{BW&d|K691JP`(;4J&-H`N3Z;u}5!i9(~Geq#wHZF>`!1b^U41 zKjYW?v422s&)?he{k_C(<#c&R;}0S2+nLSE>3%wO?AE1g>_x~pj7 z&bj1XVK~b?*#&oM>Nh?`H4sYn@Zr>|krHa@nc>|!56SUkr1`f)Bh*VADdVv*mZy!( zJnq2xfQp#hZKc5+r)4^x%M#k9H?YUH@4E^bQtM9zk zu#=Bw;NCoARo6F`jd;q0B6J5a&db&rwYm&v5ZCl=@aVd9!qTzf%4No$a4Cv%AU^6k^urdY$Z-w5fpR$KR@KbK6_BeO;x_M4z>>T8%&9PhWgKgq5aCI??e zk(f`DoIAq+_%^ba7+Nj8P@ZxJnUS<;d;OVM(ZhhD&{(Z$u*p~LaI>MbBRiHB3|y=S zE!k~q=`LU|CcGpCcjX*Sw(C<}xHKaaI+snFoP68YRbWGAvEe4T&}}iMvxbMVbI@L) z{FyH6&`oXyW!&-jl=(YZh9r%S(4Bh8@LI~9Y^f@m9QMpFA|FGgtX%TK`a%y!GRnq6 zt&pFWKAf>!a5>m%79dYG8vvD`p}H{CZ&VI9_?$k-TH4f43^+h76lgSPM$)OGqK*xG@Y0HX<(QPP#LnI#X3YW-0M$qi^>!R< zG>R+c6M#;6S3^O~!|nimht)rQqbc*X)%ba<0tq5|7=tm#VYa*&(bljtX*0fm1_26i zMjdNIp|p_x8Xa#VcH099&AJ^b3SsHQy`s%xwy|~rMn365D<+g#Bnl9Mw!{vmmZN*Q zmshX?i)w*5$Z<#-a&dy9Qq>92I_iOi6Nd+`s;oy$VR-b&k49c6{yTFdxar;=r8v-NlgCPM+S}Nxp=$I72u2Rsj>6Op8hgt3P&7O)2;nq% zvoc)#`%!q;kox~7x*cDfW@5kMbtd)Q*KZ0+*#RLgE|T+#UMwdZujk( zPM_g2z{}9~3z-Y~x)R1Yigp3?R`AR4ZtCjZS`WCftiobbizEy$6Bf(R*|4o|f!gXt zsI#C_>n?aJe1b4I&qL#!AM$FS7Q1I>pV(L{`T{6eHQ-9Etr5G~AHhEC7J_!NFnCnJ zY{tCjDO>H~>v6Kp!=5J;fdGqFT79f?aXY$`AW@D7nSL@bxa@3-r~SYofm*N~%t#c) zw@XD%3W7=Snm0$k46m`}qu5fP1N1_@76C$|H=n?Pr=gfvxao)wQ5De~3FBw0l~YnPylEfiZ!M}M9WJ+2Pq~r^+6~7bu5+_ z7`Lt<)zE@{4gc=h&))~nxjH{A^Y`;}|2%%QNBMvWnNB?i$K{VWuVFC8i>{(WG_GR} zZYDLXQVK~1Ca8%|kwrXLnoihn2HSV;soR-Itfw+`Nk44f&B*Q4&k=d?<<_2aI`{);Bt!44Ms1G( zIP^K>iUeA^2#WzR5Ia@OINVAB!Hh^s?eZNA)sqtd&6c}Fu9|Ky?#f9&bDgQz@|jl` z9*rf79_%=~(AvhelQA(_hX6NuYClv&dhp=+hmGxPPSm{gJ+Jw zvtUm^8Thjp%=bN#n+a-3@}*>I>68d7s(8#|f>;9_-Lo%IdU9cV=x}sB+6R%>vT3!d}Gj@>?4dM7q)l%q`-~l3Yr-Rmm>pqyM`WrNB=ELm&O>mb}f3 zeVrQuLa<}LZFyUAD7lXQd0mHvL#%GRQtPsDh^3uKXhzKYd3}RCADho|kCC)#Kd58B zC_rWxDmmIiv^<~Xd;MSWrDI~WaEZXPfIwjdnM0~xz71ahCXx7_G=I;R<4;=?ISl&xXD#dV`~cK$)u{CwTZz; zjw#mAeN*ftg9RR*wvA-AAL<4_u2vO<@+|qF8oy-dvsRyuN+~zc#1^vX`|=jq#abKF z8{F8?%y)WY(Mq?dUk49u_^rc(a(~(G?GyIdzyG%M<%)~P*aijwPyzeDfx7?f8je*T zaKdIs`tAPY;*l1nlvA}yB}q?~UFG7~q2f;6B<48VH;4o@1B?-yp1@C>QX~BjQ1`3R zp(yiR2_7IU3H&-ezp=V~zgaxIj#6}C+^a56tVD4(Ep*p+YW&{cmX4=ZE~P1riR_2T!MB~8e30#JuD;bp+JMo8ZS9p#oZ2#_!tX46y-=t7-K%K9U9528*#Tl+eD?O0~FTy>MuJFej6FPDnk4aFnBx24vc=5*9lUWmU? z{irV4h(q}t-P^1(I~nWbTi0T-`oFI`OP#wS-QRQtp*)0ib& zGIQ#eM@OV^O6Sn3urJ1yS4v*%2hfUJ-H)c*T2RR=R$!#mr*x`;;jk9zMMfb?k1l|1nSaq-UZ5jbwypgo*=mB#DG=K zl;}cS4q2&snPcF|GQ0EO4H3%qE(X?kPRR0`I^CNyub_~ z?kXvQxDCSj1vpn3K!CC|a|rogarSGiF^IXK{6&&;S_JG>LUn~8I zrMnY)el>O!D7$RNFWI4h+_YpEu<=Zw0jd9ysNd0GVv7rR>Fw~km&zXv!v1UTWAHng z)ta0>d=|`RTTK!{X6R3L!?gxfgx0{D0-7H+Yf6t|DSJ?p%t?fe6O~DzWjF`=u&@?uR7RTCnjdH(X_=AM#Unw>wSJ0M*cGPNJ(Jqu zypTFxI9oqW zPTPIRSMs$$#pMPz8)R|va={$qIqN{0Jyt=uw|5eAyN;{gs4|lJQ7W93hwZVP0*QEf z=apJ4%1?!R0k9!&81EI<7mG>$aDyy*1fx;fPL&bMxwHs~RXGr$;GD5(yc5C>NsSm( z0k~fdn$VPI^^4wD`~Vcy+#9~*okG4)=M@67o&{T0sYO$@jTJmdi+m(ahPq`N(d0vf z4|q~uKiTvS7Q{6vh1eHuiboc$(vtTL3yk$a;JTb<6QRYbY=O~WAAg4%6+}gOE$4Ei zKf-`HRjehIz4oM4g0>xk?r@CMAY9|xXgMb>o^IJ7h;#d+S+YY?d@HlaJ+ZrPER}Pc zV5rzQDW+S=o?NNS>{gZkL}kh0g|O!`rfI~g*P&Gp6>PM40f5eg@t_zdXy3n-ZVsbG zv5Ht71sC#MvpuzFXmWfy8RD&M4pyJ__{hnVk&`AtH44DS?r4uSoDgpWTl6ErX zpE-~^6s=OE6`(=K6UmAK?_Kq(y+F8c_QeW;Wt*U$eqQSBV;TRfy$1TPtY7iFMB@>> z|2Z}o-?6&{oC|h80Sj|U>ATqF=lVe$Ab2-*{WXm}M;zw<-OBg(<5q)H!YK2iN7JOlicq~!J^0OqBo?SQoO*P0S;xCIY)KJJP* z^WoZ;&Gwo1tMn{(@!eTEdOeyxuji%bnX=cq3dx!g`*&fDi-Y%S$qH_5nlQuiusUjd zw&>)grKORc;c2OP%wO$7vUp*eYpj=t@5gMvi-Wj|guJW!#O9xLW5XgkeMA~9xu|QA z(2)z@wi}MhgP~Z9dnB$A_i=Nb`@jUr6uPUk&qL#+D;@fAs!xpN zUp`v6_|Y>KAjY|H0nBW zB!k&WwudfNO2>p;;x$NS!lF6zv-Y9OqNSqcyTpqY!JExWh$q_J2HpvZ937o>0j`p< z@ZIxL!_FjwVje*OcSq5_cRmhNSs6?k+1usvv(fPW#BBM}QEn5$W1p%kjRo+pGcW6V zKiiuOF|eaV5YB)>h({qzNvPC>#M3t*ZIO zc>>>?B9-^IJMrT6tWApzVn$Y|Z;Iw)1R8E>hD9<O*v{Kw0kdtY){11&ni%J7vwO%e^fjso$IibyXp08+x6L zN{~IZ2MkzJl7QSF_6e;cl`*4;tW2LG~zsftwiOgEAn_ zk+KEyGlrW$jN4pz3=u867tZ1O3PMavtwj){`Rg@^*EV9L61+Da&;B-ofde*dG}I%L zBDz7Ef79>Y?oPpX8eTpWp7*NUn?z>GOL3V3@YFh22Ky;0elE@INQr zM4AG1#Q|UJu0)MS$KS{}+M5A=#D<6RP#>o*2)R~I#<2$>**#WsOtjB-6-OFKk#0J> zF!Y05eFqp;q+HLpL$GI)Q6o#mN^se7W~bU!OA<_f3V{%2PgVeR*A}*2>g)zuWdN4AC+3g7Ug2{Q7j(8a`MGTJT_W6h|$WjAFvABN;Xeaa{uaEraE9EJV;X&x*-}vkG zOK_&eK5Y!{m_C`%JJc+XwmWgX1!sxwzGp{*=zzrdJtMqSdutM>ZH-*7V<$~mX09|s zm~t)gNJ}Z^>zJ&d_*Y^4jMPe-b7OblJ$h`Q6(U-+vFqig%c-L>F=|s_WEsVu0-d8N zMde{`#w*BMhfOWjM?J20Aja_?0%VOs21w-6N)tNUHdxVzK?*ax|p9H9Syix zRziK3E@;kmJz$G*V}Dj(Cz1R43fOf0=<8Hs5a5QT6|N zkN$IY!T0}nkJ8#VIaDK6s5@-lODcJET6H4hHJsW-K!8{Pq7G($&ynApep2p0ZLzDW zPeXb?K*ssGoxr8Jdry&e+yt2auY^VpZKNMQ`f>e!aQJ+AsE;;Bms{=c@jiC^T;^U^ zKGieS_9d=yvGiUz<;kH(pII@Hb?(L6J6brnxe&QCv- zfOZs!} z^x~taYHFy(H(W~v+kby)N@?B$IU@r!t+^rA>z&LjUcu>@vw++<^A3axkHM#xgL4`e zzlC70kjV^r#@%b$rj(+Fo=%#eM*j3X#qYAs*dxXer$cDa&*S~E0;IKUgf(bqV$|AV z+?dNnV=Ht;88)9h@pS*8G}>T0I~rckit5{+IYBas9FP<55|4d}4MkhR!-i2(0eu`W z0JDciXlx}eZvnKj;6$8t3P&Oh;xS*k!1{BU?$3O`y%+PGO2+T9Kq5vmXw7WbRn0kh z|0|KF-K@&w$}WqnvzuQY=a1BO^m$k(I}og>9p15uLPzkfUIwAFtpSn(8F4;U-j3O@ z#Zh~WHL&B6t32g~V`Mh8GBxNK?S5nKPNxh|10eQ`SIEc3#0SM$z!3}3jd+2f2$Z); zf=F;GnA;_i!+k&5W*5v@%Xz!?#?A!@kNS8H4pn>RZc)xB}tbI?I;2@`|$0U!j zD1o=YjEi$MXMT$*a*Lt3-VU~3$hQDL=FXoi_-(S;b%-d6q}|k`FySd!utT#e*#m`q z(Y{pNxh1qVyN!x!i4{C%we$`ZCaK;> zAP?(FV25p~jsQzszthe3)35fd#8x|Q5uWj$Sn3U(32XZs&tGb)UTc~Dr13F#bu=aP z(_q-od~$R<0w74tx+&1aXiY8tdY=;sotJE>aWC5Lje(atp}ja4CD;C|!4)t&CC&u) zd<0!pBOz&xH9*nB50-MIXsDi$WCi$ZAc7sO4Scz+DESh)xzVVuu!`#`-=A(<9TMzW zs0q@z;QKT&*(U#`I%k)`iQ&AI0B&H&m=^$|;jAwd_OtXWtaiG+=~_2k;F@Cz9AanM ztJLWR(Ef@41QQ7$IFrOP9ko%%ppLuNe!SJ{b`iKZ9P{w%I#{t6Ah7W%AVt0N4(y1(+d4Nmp#2%Z z&;A59eeflTjW5tx>V%d+jC#S(2h|ZOGO1pc=HAZ*=`;x@*aNi{^U;t9LU@kA4B?-D z8;f7s1-!HBh-|%+E_Ju0kjwF9;71^7y_X;9_b0YGh>t3W;$I}|*eP6-l;he*?y%_V zllOIL;et;s8Dgg8Bgi>E6P2-qr%{2F%%>m2!qK!VUB}O;9ifNJTuMK7uPXa}9_w(o zB*d5_gnL!$a}z>=rem7%Q%RY&zksl{vOIF`M5)%K2K*h8Q67bu!+P)vy~7*GF@TeZ zRw$1PHdv!MNuk3)BFf|1i8Nl|I5i*Ai8-B%v(1jWrhHEf*Jg$}J4-5fB=6-oYIMTJ z?pe1)Gv8bL_sYdbo*e3W&<|FgE>`HzE!uGYsu~}6e7q9zWdk-HKD6%e`tOwVM!pP} z__+UF0Gv0how)lQ8)Nw$AN`-S=sy=*RF!0tml$AvcSjNU=pCCFfUilmH*^icfa}AZ z_Rcu04l4MAYHT*K`GfSw=>_GWa&n2J<-NSTDsJLu2cbtzg6c#yt3mSD3RruqMqane z)^10>UrN26_qUdA#vaAbCN%v{;T@{vTh1cGVpEn_P?xfZhUL;OpSAFq#c1+j;f$R_ zS+48z8r-W^xG}>>`YWd+{cbkC{7uWqXcMcpULr^WWr6Py@g%NBkiNsd zv{6QuG7mwt(U|>DznzyVvKI0Q@J*VdM{UX?7)>W3nd`_5wzMgHZw#6?++#)_F|Abh z$F#lqw5QOiTjACSODQ@StzCGA;gKqGL&Zok3k=cVxwQnKZuqjNfrK9b{(j#lSLh}9 z!UiKnuV2&wuv(fPZ!mPt7E81;VO}0A#licOkP(_O&cqd?L@YcNka*B{lO4gVrZ#2vq zFm3a@K-_+y%RToHXsS=^K%jb`47a$lYsgoZ7JejjD9_BIEjU)a~UFQM~br#3*A>(npccv)mF~*}X ziWn=aMvb?r^$M#PGn15gFq2nVBxNTlY+53ba!AQ!R+7jggwRpG*PisJjf0aV(UYHs z`rdt-k~>gjc9gQMb{EqRYn+;^*fkr|Q)96ASyE49W1=PAW%IG2HxbkR4t*aEKd{NA z_$v(4r0n!u%f;>U9UF@BLNbC-o+t4nq3O;7a@l3`^KyUuED+R_%Sfk4X^LorAO&Mu zb@^#`)quxzPEqgMQAQ@H`xALCE%gKqPs!^FSCnecZ;mJ<7f2tND6x-Rmxrt9l=U;= z3s$eS3$1(fP$@v{lsx7kJS6Mzpv^vuC&H_r_>H@hY>nwucDA~x_U`l*YM}P|Sq7ax zqAcoa6OeBWjwzsXH5+Zs9(@=r?p8MnQs%s}_Dy1GU^6(bn;T`5f7cl{y4zil{j2Va zDs6+{%HW>3t6cA@o9*$cy>2PEGt%E~q;}(KESA;RjPq($FnDQUT0lUtasDvo>Yu@^ z)-(^9njh!e&iC3aFYnME*0;Isp*D=O9k<2g4U1~Eif+bRG)~vjDTda=A_ML3PEeZ4 zTN%3ZWlI#g6?L5zC0Z>$M(0Kv zoFe)r#vYD^=%f>m8D`?+Tt0an%l!Ka@l12+t!w5Q7nqGF`)!%oy(tNi(MPzmWusZ4 zSVy)X*XA!1A=AJ?7=xckt>HJZaL->FNq5Q*=cRNX;M9=h&Frc#hU_6FT9)7~7g0GWOIKP2&j9M3e*@%r(_nCAU zxm`KE-m$_Kjtle8D6ocv~hYS zKWaua^}KJ^Wc+^TtH_*fwV(!b;`&uYw?|Wc?Iy))s)Bu`PbUdxf$gpEkCNwcIFfYsO^~|A8`zx-R%b$6~u>?1oyzko|_o>vGx!Yc;>EUl- zuBDLk*naohX13HCQEZI-N8Pp|rH#1kdKtT%Fur4gdg)qGtl13a*;`!x(X7p3F;A3E z;R|ZHref?$^4X+*8STf(Z%8DK`qTuH*v&4qU}Y0Jx4yw#K4%&2q@S?D+dRyOIVpTS zfEgX#l-+OPa&J#hoiia_x+b(-PL-G&klZg<)mnZ0cy`um%OiC%A+uV}R^I;iQ?`P< z7w6S%dQ9u5QKpN`#Z#5`K4Qzl)k9Jl;*8hb>NO*(;8?N9#tNLdl08Vqjubl+8k@zV2D2Dpgh*xx z%!pn^pN{}n=Yhj`5km|7jeo&l5~v(b2!jwD$Yvkn66nEPP6##1n9bn@vsv7w&>fG} zakb!=;iZZ~sVzeH0W^8Hr|p7k3>J^T=In4s&2xZiEv7 zTw35PEz%8xVD(l6lnH_bap(&zR~P{+fg*^rAZivPB#CPn0c$!U2!)j}LXvBM5wMmY zg75%Z7>m7-j1yr5ES`ZN^bBBxWE=q_;L^4TqIC<5klepv1YFJtL9E&VBP7L*U2S!Nt#=r=81tx;nM1v6jt;d8B@O(dlKr>;4WcD9Mz!ND5 zVw?*jz7m~q?h8T0M#G4&L?`^*f*@q$VZ>LW6CT$hhz$ua;w#Y!k0%hs`$QP=e{`Zj S)(?f!1TQD>ZfnxNXa4|>zN7X4 literal 0 HcmV?d00001 -- 2.43.0