From 507980a347eb68ca021947f98d5280c6818fa1ee Mon Sep 17 00:00:00 2001 From: clawbot <35+clawbot@noreply.example.org> Date: Thu, 1 Oct 2026 21:38:48 +0200 Subject: [PATCH 1/7] Bound username length at creation (closes #184) Usernames are limited to 1024 bytes, so no account can exist that is unable to log in. The username rides in the session cookie, which browsers and securecookie refuse past about 4 KB, leaving room for roughly 2000 bytes of username; the limit is about half that. User.BeforeSave returns ErrUsernameTooLong when a whole User is created or saved. A byte-counting check constraint on users.username catches every other write, including a column update. The limit appears in the constant and in the struct tag; a test fails if they disagree. Model: opus-5-5 --- README.md | 18 ++++---- internal/database/model_user.go | 49 ++++++++++++++++++++- internal/database/model_user_test.go | 65 ++++++++++++++++++++++++++++ internal/handlers/auth_test.go | 30 +++++++++++++ internal/handlers/logbound_test.go | 8 ++-- 5 files changed, 154 insertions(+), 16 deletions(-) create mode 100644 internal/database/model_user_test.go diff --git a/README.md b/README.md index c1bb19b..f6a682d 100644 --- a/README.md +++ b/README.md @@ -1439,7 +1439,7 @@ A registered user of the webhooker service. | Field | Type | Description | | ---------- | -------- | ----------- | | `id` | UUID | Primary key | -| `username` | string | Unique login name | +| `username` | string | Unique login name, at most 1024 bytes so that it fits in the session cookie | | `password` | string | Argon2id hash (never exposed via API) | **Relations:** Has many Webhooks. Has many APIKeys. @@ -2379,14 +2379,14 @@ Removing either cap fails 14 subtests. `internal/middleware/logbound_test.go` and `internal/handlers/logbound_test.go` drive 8 KB of client-chosen text -at each of these — 1 KB at `invalid password`, whose accounts are -shared with the successful-login line, where a username past 4 KB -overflows the session cookie and answers 500 before that line is -written — through both handlers, and through seven fills: plain text -as the baseline, and then the quotation mark, backslash, tab, newline, -C0 control and astral non-printable, six characters the wider of the -two handlers spends more on than the client spent sending them. Every -case holds each line to the 2,560-byte ceiling. That per-line ceiling +at each of these — just under 1 KB at `invalid password`, whose +accounts are shared with the successful-login line and so must stay +within the 1024-byte username limit — through both handlers, and +through seven fills: plain text as the baseline, and then the +quotation mark, backslash, tab, newline, C0 control and astral +non-printable, six characters the wider of the two handlers spends +more on than the client spent sending them. Every case holds each +line to the 2,560-byte ceiling. That per-line ceiling is what the figure above states, and every row establishes it. Three of the sites go further and bound the whole flood's output — the diff --git a/internal/database/model_user.go b/internal/database/model_user.go index ec2ca1e..2c95040 100644 --- a/internal/database/model_user.go +++ b/internal/database/model_user.go @@ -1,13 +1,58 @@ package database +import ( + "errors" + "fmt" + + "gorm.io/gorm" +) + +// MaxUsernameBytes is the longest username, in bytes, that a user may +// have. The same number appears in the check constraint on +// User.Username, because a struct tag cannot reference a constant. +// +// A login stores the username in the session cookie, and both +// securecookie and browsers refuse a cookie value past about 4096 +// bytes. That value is the session base64-encoded twice, so it holds +// 4096 × 3/4 × 3/4 = 2304 bytes of session, and the signature, +// timestamp and the session's other values take about 270 of those: a +// username longer than about 2030 bytes can never log in. The limit is +// about half that, so the session can carry more values later without +// locking out an account whose username is already at the limit. +const MaxUsernameBytes = 1024 + +// ErrUsernameTooLong is returned when a user is saved with a username +// longer than MaxUsernameBytes. +var ErrUsernameTooLong = errors.New("username is too long") + // User represents a user of the webhooker service +// +//nolint:lll // a struct tag cannot wrap type User struct { BaseModel - Username string `gorm:"uniqueIndex;not null" json:"username"` - Password string `gorm:"not null" json:"-"` // Argon2 hashed + Username string `gorm:"uniqueIndex;not null;check:length(CAST(username AS BLOB)) <= 1024" json:"username"` + Password string `gorm:"not null" json:"-"` // Argon2 hashed // Relations Webhooks []Webhook `json:"webhooks,omitempty"` APIKeys []APIKey `json:"apiKeys,omitempty"` } + +// BeforeSave rejects a username longer than MaxUsernameBytes when a whole +// User is created or saved, so those calls get ErrUsernameTooLong rather +// than the database's constraint error. A column update such as +// Update("username", ...) is caught only by the check constraint, as is +// any path that writes the table without this model. +func (u *User) BeforeSave(_ *gorm.DB) error { + if len(u.Username) > MaxUsernameBytes { + return fmt.Errorf( + "%w: %d bytes, limit is %d", + ErrUsernameTooLong, + len(u.Username), + MaxUsernameBytes, + ) + } + + return nil +} diff --git a/internal/database/model_user_test.go b/internal/database/model_user_test.go new file mode 100644 index 0000000..9d82b8b --- /dev/null +++ b/internal/database/model_user_test.go @@ -0,0 +1,65 @@ +package database_test + +import ( + "strings" + "testing" + + "github.com/google/uuid" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + "sneak.berlin/go/webhooker/internal/database" +) + +// usernameAtLimit is exactly MaxUsernameBytes long, built from a +// two-byte character. A check that counted characters rather than bytes +// would see half the length and let the one-byte-longer name through. +func usernameAtLimit() string { + return strings.Repeat("é", database.MaxUsernameBytes/2) +} + +func TestUserCreate_RejectsOverlongUsername(t *testing.T) { + t.Parallel() + + db := startedTestDB(t) + + err := db.Create(&database.User{ + Username: usernameAtLimit() + "x", + Password: "hash", + }).Error + + require.ErrorIs(t, err, database.ErrUsernameTooLong) +} + +func TestUserCreate_AcceptsUsernameAtLimit(t *testing.T) { + t.Parallel() + + db := startedTestDB(t) + + require.NoError(t, db.Create(&database.User{ + Username: usernameAtLimit(), + Password: "hash", + }).Error) +} + +// TestUsersTable_EnforcesUsernameLimitWithoutTheModel inserts with raw +// SQL, as a path that bypassed User.BeforeSave would, so only the +// table's check constraint stands between it and an over-long +// username. Accepting the name at the limit and refusing the next byte +// also pins the constraint's number to MaxUsernameBytes. +func TestUsersTable_EnforcesUsernameLimitWithoutTheModel(t *testing.T) { + t.Parallel() + + db := startedTestDB(t) + + insert := "INSERT INTO users (id, username, password) VALUES (?, ?, ?)" + + require.NoError(t, db.Exec( + insert, uuid.New().String(), usernameAtLimit(), "hash", + ).Error) + + err := db.Exec( + insert, uuid.New().String(), usernameAtLimit()+"x", "hash", + ).Error + require.Error(t, err) + assert.Contains(t, err.Error(), "CHECK constraint failed") +} diff --git a/internal/handlers/auth_test.go b/internal/handlers/auth_test.go index 98c64c8..1fdbcb1 100644 --- a/internal/handlers/auth_test.go +++ b/internal/handlers/auth_test.go @@ -453,3 +453,33 @@ func TestLogin_SuccessCreatesSession(t *testing.T) { "the issued cookie must carry an authenticated session", ) } + +// TestLogin_UsernameAtLimitCanLogIn shows that a username of exactly +// database.MaxUsernameBytes still fits in the session cookie. Past +// what the cookie can carry, a correct login answers 500. +func TestLogin_UsernameAtLimitCanLogIn(t *testing.T) { + t.Parallel() + + var ( + h *handlers.Handlers + db *database.Database + ) + + app := newTestApp(t, &h, &db) + app.RequireStart() + + t.Cleanup(app.RequireStop) + + username := strings.Repeat("a", database.MaxUsernameBytes) + + hash, err := database.HashPassword(operatorPassword) + require.NoError(t, err) + require.NoError(t, db.DB().Create(&database.User{ + Username: username, + Password: hash, + }).Error) + + w := submitLogin(h, sharedProxyPeer, username, operatorPassword) + + assert.Equal(t, http.StatusSeeOther, w.Code) +} diff --git a/internal/handlers/logbound_test.go b/internal/handlers/logbound_test.go index abb78f4..bddb149 100644 --- a/internal/handlers/logbound_test.go +++ b/internal/handlers/logbound_test.go @@ -339,11 +339,9 @@ const storedUserPassword = "correct-horse-battery-staple" // storedFillBytes is the raw length of the client-chosen value in // those accounts' usernames. It is well past the 512-byte field // budget, so the line is still truncated, but short enough that the -// session cookie a successful login writes stays inside -// securecookie's 4 KB limit: the cookie is written BEFORE the -// "user logged in" line, so an 8 KB username answers 500 and never -// reaches it. -const storedFillBytes = 1024 +// whole username, markers and fill name included, stays within +// database.MaxUsernameBytes. +const storedFillBytes = 960 // storedFill builds a username fill of storedFillBytes raw bytes out // of repetitions of ch, with both markers at its far end. -- 2.54.0 From 9d29baaa2d82b89850e07654ea018bfbbbeed5de Mon Sep 17 00:00:00 2001 From: clawbot <35+clawbot@noreply.example.org> Date: Thu, 1 Oct 2026 22:44:41 +0200 Subject: [PATCH 2/7] Commit the Alpine.js tarball in 3p/ and extract it at build time (closes #345) The build no longer downloads Alpine.js. Its npm package tarball is committed as 3p/alpinejs-3.14.9.tgz, byte for byte the file script/fetch-assets downloaded, with the sha256 that script pinned. script/assets (make assets) extracts package/dist/cdn.min.js to the ignored static/js/alpine.min.js; script/test runs it, so make test, make check, the pre-commit hook and the Dockerfile get the file with no network access, and make build, run and dev run it too. Removed: script/fetch-assets, its Dockerfile step, static/vendor.sha256 and static/vendor_test.go. The README describes the new flow. Model: opus-5-5 --- .dockerignore | 6 +- .gitignore | 7 +- 3p/alpinejs-3.14.9.tgz | Bin 0 -> 140817 bytes Dockerfile | 15 +--- Makefile | 6 +- README.md | 82 ++++++++++---------- internal/server/static_assets_test.go | 6 +- script/assets | 16 ++++ script/bootstrap | 9 +-- script/check | 3 +- script/fetch-assets | 104 -------------------------- script/test | 1 + static/vendor.sha256 | 1 - static/vendor_test.go | 92 ----------------------- 14 files changed, 75 insertions(+), 273 deletions(-) create mode 100644 3p/alpinejs-3.14.9.tgz create mode 100755 script/assets delete mode 100755 script/fetch-assets delete mode 100644 static/vendor.sha256 delete mode 100644 static/vendor_test.go diff --git a/.dockerignore b/.dockerignore index 5565f6c..550060e 100644 --- a/.dockerignore +++ b/.dockerignore @@ -3,10 +3,8 @@ # stage of the Dockerfile. .git/ bin/ -# Third-party browser assets are fetched and hash-verified inside the build by -# script/fetch-assets. Excluding any host copy keeps a developer's working tree -# from supplying the bytes that get shipped. The script and its -# static/vendor.sha256 manifest stay in the context. +# Extracted from 3p/ by `make assets` inside the build; a host copy is not +# needed. The tarball in 3p/ must stay in the context. static/js/alpine.min.js *.md LICENSE diff --git a/.gitignore b/.gitignore index 50cd133..6da4ee4 100644 --- a/.gitignore +++ b/.gitignore @@ -46,7 +46,6 @@ temp/ # CI cache barrier, written into the build context by the check workflow .ci-fingerprint -# Third-party browser assets, fetched and hash-verified by -# script/fetch-assets against static/vendor.sha256. Not committed: -# REPO_POLICIES.md forbids minified bundles in version control. -/static/js/alpine.min.js \ No newline at end of file +# Alpine.js, extracted by `make assets` from its tarball in 3p/, which is +# what is committed. +/static/js/alpine.min.js diff --git a/3p/alpinejs-3.14.9.tgz b/3p/alpinejs-3.14.9.tgz new file mode 100644 index 0000000000000000000000000000000000000000..4d31381f7cc0ed22a308350bc1713d64e268dc8a GIT binary patch literal 140817 zcmV)XK&`(YiwFP!00002|LnbMdmFitFq+T$6)=yVaWkf~chj<>;eUUhs=}pkX_A_8W|KXh4`UGx6o5hjDAaYHj&IVb+-d6Z z&Mckg<7Ve^mbU5e$L2Sm>%ZOI-QRuvwTP9&e|uj)6Tf-(&F^;i_I~%f-LJ)OcK7yw zxBpE1X7@M0!hegVP3zz6?tX?z?(Xgi^Y6dNfB9@))vdS}&A6INu@sZKnu#aF;SLr& z*)kQ7I(P*lmnU0W_($>t$mYpF$U+=`OW+b&^!r=C`SRaC?|<{y{?D6v+K#V3*BP*8 z|L^a9U%UTz|7}0G|DWxBx&MFN{qJn)p4rm91GA@PVRo}DzHHk6z574Ue$D;AzYp8R z-~YS&U-tk1-2UfRx~VZPszx^LY4)zF+JTtlWp-R6uylGyxvL4HM z`=Y2y=an&r0?Rk#*^_}tWHG@0WLhrfV%diyCn?jJ9EclvCk{oqC<-jS-x5NILbhU@ zj<4l+`1SJfJyc#kzK7aJ;&L1RT3(8gc=BX8<Q z7V=Zxw0Sudr!Pe|=mNzqCCuK7n4zY4R5jar7X`iiFTTz)f6t)7*7pFT}lw%m`0|{fC7R6OM zzUgn>n*lr$vd{z2e~CkJzueLj`im4*S=@=+v~0!WJcD`Hi&9kOScK}|XFw?ZZh*~(a_ zikSGWQvjD=xQKtk`@fW*+V}bR=2v?E?|t)i`2Gi(z?b{~SG@oAqVvmHmp$a=Z`$a~ zQWt!AG5o9S|5{F(Us3-5Z~Nbb^8auC?aTiERrkMQUoCI{f(rOvHw*|r5M(`-Z|mw) zE}LJZJ^-pS0)~5!zk!b*=5_Vy&f{+E2hP6OQgP^vFqz8sxUSQ?Hi>Qh?*D(=-TSit|EKmpmjaqC-#gfPfUFQm$ZTc?`in;JU*P_4+NzeH@c>w> z{}1H<&vw85!vFue`+q9iGgx=`5{Ht9T;kMVV4;24?EiZE|Mqh#|JU#TZ@v!o|GWFY z`?CN4$>jgHzIi|`({Y=B%-cJA0Ng6Azmnn0k7=<;Tlsz3%6j07^lwmvswJncJYTmI zhb|Ck)VFfXscc(Wi^Hg79@En zwNyYG*}kpiB>yDRM$GZAf%?~$NTzVyF^&0&1xwowM4F*a?o1YP+*UOfoR&E&=n{Sm zL|*3Y`&t4nWYgBw9sMv$F@VE{5tEQq_x8;GhjQ;wB2$5{qNvqhV>@+D~6 zGC7g;EBFlxw1Joui{|>c%+A_s{t~{`c{yd@anf(D8d-nzKUDLuoDF`a$~vSw22C&1 zHa%<8@eN|~3yvrlUl>_cw#SRMQg!7Y zln{mwTWUBAd<*Kx9K|&;8rk`@ZELtHZXkR7M@{G^pTArHieJz-(APNyUAk?p+76ZA zRn2O#QdV~=+vj8@K=JW++Z=QD$6!4rw&+M#A=0VhnUvkHZ5*~9-)xcnHP&`&X=1C zx?e9Lhl8&dPPE?h2awD@!%yDaBYF4<5YFNZ;(J{;`QHcX7y>+0ZxBBZxSvPrAj>PfzZ%<#JeE9RpyR*|buj%8O0|)DL z?o;)-;~v3}T?dx>7(2Aox5$-+A0mgWU#<>X#j<(F8bSAVzJlQHek}Cw7hUMwF(lA- z&I(hJAEAUV_sqvK_qN>P3@sg&ZV%A8L6bdd2^2ro36ecp2EMdf&)nW(9BX)IszKWe z(j5yN@jE->^!59bcdw7XABnPR#e8v9FLqQ>7riGRB;LTOCMnL zOEW9{m--tID80JVd~8U*mTYSnbi-}q&xc)A{wKOM@K3yr=}+X$^q++qqx}qL+F)zB zwIx5{sg}t}x+wGk_C=WUzghlcIf-A<{&Vk}z1`sbxBvC;zQ})n-S=Pj4Q@p-O!gCF zx-It-ml1I;@z48*L;@<}dhQponL-Qqj6 zPLwsBmc+ur3v*FRQ6b*}j0=@ds#;WFdkB|S1J~3--$vZr?}`}rrtkd*%TLYo-7g(; zJ6(lrKgA)JTtN|NvGojwc{wf?nQW3L<8&sACw*}w@UIuZCZbuW7-2I4(A?(m7*}7c zglr5fh2fl*^F{k-_=woVYJIm>Ez_HWEe{?pPy`;WY^E_4sY|K5ZCEPDN-Veam!)#)N1t9$eJ8p>U?Ox4bSTe=uT$hN>1Qi`e}Ps zWwIDL1|zZnr4fH5oF1OsjR98fGF970I^(jJlrxS5YbRs{^i+r57 z#htj)(j3vW@O;!3?wS-EiDvEU>mVdOVF)7?3Y|MCm?7P+Xf*CzGJB1E4D;r+Y~@te3E^vV;*xeI(9diUUj97xpS#JDfAbYvL_)lzL#0u_3M{UaU53s+oiq zX!+7XcOTPYU`E&P{|t(L^eD0yx(QYm!#171Mpgn4dv@~u$&2^Sex%!li;+a`bKf1rXl#fpOrX%qkS;sJfc*^2=Qp2mdRaK87#l z2=GS~a5CKkqN>4o6omM26w7;P+22)z+35OK1Ki+FM#T$3Ii0*fAxsw5>>NZ_&wv_# z_YTA)EgBhYV%Y2EN;|u*7DZOJ&*j@%0yi$R)5#ywqPZh>mJ_fnhBXSP>~P3Os*{5A zMqM+|LIc$FY8hySm=y>KNjInuQ+gf8j4Xy=Q)))7tMGK7hc~b&fZA$~&)EKOQq?Ev_&T8i*IIzehMIpChvAScovO+l-R_>S zuQ4Uk)U#D%R;9zX`o6lAHP-A8YdJ5{u}pThlOJyTJJW$kW)vi0e4W;Px=+%2*j9g< z&vh%W)rA&(X6pL?UBk3ui;b0+<>6y)<|b$a{fV2AGw#FM=z1M#G-7hnbUq$=V6 zcM=S{p^R;I1Avp18WB|G<`)QjcOahZ0ysQ25c*^S|CH5}@GMyc9_w=WRv|*fcO=4T zj?n28aI>=`jvMsO`{Vmp-{b31v?wLGZrgb?+S$2oXT=c8hqu>hdpjLg^>k;pDB64u zvNm7^$Fdnhwg1O*@7vEtir?8bgK06%K^hNO2)}@LZ&Yz@po^H=;e3-)K!{3H%)NlD|o|YLa zFc@PywA91$&l;=yW*6J0X~8t>NrURm9KBjaHPPBuE7J4bWsOMgtFPh` zxJT|2+VKle?y%=U2X1-18`p?Wznl+O zK(Kt8sy(#mQhxPbBjN9IccSF8SE`g(sYNpe|DK!&zx+G@rGbSQK!m1J)yPCkvq@3Z`)n5E?+ zExrxM_T)+5VJ@~-J^=!b;SmTQ5aGnyuwx9mh^;l0$M(4^I&u$Kc%|RX)f0WJsyz`u z{RCf%YMd7K1;5C**ViD?|C9JQjNo*|AW)v!4WB-LapV8rq5nmDrq6HwyT<!Zetz&m<45z?AnlIR7?~9gh5R#otjo9de1HQpIgnS zx-Sez^2on0=u$S{N9Ip^mZPRLFPkAxb>3m+?>E4wKFO8IqD(QEKj&RaO zRm)mLt^vhMEb#(e6ovK=fDkURQ@Mn(D0pw{>SLbCx=E_5AN4F~v_o08HTW~*SgdR# zQP-4qO1SV?8P%FtEh8_iu71=Eh0FC!C7KilqG&z2;c%GNu&e>Um0fS6&-Vg7Gco1C{>+L^D=e3 z%M}H^Ta=|XXrMvdUgw1riTiz6$a30V_q}Grc{NY^3G<{$xp2XwGN3<{ziIkH#*2t6 zx#zM_vFtOLpd8J|j@ZIIXA=9 zJzg0Lmp!lgGN#UD94QHv_=d8mGh%A(kYR`q(RNL%;^54uDTq@*^@jDLd_i9u=3qr1 zljxrIpItwToVEP<3upH*{_kp$7g@72&dOig|7&;eoBh!L>+3J^AAe2$Po1OM$_`w= z>oEwb<)iz$0|C{~2!2f&i*|RV9zrV_VY}4-S2t^Hzas~de!DFByhaFiDe}pH_$FwG&ptn*> zW>KSdz`sSx@w7m8RhJZL)BXW!%j^`68gVGL_u!+|JL;~Ju_x(7X#Z7R*$>cg$s3z0 zKUP;q4)(;Z;gp3RnAK1Qdph?(ECS(0zuvaxF-CZU>y_qnuD1XE{@Z8wm z11UNE{x(33JH7_&$|N-&h`o-fs}b{=o3#OhD!z!8ef5?W%n&Ht*dn!dK) z^hRMSm_c;Wjo?&cy9A5t1W_pt#qNQ~#qSjchz&dt`O~L%==kY8zexIe#1RV1?O=ri z47=FsXhn1>qQs4?cIWP~7VviaXghGd5y)5Xz_NP)?$ufBh&Ns$@gFN-R{jBpf<6p69)xjgWS~fJ8y?77eC>c^D<<1e9jnY}e zOwVxzHuVlT4X7&T4juS`&h@1Ank+8@QtSwd!f0^#LAX*(pnOb zrMB0jt}WI4*V&ubLo%n%C)$SBp-?j*PMs^>G}@s;osP62_i57A zNE0bXAUm$jal^$Zt4L(^eWjy7*xQP^O{0Zs<1lf|F*y9-)wd^~{uW$JwiR(<-RvFf zSVd)bAu(5kF;_$PG=yH?xenBcH8xT!cX#S?Gnw#HWW>QT+o1?qXfPayaUkL3Jy-S! zBE3~xk5Augo*5d%kgE`8M20Us%yoQ5b7IvwCW**BtyDEO7k&(p8`_PHq-+?@j%jv|PO_X5x7=F7Q znUUCslNyN<__}-QNK1S>b{xrl^wU@e0ik5ggZHoD)T`XkAz@d8kR%;@3@vRjPs<^zk~yvV-Kn^qTCxqDFZMqLZ^ z!5sI|QO7y+XbcVaO=hs8pqt5Lc{8rc5`&AZ=$Ji**lRztVTOV$!0XltpFFN=yfw@y z+Vn=gqvC`=%54XgBn$mRW%P8gGmnxU0*4r~>JL@~z8M`n8(teA4R8v2y2{pcqN?m=71+J?X*+V+X+< zuqAH5Yx^+Lv}2PUxY4emIVZQgc~KQ$WEv4Xp`CKQk{I29D^_OWLXGaO)!}ivKr#N! z&}A@AHRLVsHG z@H3zs{c)_(t90%X7k2ZIW-&q2%-`~^unCZAs+{K+!#1s_lCn5W%c_?C#bfs>*wyEy zW$;5#+5oR-E{YyM7o5r*tM-~ND-a}jZx>`Cs!R^yfA66akUZ}7Bbw_2uh}DP_u>d{#@n$-P;`yI96XxiRJ#0`N-f zMBH*c^;oW==bKeSXm$~y-vg(X4nE4}7+{_oI>=q&IKt<2qsV zc#b~5QX|QD=KP``;FMLHVzoXY*s)(3#f_jHdR@BHAUf%uNN^m*rxI4{m`qsFnGTLO zI#^|$f1Nh|?0`EmOJ_{E?_CV;bBUbmTO5LPThovee@$W#S2tU_tjty%ALifyQf)BF za73ErJ@c?`-xaC&bh8F<_~Z^=UA8B$D{}+Eeh0I6e*Cz%4m%;x*<1sMd%8{YQlDqt z7mg!u2*yaQ`K=xd&JMwoq2O5uyaqlQWVU(?U04c7;P4bco(Eh08SQ)s8Hb=z^y_Nb z7&@qtV2r6KA=5owQH~+KlXu3CG03LqFmY})K&&-D-<^F3v8$wbuUTjMa>+Dg;JH+T z;cyuA>i|LV0RX!==(fa)^$?T|CwT$lSG|OI8RIbeOx*0r3t}i?ENjq-_v{G1ANX>= zGxV>+oF=a14^BL!Wo9mHD_fe@51iOghu2lpIz(!B0C?S&Eng=qX}>sd4zCp*Feu@h zjZ;@esee2I1RfV^+$Hxy)ey^pZF%>;PUnv3#QkK#l~%Xqck-^`V1j8er)#t2HAAmj z4JSp~0@JOCM9Ic(0CaATD~(dJY=pbg8NM6F%GiA$9*VQO*;Q2x7bR>-(1J10+j{U$zrrCNz#f&8I~RYd_&Z16vK?Y7vA6y$T=gOa&yi#;O=rLknP8P_>R zbvAa>Q`xd^UYZ&S4P14{pMMt05%7I*KJlWdY=gD7-=PJ~#bC^YS@`KE$ArV91i(KZ zlWxYe4vw6}qc2Bn2m4qY8qoUCfFZfk8>l#}Wwsd0BuU3(%{O}wF+F}ua)@r$`0()qgkxR>9FR9BL|L2x{GK?% ztl^mCT7Oy&RUYimF*@)`HU#57e5$J-H6edgK}0ZYT>f{NC?*XC?GknLEkrUrMR_b# zjvZBX^&^s-3X&3WgbF1bNNie@4I}Bt1sUeu)sGnuXgHSNTe@4yV22s#kkI+f)sN20 zdC7NLg&)lYNT^e~5F$5y&$w%#R48t{D9S_EFe8wL!)D0))J73-5-~vifzZow_$^*& zPA~K+w#-Y8NrMgCr!F_n2N7r(6v^^B0p&U$IRWzzE9jVv88sH^+GUhHL{C3EZbkS* zr%43&p0I>^DP^riNY3as+c-|g7LEpb5F8+4!wuPOv=Qsi{`7@)mgnqx7EOs^R>b9U z^iYJxpKa0`_WI@$9jA4D2SEg<@y5MFrAl?&ce9}AJ2C$E?jdLBUbX;nyUrEvfm0>*Hz7$@IAqy2W*p?v#Bsp z!$*tSy}ruaRQ=1n#Mz}@uEAtbCkx}yp8o;LRswVR66Q3}n&In2|7a2rq zhqZTeEDVQ316Chdft8f%%pE-fT+cRBgm~O~9^2g3cQ4Qa5c;qIQS8#<=*U_4UL|n2 z3&bqGm$0^=8e=-CguVO8k?;gYk^uYa^x9=KQYX{n!@ z>g&-Frb=p>bSg)p_qw7Fx=2j(kFp&0EOp)c-O?$b4J@j%sR}u~P3tnbR9;snwlYp& zBp%;W_e0gqa%=1HJ%f29p4dhs(R(7E@-Cl>C%qraA4&+o+3UeZG9=bWG&8IgzP%+o zdiTwPYj=b9mI)Vc4=}R6jwg4D8Mb$Z>xtQ#j??iqT*WIo;kNBvqhR8q)m95Dq2ORv z*e_UfZXR8TZz7CgM2Ed=D5Jr6xnMj1{e*F-W)k}4hp_t(86WlG?PnWl$Yh(*NO1PE zmNmvIqGTDoz0H>ck6kezl2YE9ALdNyfXS)`lkz(BQOBPnWQL!~@|An}3h&1B>am># zU>r$(ST`oLmqnkMQJBqS0~hcU%oTJWiK#4Qowf`!bu}|fli6f$eAc6QGZjWT+K5fl zgj%9YfgT7H|1}_OvxbrDbHjl{3y%!J$V=uQgVdl)@(iiwazy{^<0=A^R;M#ESP@IL z(>zOavvZ)oA;xV;95MVkLBusQ!@KBf;8tq2C{HI~vhZeNrlZF@P~G@y6Lb^OhI55K(^{Bi{+pQL{&MvRsZSU_8dm+GUzyGj}R zqx>Tl<#=BitvYSFRQ|m8;X@;fNpB!}NNv3f9s%MKBcmnw1ya3H<)NY6$M+q0T#Ds^ zu06@i9DLvOHLMB10d{a{H2?=|;>+O72BHTXd(VwAqhni~6Pt74V)-&^FQj!j0M)+B zHIInQ34aBw=lVj}Z|iE7H{gNRR0TIdSo;1`Fbb8pz+JSyb1#RxMx7(hfvF4DAA@TT zV(xfDL)`p$IQU1Nq1{iQ(#<1jTiw`pcT@wn=Uu+dcM5I6=PqO!*zSQaHbN=$3#I!7a$ z5U{O$;hv(7G=*ji&e)eP(h|~;g5`i6r}*LW@x2AL{NZwlMJQ|h;gT}wEE;GtnpVs!G`rWmz5#G1Tm(Y`^Vf3gs&Ehh=i5WED~=H4 zs0(E8<;fq8|MdO)UVk8VJzIpX^U#1g!Q5D}@Zj8>Cs?1p=b+ZzL3bQ7W3czebCh?Y zy)i>17F_PYi%%Vd>T}QBkH;&b;dMdSJVG94Y1YTcV}mg*-2t*+GzbHsziE&=3S|7i zFn7@)cMl72w=%dL=L=%{$B%4xu;srNx&i^})FJ_D?K2iL3_}_NW-9uMtl}8|Z|QbF z3^mwR?;}8(1de3NyHXVy1@i|Rl6Z&bsxlm#x_V#RTULwqbyd>iiOogzjww4bOQK0f z7pwMIf7n!Yn_S(!t@EnR+dKDpz~)b+$4_lWdo~36OYdyJ{T>{15jVB&(2?#z6h8r0 zE{H{_-3O22xTOkx*ZIsiezCjK^+EF{jc=2+j!DcrmACs&-U)5)NEKa2HmsYMQ?~Gd zV_$U0Zdit!pc~OWnj3j{5WVwhrf6w~CP&7b0iUMeJjVv$%1D&^V+X`3LF{`D!kr^9 z^#jMqjt0u-$65lgZQpQjzhK~N2*P;X>W_)rfl)6wm6&s-fu6*qrrjFEFfxqqqQ}FV zIFVph#yCKYCOLRNGb%<3C31m*4q{^W_WZWCncD&@`xKN_%D>)Fk3mJJuf8@RXUby(<|0N3 z>&{w65M@=(yTb(0!><0CGpZ5Z8-33%$gQB7AAAONcSlqT)}_9>0^K&rzKTMPGu)*% zTM0UBsx$}Y_n9mvzWK<3qkpcy9#T3Iczt?B-Y^H2hWkDcacCPO;pkuVcwP-8cGeuN zIs@ZJc%Mh_t-l5hkp9~{oft}alwWw%Dg1jfO;erUnds=9m(#!GXhNi)ydW;ZG-$?< zDd3*%5^9rp3NzXOD3ftbFP!pV#A-UjTC^|sCF=Hhpbeq%wl7;yzUa;AT)$oX1&jI; zv31mv*6x`SG2biR+HjAGc`l_&T(;yas2xe&_?BXZ5A@y#MscS;Q+@k79Qc@VBu{Ew zWMb$z378wr4BdHkI#^#dzlc&SI^WR4f0oW8>k+&l9i*)bm=os@X%@lirf$7=awB*;ga{1TC_pUT&nVkQ1^w;6V)BX=XTwV4(>iirJf(H^U z+z78wH=}kTCN)gr=x|=f2r<%hXOx_$+kZda{y)3h|Ng`Fhtb8;{*KdfR%Q7lCpzE_ ze;A(sb@;=@#na^I@cgeoTwMJ2aerruT0tAr303`S_VDEDLIk;1bUfMcy{3Zm_*8Cv zW9~qCVi9y?|32TlP$>roTi#Qdq2-AEh_x_y7}-DRm8M-r^^w>cf=02|?=u59W;{d! zZ)*jqaN@?BbGD_DF@XqEi<^SC5Q?Q>t77vW-MT&MrdP{}{u7ir`tLl`f2HO4x~lar zxHnCmGH>54(}U-B*x9Bp50uloMHzp3qD zmN#=W331H_buo)LmdQ5F3&-Y37DHX}eAgK2Mv560@UssCfD2mAFdlI+yj3iE(H1s*#xwa13gQf=ozFPE(W8 zWMiD&rp1kiFDP0U^lqi|t1Q;JzPed-F%C&BOJ=((3zG1tvFx+KtO*bUzC0ZvXJJls z%c)A3?a)eZxf>7%Zk*FGiycNvR1b?6FmflrSn0Us;_%7O+S;n((9A3pV2U;(KWWHk z`4vc6Hq{8}#jMLMx23}Y}6R^FKJ!oRjYtbfs(L4`q~tCZnE)>2I&TCd!X1hiX#p7YvIU44 zJjUAV6k-~UArT;$27}gRURPIzoHfSDz>eCAu1Gzo6L-}D!Xtn?YFmN(zPLmg+@;7% z1?5R2E`Lvsc;8-%Hk}^n;hSU6hKlRaLXGea+pHQ+0o^h-ilJp=Zzd{!1ps+pOM0@x ze(3i@<8fU%lTBM!cdC9re5N-BxDIu}S;B~(hdTt&o0I916F*P}vS*9-wQO3ML4xb5 z#KZbf=n+0r_LFd)!P!M_^lH-%_=&>KI72XhTgdv3(v?^BaZw~`QRtsd(jWd<(16^-dUh|= z@#ltdg|546Sc3@$$od6qd*WCx#E4ExGS?`RSTqa=^_##{dY$N?`AA*2yUwU}q=MS!~*gy9owD>0f!rMkwu}78HUns5xE8vas?P*Au^CprSn- z`HML6Nrg)g3^*0pM*pTz?=%W}%*n=n?Du0CYvu9bh*bqg=@Mp4F!Z3V|&bR8l~;ON6VANu|9xG;W8 zKrNwm$_LOPiXlfhh^qE7Z|1UW@Hx46;5+m?mmAiBKL&Obak(7Y=lOdt2ua{ zT=XuC`S`gJs94boHKbo|U9bs28+7^?>%rep3o9vcnm8EZM)uga^t-5Tw zcCR1I3d}jt64`a8(6i-HpzlNNgJbC5Y;gB_7;onXryD+Jd~6|8(# z_GbeTuNOFsi?nI96)Lw5eL)`*YoE)my&z`Ig4=#sS9b-3`x0ny>ZK%lo?-0+1Ffv- zm1WFz40KoZ6*069U|WcZ8;NkExkp1S#Ovew&~JXcV>ku0!m!`>m6?Do&`}pe&pbw- zR~1}C?6s^;Bh~%SfvMO7;7hS41SGc6CiDJ^&eJSY9Uqt3JH*|e%B(V@@OHA(1H=tR zcSx$|=~4V$?le`QLnE!1uBnZkI4ZE&uS42r;>fGi>xq$5^wUqG*K-c5j!7r(O7Laq zucH`7=h%#XucH`$aW|ruNmUmxu5S2C9MP!UA*px@t4Huo zN7emBgLw2yMu9Oz;~~shsTr%!OnYV~@r|>Feskx>!mjCx%cD{Kg<88+LwWSzvA{Ou z13|p39!7MF>Iry*i}Yp9cd@Hg4Gf}OhuQV_V$AuUIyAXB2Gg%A~$N1Yxymce*xXDg$d%NdQ z-;J^;y-KfMKoYAkYL+n2hv?^`98K8>Jub476;->FU^(H2-0eVgW}{s9uto17^zRav zi?q%txvQxl67s^2U#4hi&zJbt`Lxwy`P|^hw^9hoZ#M{H=KV5Tc91_fBR0yN)-z z&Y*%#`rebo(_8VEit_TKfR|}K#iwc0?LRl!u-&Fdq?P#WeA>2_5rjJH_2n2%2&79B zQPLQkxPfkb0ha{M-MG(PV08a?NO>Qz%3$adAI=pq4bDSi znm4Vi-y6)}&i$h-=1S7X5EFT^tby~wvM@oEn7~2Nwf@==qQglwZ8~Mz0UrRnW-PZl zuqS}yAamAMbvo59G-{eX3G&F^DE=DI>An~RV*O#Z;2gURbZjCl5!`LOWgZM2TdfB! z%k06RWtpu4T*&mJd;n0azX3L|-h;70(AQ#vfIkcy1Uill{yvLP&p8t1g~QE9#5NDu zh7Y20=e{OGe%X}m*<6nE3GgkCtf`&xdFuPQ#j$= z&VKqyban-o|3_|p;UV_gxpl>%D5awV`%eFZ#iZ0@*=IJiMAM~#P>X4|;aE`>T7>PaROa-l-s?_h1=?gz5Y|E-12jbtq z>5Cn)x9fofNNtQB83KKaNlEN zT-0cpbGo`OU9C3|d*6hk)t_neZUpAvz6qenw4p2Ha=f_8$JATMFLForiS+_Jfh)zUA)ky(W( zEQJaJXI7yD=KFk>ms1@QW28{!r`le_O0WpBL=q!siwr`PjKn3I`4 zYK?Tex2mr_AO14F+;0}`iuLxml7G(iezRyl?}EGB(l5sR8m8$VMNrH2oRrHCX*>;d zJPdu1-!CIclkIH!9kX=ihO|5q_kxIN1wC#IPtOllH>`r12&;u9ZY7);t0K#cM_d>v^H(*Cc$j36 zsQu3&fS)wo2w*$23jtU_Q zLZUwFee0iizGfoU7~n?3v~;i`I%)v)x>-9UpNBV-Wo9B2h@)`$c}ZwQonjR6Nw?T9 zK<_W@pwn%GzydYCHG%OWz57-g5IhmwY)RJZijm!6hLZWE_5{&E7;!K3yKYC|HPEpo zC?3)-eu3UNCPg^jVfP{@AsBuuWM=oJNw;n^31Sq)g~TCkkPDpl6TBi4dQd;#G&-i(r+wtYIfX_dVRHVD4`4#qLDI$~NjCVq>le znJXF54w()Ko5qld*Qs!YVKY_mPn{zTdE|7ipao*Um28D#B@EYx|Lh~brvjI12EbJY z#h4n0*NvP({q9q1NN$1&yGfl;YVLi7x=A?bcpVz~>N@Nq@)eva-k#OE!}O9hPJD|p ztIm+6!arXsT*BWcrE<8N%NkxD@7+}}`cTKM4E{4PA)>BbD_T36V<3Je`~+ZL>er_a zN8vMoqgcHy!x_d$#%&1ITqB(TvV$HFtzICSj&VnNN#gs_i5?k6H;Q8$CxabuCiP<8 z$_y@NP~2wE6{o9ynk7VY91KqjzVM(cb&r2aT=lY=1=j-WCD3!K#MrE7emc>Jhdx=l z%}z=$T&`**IjUBhn(|O`shem~Q5WltZT~{K$VP{bLXY_=o^k!x}ZI{?|#;HbdFyW3q zyN{rbgJj9BHg*Jgr_?6vy<){f=bY|wb{$@B)cfvZj9E9u7!2Ag1G@lEi5eW}`cU<- zu);LHQ`dlISd)lXU8oVGM1UBd!t;-C~ z@fqg2Bb}DJx0~1L>%_o{<(FpQmLX81g@GrEEk#|F8-jMG0^jJ)bPSv1e0TfbFP`>i z&5rYO#LvNiW-2sH=YW(Z%bn(VudU{=*DzZI{87kB%hX*1Fnwv;YR2`x8!XBGML&{r z^IXqyAU1+=VO?sDh!`>-1#ygpkJxQKP3Nz_DWg3Ukwo*22P9V&PTagV~avys> zd(1_Yyp}%geJ`i!_%2F;h^(Y4vJ(iFBX3Wfv;&W@1TF!S1EX)_!UjkZtI!kDla8{$UOv}p^KMbTzpksr^!g7JB__=C)?B9$2k0-_HPnl4 z<9qPZ=R_9IIvseU{Xzm>?S=iUA94KkIT$>BX|qm)t%BTcL3ZB zN}#pxL_DLiym^;qd4+K-e61Y|WN*D)+|;Ow+|*}IV)iW$(3ENvuIg71bkEmqgibY~ zRkij>BIK)lTNunzxostSB=nm2=w|zlq&9M(slNc}-&a*5Q9o8o12n|_vMWJN-n;-{ zSJkHwuk`92<_!d4n3|L_8zI#8@F?b+8)OuE#1V;hgXffhkrt7$?JEbN48y&g)jm4c zdkhCCCl_II%m0|t(ciTUA5%;mIrOp!tzXwik9+jRO`XT9j1oqT`t;yt6l z#XL(}NpS(Xyp6p*#5N9pdHR9@f63Wa6G!B2%4QMW=__5i=}G`8G6v>Sb=^C~|C%`0 ziT{-Z-tqG^7~3j;IuE=ut&WdO!HEyd__Dca@#s)^W+}b{n-8{oIPvub!^6&D zo$Id`cpwKuVc!o|?(&Y~$FU4b;pF{GozCYn(_*so3zO=G+&M7>nsSkh;{iL_!kYidv_8<;!ws811p~NSC@rFv!HheqPGjc@K8b66U;ALR=x0~=?2ao(NQ^^ zI1=F$DPlF3fLz(5#UyTuCCNFHtuh$t;mZ~B3^e0fN)x{sbN8Abi?*6n<3+;@=I8=I zzcpj8e^zB%SB0srxODbYn!wUo-atUmjK!RumDR_z$YImksMNAH?ek`q&drZj&M29$ zDk!STe4H(cHlN!#)icnR=pSV@tFndt81`DtEkak9KF9 z1ynPSSjWzS5>JII+)nA^33PfztY_XBxSv(;-@r|~ZAglE<7G2`! zF7Afym>3YYS|lz3V=-ZIsFn_%;ayuQYqQa>xZ%v1?nH%k@l<*ScCXj(x)8hgTK|@N z^hhOmq??#+XUq#1!8DXd!f$dhfqTfnTl8+O9-?Dat*7jxi)x$}_MN)Ox7XJoiCr%i z15^uuR*ayAI^DqO^TzT2P6G_;;^ZFAz7aUQ$ofBJi`Jy-=b3CNvIW-2%aYf?pICz<9#a&&Ta-c8 zMFjZAw7EWDi&XkWHSnJjqT_4*O2pzEL4k@-4LNa=Y;i3f1SN~J#0|$m{0B$_yebr!AMsltl*jP`8~nq zZpvIy<)$-b62usEZiiTs@`^r19Eo!g-O_&5&Ye z*dKR-j^x6<;Uj^yj%bi`cp)d=c(st32}oCOaSFofZEz~=&|unl_pW@~);=<|#7La$ zzb{ceOnsf1-8 zWIe{j3*FiyEwVv?oMm2a*{)+6Oh1fu!mBct@&VD>ObI+2-`pC%;)HTZ1?rU{6n6#_ z<>SGcNtaY{3gYStW6^qoEG%756TtR2mL~A0Aqhv!yssACD3uwV+czg>0j7zXXV@d3 z-KKNEd>@%V51h1&Jj0Ly8E2 zecYWWV#&24eR@Zrj$L~4SMSWD@HQzb9T;M#50NZc|PZ~&Bw>_Z1H}&@q?{ZspYYE^E)sP_j>~C+>E6i zhd+j;eqk9nL+?2nNhc^&`pnBu+d!V9$MT_c{4nMt(z)o+SiXh5I z&*t8<;ojH7e^;V-%rburntGO5-lPp17~9UMaB`qiSHUWfz1$gi5-bW6lA$9X*}$Z; z@BAiP#a-s@-AOskOXZ&zCIuhFvyct8n9uV|ZQ!b)yN28vf@4ojg#cYZqQ72JC{xHY z9SvM-Ww-SiD0kjhVBkEk>0!LtIvI+o$W1x#_5ht5G^u6L!3fuNmZXj8iyjpad z*Jj}7dULP_GuMMQ$x{ZtZ8jC`?1x&r=#& zNR~H7ExNeP+iQ@7&C(yMTJHx+u4&y^0{B}_MBVsj<8U)@FDHc(CD@@~T2Q8^O7ci| z83vBoEdA1M@$`#wF+(O$`iqy2$cBIw@ih)3>U&kpx$wyvfhAB+$6vmm`iD3tYC=M-{Zd`z0Q#$cylY;08fuKB|Z1B?2qVs(>^ zYYCbXR4#Cjq9RA>QPb8sH2$DxL#c}dg-zm6>>h|*{2r?-zTrURPoJ{*fa&}kzMkh7 z7m=s1KE1sez+*~Vzdd>cFg~V*YrOzjox?g8TxH%su)?%p$_rpTE{$4w;3>!lu7Y}i z%IJaCB@fsatscI#5(d`GegxlU!6IXNDlP}8lph#v{6MSW2U_7iP?R*lGjgDH>x1h& z%VaqK)%XCE+5@es9%vo)04JLb8kx=t*)#*Cl^vkUe4rKS1FegtWIQmdlUHxw|M!PC z&;Lu9oDYg_Cbg7*NBe3qVuBWGaQyCFR|Bx;9DbCQ~fSLytsXB(S*7`D9;kSGT_ ztihYy&916qWfQEynh=_J6R69@Ha-X?Jycv+2J6aT ziQ2wPZ{MTpj5l;;ogSLODyu2-u}uEo0k}aP@YB`U3V(+&@e@q|8vj)A)mP|Ch=Q8e z>Fb^Fo z!=P#FNGi$e-1vB$H*J04smI~-Pd|yoRsb1iiNKsknw`i@LdMj0Coo23`sIJrJ-QQ4 zydfH)Ty1R0EcAg$J`BW|%*a3-?Anouk&cJGG-PspH@}u;+N!br@Z1Er4{EF%ARiM0 zI}p9?$9sO5{Jx$3Ja5xY5CHJOIPSPjcKhDUp3=REw7b`5n*b9ZYMNaKUL1+bs(gHJ z$An*(mtrI??HPTYHp=YM?5zPful?EVGAq*6#TXXMGs6ZVGT#qb<$gEIQkz!@u`Tv@ z$hsf~Qb-8>D$0<6?b=^tdIOiFnH;_9!h~(~nmjRYJ}5hVfAa45{mF;#PW~GV^zp<@ z)FlL_WHnfSS*n93ua4hB^$#nX!f@df2|+M}0p$@jDgBhO7}{-84nOERCV^6DAB5lc zlSw&HHlo0;m^;{YQL!CbUTcDy#d2uhx9n6R=+A)g@Bq^K2?NM<%2Wl9RMD_V|IUIw zD_BX)tV4YZ?KxX8d!mnyZ4(s@eHDw29ip3XC9H0vM^}~bMt58_qBX*ZZf@_cVs^<` z$wi(ax9h0y*5T2)6)gT)2vMi0mmH%DF^smt`LLFhPS2R(XgoUEHac(&FU&jFeFSY7 z-`DB*#tXwE_$F21(gJY8*|A19|16UAkhN^YunnNbWm~BH;}*7dfN^?@yJh>k z>t_Ow-YVX9aF(n{8zM8?kKIi!Y^usVu<(8y;fGj!x$#Xx*ZlyWBI=FC^y(b`Pd|Bk zvr{kbhg*ZyCWgW=7hq4R`sP=es%Zh*290SjU;twr3UVj?$RHryE-0QeZv>SJHq6F*L-VT{ap2dQTMNY>;0-T_L%0K46vi zh9ihevuqzjEl{)f;MW%>YI8pNTo9F84VO8+J^d5otnjtq>_{+kja+JdPlKg;MDmNV z0n6?cbPZILl`oiz_QI{B=K|OXGuxUVK6DH8D53-zD5;g}1_?U>31vSLuL6o)&=js{ zUwnIL=*qOHcvzzm7l}ZljTn!AdCaYwW+U5R zjw{Es`2;)rUIyo6y(sOu_pIZ{d*)m@c;c^q1*%HXn@QDPeJQ~Wvf_?1cMCUY)whgW zM)ytUc^IE&LptQu(=?Sr9yy4V?!M%s&l_u`SuaXA4p#G8UG>1fekbpm6`GIB4m^|!O=e0fWY2g64q_zqEJp1_E8Ax#^7zJ9!p7D*8|a;N(joAqq}xAlBzml z$V9EKapV#E8rXqY2?H_0U9W#pj?9>Oj}H#15~sQ*LWePYX*%+0*fZk12Ru70)turH zV%S*tV^NwvL2o;jpL+qlXYfH3rEFyprk{SbaUyJXh-*T8ETh&-{wzYN1>cxxn2o#G zI>x9NU&32f&*uluif86MfiH<#j%EIlAI1**sgF5gq#n94$u%ALcLp4W2?Ha}3h2SY@2AsjPqX`O_&f2m0dQf<#yJ?bK*)J(kOL zu(ERjJ*d<2tFM%fIEfz0B&CRq?VX$y>iSvHl2Jr_8nit)usA&(I8jBELISt%k#|F) z900$JBG+-!F`e2^D;l7#@1`eX(j0ZV#*&Yt9WPPA=A9xV0LN@UyeLRU^r!N+#z*)g zcQJqZ2{w?&{09e!0|Qe2=+IrG?hz?lZhuh0W>NYwoj}FC=j^>TOey^~nCDS8)4zZOmvp0tY zS&r%RqVdlQf8qG5P({)VU^ADcCHN7TeTxPR&K=*tk_Gn!Yj&MkN{aq5~1;>qF;Fk zbEC}|6gjwo+oKa9!8H8Z2i!}J-%@ZgcidBaR?f9@oi@(3vdQqP+Y+z2){)(MfVJX& z5bWC{E5{pg`vI51)U)?G<0m&*)Ls=**>^PDDjqFN_l-p|TD$IRYg$efRCb*zqg~Y- zx7^WJO}rcSIyJq;)>fx2bp@5M;#DDsw`pA_muHx&SgNr2Rfz@=y~p>=xN6xGlQb{D zrdJ&`d1J;fyc`IRHCuLuT#6y%=MMZOr5E|t#?F_gt(eazvvM=+gep2>JiV=H>mHnCZd8ZvSCLP2zG#%b&(%3?PKO9h87>wp1Nvz%>Ou2fqujq* zH#_))t(8xLNF->7b%R+PM8byZo%mTX#Lm%y;l7@^N2-G~%6?!O|9ux*9+&Im>L$8- z#byxs;pQ+k=$~<#$+FGcJH~Pj)V%zy9Xv~5&RxB#*-;`m*7KRfe(KHt|u#E zB2UV;R*&%eFSPSBXh$4%kPz^f_}GlTb`@zU`#g90zuuD;ZAOxZE&X+xoq|`Godg{1 zc>V5rPk(!>lYO|O8CR*EdCACVFm1_t9I8n;_`?ydz#tjRSllrjIxOTyNJPQnAC%_E z-l2@2?~*TSb(2j11?WDmr+v?{rMjZHqKe5nhzR__K2_DSNs#?}-@p0I-M=9(_Su>0 z4VbM}9EYb6vHCl8D*9@?Fm3?tTf+K)SZq3})enF$Fqnx`P%(-?j>Ng$Y3I8aeZKR~ z_b$+5neRn6M|xGtwQ)T(8mlzKeMH5q{K$1_m8F-zb1-=X0yVwHv%kXxAzZ z2x@~zCc3+6VVx>m_5``R9dyY19QQaJ){+VT9^c={yX6{DpXCTT<$cB;RWT_PTDJie zqD5!tskz!fM~RO8TKg==v6gCtC%%%wpd)6DZV*dDAy++Yn71{+SuY6P^#{=8#M zgU-PWx<)Zr*ZoDOQP)Oh-d?4^kk$0R*7DohYR2q6yM}L#JR@JCws4Vp9q4ugpmZ45 zdafV;{PwjQ8@EQ3OUn2tk6Nbch&H(f2um3vdzDe?GGe##qAH;Oyei|SB^wd1qD!Bd z53E-{XJ;PU;)WF6L=^7YJFQa3s*jH-Dv&ZH_T=+{l3PieDDaU9f)tZU*(a?rB6)ld z4VM_dG|kIKTvhG0Xs;#ogK-139f^)$*@$X_6&i?>OJSJ^3exB0t8{(|?`)AaFo}lV z*2@6|f*oIraaxK(rWphw%u5&*H9%t=%8o*+W`d*JY#*AQUZ@ zWa1X>*y$B(-#xMq@^Uky(HnE=Q>V_Jo7nkPI``V0Ngt9LaHRCiaT-)T?04pJRuy); z)zvqs+wgxuniy z&q{I7ef$p`zm3?$$?D9V_a;N36Wh0B9IUt<27C+ly9Jc7-Z+zVl{ReZ<48aAy83j- zocNVts{^zD5NkxTW*Da>#C*MyVwPt1xEl#$lc+#1FFPfW!LnN#+t3^a4ds)VZ%jy< z#83I8`QrWQpHD1lZa|wV;=!l9X(@leCuNv|XpToxaB7EPp840XE4zb9lg$p1pd(%v z^t>C-XRhV}CpeD761NL-AEMrc+|I}$MKvOW6mGSPh3=DTt|#tByC5$Lt(rz)MPIX_@%T02&o)Txg28{AoyR(sFa?ss(xj&gdjl2J zUKf~nb*q79c{7K=z79}b2tXyp)im`m7`y%jdDr_J_H-L`b8Gv6>{w1X>yi6&f1sl- zjr1S;kTDDLHXwU%qve}t64<3^ARwD_0W!W;&q&Kh$Wj3Xbv`t;gNZXWA1%}j3 zHm3o|=jyfhBni4x{E;m-AR=EL1ygBt@4_Mt0qIpK+cV6a_xARiYv+TYdd` zmGhKC)1taci_`3toK<1E3mE%xnVpv78WRAWW=>jN&LQSa(T~}Qc8rc99Tp09-)6B_ z-P_9|~0crsvGiB|;o50r8pa?(40;NZI& zy#@JHgTXcC;h!#fbikl}j^lide>TO!7)H{Z*+)HbdQJX!wSc$elNKds=Z_!Xo2ttT zlP(04j8clZ0&>luh^?o#O;07)5ZAJnBXQlf^JcVTkT}fbN0kh+*?D{qV_RNoR(EZl zCzIo9=hODA%47ku1zHC4E$NvrjQ=&cxhY$$ACT$iGRQ2e?4lfpjBt<>+@w&Y2tSeI zkU1LDVry>L81M${aNwNmGU%r|4Q?>J%g6V2gkZh);RD7qzpjc*)|dX635LlB;KO%z zF`^lH*pax0=N|*yLmxu1G&`Ak$lE+Ew2`=<8`tE8<@MCJzb)iKzRJgS)uzpjcbKqa z5DCNQ4i21?vBo?+ub|@hD4LdabKXpcJmEcgIk|B}Ea){T2Vp?8Y=S9Yu0yD}(1?#{jRNChio>OpOS(w(1Y)!T< zdNrFlZyT&QHUkRk%7!>ux0z*(CRKf#*4fENNVU#_)Q2Bg3{?328lMx6CA}ICp=w>Zj$)Y6cerR(qy}l=}lq|NFs_Y(Lom^1XR2=d#RtP9zTn4H8iU zhN=v505`I3pUVkkRrY%AN7U!h&eHiW?hEa^&+;qag1RFh>dMq1ZUqG>9uv_dPxEdv zi)^zXT8wKZXbo`O9D5!pn@dfBVszl=^>jDv+lAheA@8Cly88I&o}V*Ax7Qd=#hpsn zsjog$C*7T@4M{gY-&QQ^UWlbFbJN)5GJ3QxNS!Wgwg3>lyBec;fy&RL-*dez|JVz} zRU!HqvuTd$)vIiL4OG8>TgduOr%eo3W;qbi_N%6)NrgL-sTf+$#dP_CR8;Ur7wnQ! z@*51w*r<_>;4#7Y(%z-};Imqj2Rs+@Y3bx}ryRDfR2m6LeHi9tLD@(ByL^-T+f-)f zO(Tm*4-~=bU5f)clf^`P`i-0~P6mdKhw{p9+*h>iZ4~?Ba6<21zhf%oNscVM5X!D}ksY)*uVpS42xLF6Bsq;lHur~{J zp&KVL&AN~;FJka(Br6ijYnh2;*Q(8(anIg!;Mwy>OSZb@K6wGnl^vUctBQCn&ey~! zC#%|C-w296(hDT3+OxZ|O+OKXvIYd^<_dveF>tT@8$p?;O@rok8jcP-tUfqfqkAax zc2P%ws1F+fxy{S0y0tKZ#ia`C@Ji?J3NX6L8bB&HD(6{%Fn|krrRswQMK?X?Krq-Y zhasMdJv3YCn{F*=3pFF}lj@lS>rJ+PmHn0bx+%~BqN%Z?KU8pjA{h07$# zp#t@iL?N6{LMKNVuwz|gf``oK7|@Cb(E~?Rd3);Tj>+rR-{*?Oj6D0y)%vxcBF%r8 zbxk3?O~I-de1&5ZT(nJ|x!Ys)5%lwspkB?|q!iwr%B(5y6m>&!>Wag>c~O-mCW>W| zu-CONhSg-!$o4OJ)?SO>i#<{gs?tBoe0tqN@dki^D{9WJD@gykN&g+>wtB^gPy6ND zfJNbyn3i<~@uROa2?*#O27<|(7ezk4;l;mvD^PDl<&b`|s*legFYzQFe<$zWU#IOK z)23{nOIf}J9!+M6E3(VXTW{u{^Bhi2_I^BES00((~qlC zlWlZoduKWjyf6CeWGCn8_TMl1 zCQCDDa?!&`E@ar&n^lVjLijh;OlnONLa?3Y(Ut!Bdz(F$Zsgr7^R8wLnog(T z8Qf?xI@gRjMD@|!H7H6Iy91$~TFP61cRNg2JqIufRDnq-@XmxP>UIPG>g934XYY!` zlsnF=2k_^*95Y^sL*X?KIP(J=zsc64WDAJ{YruA#GpKX7%Q!>Zk1(qHVkGv0`>SKV zU2OMe^R=!2x#z1BJ)#A#ONcC$>#AmZ%BkvoWj-fz2u6|?na*r>FZ$g*DTnF1rj@hr z-2HRj8@F}gr0Ylv{AVW7xUe^#W%zk9mvzqxCrQ#bnVrP|hrO8{s`o5z)HtD-Dhkow zuD^+arH%indsM;sq>=-4H&83`EjPqg*YBd z+U{Ocq|G&a*%S8ia z+idt{ChKMlBIpsYc#f*fL%q%~bR+K^rcOC#fk$HEw^3QWqFb16VAF>#xWIkG$i{T1 zYiQ0PeomMlKgaSZZuPX0=|N!pwBEW24S52IcDMYtCZUtTqu-t>Sp7`5T8#gnp}|tZ zz&O(V(B|n(wr;l1YQphAr!KliF;{BVcy-sC*-h~Xn(-0nqltpC`E}so`5DKV^w*6v z4&QzMF8%eI%2wNKt+QrhOPjD*@y4*tHSRHf@#KlEQqWLk3QP}w4awqY)MW(Mu;JM* zA2P=M$RPK<{7JDPx-R-S)+VrE3ezQ8+y|O!*uC6ZYL#`}LT;W3w|j3W8JZ1GR;O8B zF;eVSt82Tv>$G83H((>$b8hs&q6e!)wzn_c0WGdpFm>8W(PWUdLB8v}hd%pP)hA$s zX*T?QO>^xOq!#Jl?@+ng8)Nig$m-F{%lSg92Z*3RCZxqds3rjACRoZIIeP@+{dMXV zJtH7Z$KVok3LVlfXv>fKf!U8qzaM$I#wIn%i=yXwou2E^uHYIv40)`OBCDwLuz z@mF67SIXm6-)yOf?q-Xk&F6(<4rmbJS{-)dT0Cy)n*7`q>i5G(jfaoOM7)gld~9wUv3L+M)p-!FD{7u<=+Qgaoh-N7P;g8u z_NRH4wjEazESPe9G}*bM>_K=?n@>X&-X=Rg40jljYj?_?c}$WNZ3w<7uM~E8mNNfv zNB>ka4!W1AFi^8 z6!*89YlD#;tku?`=u<$!$?kzlIR`IKzGr#ob8QL3X=4J zRD^-qx4NoRLjY7y<(h<;3G^FOI|nhR3!mgQD3|KunHC>F^#7c5HW4D$PI~JfF%j*G zv&rz6-7i9Z9v*lS*mv-N@lRWJb$Gj^|Fch)HRlrF{2k6YA%qQkU;eUv=wvC-4WUl5(eW74iks6k<^$h#N-z;1Az2*Sop~hY(B=dlbm7=YJe(OP{FZkg7C6l?RHK$3>Oi1ma~ZWuDSepG%*Wm4z~pvErS1EhqUW z4X;lxyv?on%Ul_gr&)Gd=B@E&pbjt3AK&X9pl+|fydWVbw`YeBo1301f!v4%yzyQ2 zHWe^y`g+8kYP7M57uWG`>}T@1;_-SNJ=Z2pmi>o$H-3tFHhyY9mos&sTUZfCD3Afh zACD|>Q23r+C8NYQA588A`7nmryCV*A5BC_oZfBvs1`7Yz;uQUL|M>pZ_pyBF9sV!Q zBTsv$8E?Z_WC#P{Gp`rOIdqJOxjDL;q-oO{Lc{$fZ?BWy2$Ii~ZDo!$Xg2C;nH6&~ z+P7XrD&0#|J2wzjolo;JEq<1s4#kz8cnW9%hDGu0KIWM#l>|h?Mf2RNlK5>LxA&>k z4Vpmxy$xUfk(gCPvdhkH4|#VUjr;WFVO4($ggQMn3Giy^(i4 z-!u?nd3`7E{!rEb-yf=ui7|U&^cFK{F%nR>{2cqdSo3)(KS9Ey*1tEpG^P8St%AGH z+5XllHBa`WHC~@b3K=NF96{uAoy1Y?8*1tp3hQ0oU+F1F=w6grb)01~dr_oKBiTCn zUo5NbeLrjOifBXn;5yH8hr<29qj1$((6zH81i|C{IOOET{BbGNS53qT_0YMRV1P)O zBbA(J8FLqeHM7ow`>w2X&9>4meK@2Wd3VC-jMaM}M{7gvr5VPTTER796uubOXv6cx z?(6kOb8}rSitOwrpTCn+&{M#Ud6~8;=RuitnlG`8qk;Aw)oGGQi-9u=4>~`-JbGZqdu$wBv8f>0!|JD> zge|jKL4@fuiV6Jap+JYzg=wOSj($>I6P_k-Pjz6hs%{eAsLx|mW)Q2-i?0B)jx^v! z=k#p3;17kMovyU{EOc8aFZZ>OO+9lm!d#O6FAk6fXgq6~7p;zyW@dpS+VzKx;fd~KvP*JL6-p@$lcHP_W` z@CJdxpJOt%`Fo?AZ&FuQR{b&0qLW&>_x{%oM^fwNJZCC$h;B{v_`?C2iA`S}vwhy{Iz#W@xmoS(#$yiO^?+$B#E@6E>o5?K4BiJ{scnBhBH9Vsc zmL%Pgns7w$-OzuyY-3W@!8I_c>IX=o)>{kfG-;r5g_j1Y398z1^T|r%U7aXByh$9$ zkezMTMA}mrTer123iP(y*}=G#B<&f2i9efp-q1@W!@xAvqQ-!jV21(8YhY6<;MveQ zW85bTc_3x-Q;*X+)dW{H$QZ<;P1A>>s%{o@{yuZ)y{M{rh>C%Wy8%bVnwPOMji)4d z2_HkB1v686e0yaX(hu)09ybXZy0X7mq$Lx%&$lFUaTWbYV_jjM^D{8UX<3P)P=-fN zN$OnA167TuH_G`Pp#syL6g-$6A3>53IR^p8wYKV+uJF}Y0{;@yrbBCqpJ3uYC78E%LO<|f+-=KUsWmaeCI(O^?wKyqtScz>tU=`Jh4VJ zkKu5rFtKzDCY15H0!dZ+8(A~Jd79wH!hrH37r!TLDK7Uwkrba4zlEa6GV+Gy-0fat)nm&mYqzZKFnY z9t2yu7S|Dxd76)DT2@3{Sp3zSKL6}ipMF;VY<*&C|7p`@cNqLpau34f8Djf4G`|lH*xmIqPYb!BkZo}{ z*l(y{<2R}**-e>E<+>2{-7DiPvA)USwlKJvS;8H&zC>Nl*{(0+z-V7LEik=gKe)zJ z#`42BzfdJk)p~lh3mDu=4J22X z8N#{_T+KFZJ4b|S!e=XH-6vNxaz1P<$Z4Z#nvlZ4Km_OWl2QXQcYyOV%~9QTDuB#y zoH*xpx0hKB_WtJ0O@zay-A$EZo_;nM-1>~sB^pi`XD9fQsx!l}Hy9D$Eah`Ur4;g+ zV%6R}fw;vy>i@182k-Si01lLSiY^|;$OBHBR+$;Zb zN17+K+!AA)V8QPmDcylU1vp$aPY#j6`W#m~CdeEB#hS`$C%gZ(ChQ&b#GyA<>nIs}za1{xcMn$|7>TWh zp>S-|Xqp>O``ZrFqCQNke|wldVvI~A#fD+>099=H^^X}etaNv$shqH2*{$l-WF!9Q zZm7@h(_2+)v+M4bJ{F@_c(WtNXP?NCfAv(9-7Fe)ds59^*9yWj6j~ z`pJJIvQjqwmtrb?q;1Sb+XicF+{jFMff^f_sDCqT)9qpc-9+$srB)%LHalw+(&%#BYAEU z#Bv-6cr#07dS1psUkqvT}cY<_Nq_4QR++ zQh=f`Ykv4(B_{rFCDYl5!v8wuUZf=fbGv^(5c$^@CyvYv+Ij?FyIX6SZj1zcwY$CW z^8Zf=2kfi|NC`-9#q0UskeD;8uAk(mSuUc5k$lGH7kCDE zri@Coo(ohq^5gynBsrUj8TZY&t6Uh9h-CD_Erm_#Wio zwpM89hA6mB&NiOxk-3T}blX4v{`Xh^Q}ewy%E}7o_&kGo{-kYmI-M^+|2$|)@9f|I z>a+V_2LJf%i!VF-`(J+9`8@bXXaD~G{rkZ`I)B9g%wZ+|qtp2WAKB@20`vEO$-gLK z$-x3nhrCL*_IZZ?f1mURyr`1h{jNFge}o7pi#K^B*vcg0YHj6Js}(_iJG^$> zyv&(X-SolA@1E{@B3m9G5BcF)i06`4FZkI3P$N2f62Fb zTJe%9)J=VZ-&SH^(R?ao zER%ypS@nLbBFSPIvDJ$4w1TqfrLBL6^}kGnP5Q+dZJgv)m)Nm>o*ZC$mb{E|*3~RK z(09~>a=DD$#{}Z|z7-Y6L^;o&sC2B?&1pE0A~`4`##W4buhY>e${1HY%C?e(OgmdG zufaAkg^+a{fb~~ATX8H>MQk;&A9*1n!7KVq3F{%}@Ku-Sdd>W!d;T zDj1i&JSpO}y9yg9c+Pm96f4FhOuHT-cn!V5b?|cqTjW>#{}1qgyA*)*XNw;yy$ft_ zE7e;iBCe9e`bzX@02H-qWxqj5^RGH1a#%+hOWHAu5ig{ z`clnvJ*u_8_99v6IbD0zuLc{7^{avXgr>LDMd@^LTG41V7iqO>O6BHku8LXmd;n7% zRf%4A%cT=xMluHHiYbvL2U)}z*Aj~6uFC;ixpR!OKgLkkc0u<{rSB`&_2#jsPa#&D z-eMN9h*sOY!Y%j$q(oVfzd9*}ya1Dzit#a=Id=5{VC7<7wF}A zI|q=hGx0_Y3poO3^{Jrghb^WZ%?>)P);XME@EQ&=8~~NA(8Amsj|KGd%6z`kyIf#1=Duv~r!c z&(EvqtzcBh=|QEsFss<&tw`P)bVH#VUQti_11`;RoYSgEXFSut%oSH8oo?~98M5Nu zJqDjB`o%yaoEh+v`nrPC81r4vM3N+-SuUY|LtOL-M6mYEFX5_c=fz08qk{XbR*9Im zXrI(-Nj(2cycM996c7v6>&V8DUkwh81c%h9WNabz^-!9@ahicGO*Y7ISE`oum)Nx) zGFpvg;tUB->B(e6rgTV&+AWGt>GsN1hnCA6!G%i>2V9O&@Fk-@Ap04o9K{}S3Gb{6 zWD2X0&(&RMYRjD3GOxCjt-7V}mz%OyYnUVnfOz$$5sTN}_o8{k_%vcHo=0qz*#oiQ zCEk$>~pqf9xiDgqNM#rhi5c;pnh$&-8ugk~_waJLy-v-EKdOz4 zfLp@GX7L}j;dY)J)Hiho$W{Rhi1FBzb#%eo{=^^BkmmsABDH?Z<+alr;6t zWKk6`Ua-JlUFO;mxDBzTBgreaT)q)w(B$G)f)uvmuz$R!oizZXT@^qbhP~H$tV^HL z7Xj!?o*cM!=1}Kyxu9xRyj-uG=S&gTs*3WKUr@t8R8EPpp=@N<5-O}xDsrrU@ z+|k7mC>#{|fK7EbdqsS_y~tMW?M1OV?tZW;0KqW`9=*I@3=$B_XH}L?vp<1s zAM%35a4V>it=3jlx+jIwo3d6*MkOD@HKUh^^x1dh0u+0wxu}I|jHo{qfx+(<5Qz3HSgRBgm< zlC0|{CUCX!R5OUfBzFgw-kHJjJ|Y?NOl4TD&tnpK1n@o+{i@#?3=-Le&SD+*b%#OV!^=QO zSx6%Spc25usj|TAK{x1;SM3rdGy4n=4!A8cnJkID4La1`Gy-;K$qBi+pv=7Z^uDk8&2#`Rr_PVB~@Bv|W0ht0SpjaXCni zfY|0aEPuPs-v}TJD!V}8GhmI{YJk(jgTLKw=WJ2Q>xJ2Cn6w(A&0_|=i!u(w;H(d+ z7;$yhu!Yb^J_G?h%_Gt4EzU(*rl%qfUlufDfl3KZvkQ^8!xdkMXfShO^y)p&+RV zEv6Ok5DoD{c+#;m=k$Ley6|?tOH09FtzL+v;?g;t)X38=SfzZjw={+ zOX`%8o>!y*Nv!e(N9RhvndIHg4ZNjM{e(nKGr+0Mcx^-1`l9fF+h>hh;rO@0c3GVSoh+-lh>d zjs-6gwdUlt;^2S`l~F%DI-;PuAr4wN;K!gH49M`D1&e?(v<>thoE^cctJB9>o|O}b z_f9|`+8V|y);+GDT(v`~L>^dA?Dzm~;$R)T1_ zET&-4vqIgNJ3UFk3%hcj=K7YPCHi}gho2T&X0?@6I4h}iR#L7$Pn|=+3#!r3do@k| z1nP;_SJ%IxE#!;7Rim7ztWDoJO%9}prW{G~uC2Kjy@V4{H_cOyv}3I+EFQM2iO8Xv z1s0g9oU6tLp!#$=y~b5iuWRKTy)V_#3qoVu2`@ye)wHKsZJ)t?-7Q>-OU+uZpq`e= z0ajijKcIVAVlPV$Bs+^mR4^hVoF)yWQ#I9IQSC)?0EMB7iVn8RDhaQ4L%Y2nMFNOr zy}T}~d(Ig*#B=YmN(AwH!aEs89=-Bd;6=_C%A1Xdk*&u9TUFXZa*xQ)NW>hL(Y%%)S+?Sr;n>!u4i5)$D}uEcN-ojUfUV0rS5(H=?G z{YLAH@`I$)%VYa8eEj6;gCC#23mNYKW#!EMR66{y%dtKd%++Su5;NgaV~N8BS4ymX zk;!VFPK_Bvsn<=DqReO!%)R8bE z(79BSgoxS2JjQ9hMqM3|A12RSCKVqcP+L@iuua{1cwD0JcqE9WWky18Q;Z-Paw&0S z#a2A0^3*#}*L4N*G_D@>$kEK9JU2}aDlOsTNb)AXIHKP`z04TzFX%3bzvs#XB- zO>!Td`-;eoE4WpRmEjvod;{A7xw4vok18dO(NND}AeQux@}%Vm@+3w2=b=vPEk5(xYh>7?i;eqHs{T+F2sj^-@R zLF1?gt!&GAZnRbfFLBwt772cn*a z4uo@t%19WlT3y6ctWw3KCf_JISIOBbnMuPJ(mn$bC|@hBKNE$It(HKdlhpwN8LJ~&MC;RIk>6mqeO4?(DC zI;=AN1%5Wg^MK+-3{7-VIH`D8iKzgW;?SA)@4ek@Z%Gw2Jpmhx-boeHGk0&< zs+NVG^%8V%<6ZlZI}7VOhm|A1NSHSY+71iJ2`C5V4;1e$mi%OX0s>*wSr+HBq7)ZJY z6bRS78t|gYyX-MCi(C72*g;fFmF;bI0_Kd)of(l#qDFmb?*4r$0p&F&W`lC#T0D}T zp7<1Wl1H-DdJ=`I=p-$JbSgzU0?!hW2UakKE+!z>3ufu5Xa|p!ktLPX)_lQvA%T=b z_mrVPKb2t$5_Lk;8meo~CCm&+$n_+t(e8dQbTZaa7tX}3C(4?q#*}l=a;Bb+8nhM_*RE?o#knU@Q=BW*BVXy!E_p(z?uDfk>%(lXlW?N zN}DDHyDMz|j%ccY&8c@)`srD({t z?9cJex@fRu*~T|l4Y%1ZDBRxKH|_im!aI^KM^z7c5MLvSiK?b7IZ*crNFflk zTj%fQd?AHB8YpP-DVzXE*XZN-VLChmm3gw3%J|ln@TZsAUe@N_6Bu5)oC|cHdXENV zy7!t$e&Wx|1r~i`hYIq1n6?T>BI7e4S8}Uncg%E@;TX?dVli^+PQK0W-SghJS{d#gcb;C;cQEXs zL}?Mw;ZxKwXiq|0saq6Q_oCkq=Na74SvoCFL*5VjSG)8u;9!Y9D`v%okb`hA;C*{} z>mQh(9#j_KhTx*cKlmDc!pngp??!P1O1!7gVYDq!ixZYx^OlFzsuskP=y+Vr^AVW7 zXW%b7u8Bx!XGn^3!B!!TinGDd`qHCtP!z6ljY5WYPqbR5WfpNAsAPx zW)NS{kyBYqp9PxIM75cNqR4+ycivWp`+8eB_B(dP!a?%DH@G<$o)E)VELN=d0A=>- zgbYH);zk*a(l+(}Aj&Cjl=o6wU|vDBy5@J%rMO^aYi&&snlo7i>_d~o<{V{muqE0< z2nhm4IM%|#VZKc*8PpQF*}>+f-EJ35TQ%5M%4rbaT9%?pz(8)R)2os&jH~4`40#si zzG>kf9yJNP7O<#4Z@>}~cRIy&Zfb|XHPW_FU%l0lB zM;Am{Jbh76{6?q%__uY9~|k^iU` z`TM-Kihs;&Dv@TrUDc$v1D$3f2*4fGo4Lzhhr7EW3{0MUlY^3;iw5j`xG+}hB#7`p z=|Q2{YKe^?^LliDM(v$5KJUG66TW?xD(x6ph+32flR-LX55bRx8@djj;vf)iFcy2W6*ztom{gxm)`ef7pK3 zYR;|7g__Sp)@pf4#k|5a2}XFH4K?OoF8ee*;lQ=7=0!a-)&se*mwxVULmzTw^PoXf zPx%Q;4o<$VtjHg$L{o_M?rtc4uwGn=E&Y$4rNgYcUK@;Zn8F#u)1<6@oi4zK^;f#g zG)a4%c%RRcVebfdLiL9K^9#1O-+@=NgkFH)=Q`vawzn@n;}exiBBzjtLmF_#FB9D` z0LP_yIWFXR$e-$J<^&`Z^8GJVT~EZ?yRW{WSK}lc&QG%8?uqy_6Ef)=!{7?P-@3QkOKYgke zc06A3oA&QQjZi%0rgQNz4t=z}n6KFJrt+|nOzC~6G)-Kz&%zbsMZ=hQJN-X1CQro2 z4vKr2eCV_I=A-2nJzhMd{34Vh6^4XxNpx!@}C zfMZws;rJ?vp$UX%B}vT0UbzXePZuwlfcsR(;g{4p10^&rpAanU`MAj-G2 z8Q5kp@S2fiAh0&Qo6ZWQ52`ON)@#h&YDG;d)eQ%bR^Kg`wrPCtnIzooKuUIF#~{@C>A=Y*Wj|(kuqzn*J@~HQuvjM)b=uE`6gO@afuV;_M~s$2G=Qh)3tC3Igd*VE96Y%Ns_ zv{;%2so@B2kHB<{_;n*){#A&1ba7e#d%M{78CaVC{_3 zM`(_RPzDx4YGW@}yfi195q5rX6_L6oV%#;fkj!J=+*kSLSDE{YEede8jXYIM%7=W~ z{TU9ph0;qb(gehSIa_i1#E311m;^?mw8rBCz83O=w+z07QysCQ;!-Qwp&)tFtlS&z zXP1rSXbzoB1TDpL`a|BSKm{sG8pgBbGJ=z36fq7`FCbb8n+o=)=M)0~S*in`JEAwv zusFKw$;raq#bw+daBo|eY=IYzm&>?NDP3DU5s|}AqS~sVlor)Bys{P(1&I7O8G*&c zimMSapb)%j>uFjs4)Q(Tc<~s=KTpqACNJmbCqhQ2qJsEW^GZd+F`azM~tvoa%30>#t`dpG)E!uap+}j_(>4ky-pgo8mYPAR` zF=w_knqei0r#SIrM4c5!0Qm)TriWrzR#R%_holjX%7yylwp{j zi)qMuWfp<<0tS4TmLf#?T^Rp>LN(Ssks>|o;v14!##OfV1_jMwEY{zYsD%=vFs6(X zF+77OnWVZ`Bn|)|`0D z_M+9=>XXe8eu#5=IF*qxElk^*^2&C#GCq=zC3q>Q4`R;OY;9HM6NHADgG27^ljlz! zy$e}^v&4*#kTBz{3COPbKr{F~&=&mSR6f*xE>-2%Qe?+ zIE|RJMNJJ+v8_bHcY4YNzlWJE+^+^(NkTsSa3(mp)Lbh)L4TmFE-K=4K+AtG3_TkY z(Jp2vIPh#$7U1ztyBZFK1Q~y;>X!c=X345 zq^HpmiR)x`<#>Si_j$OFR&sMNmO~@CYf*-L%iVE;^|m^3zr({0*xEr*Q^-69SnIVALE8EFNaLK>LEMJO`k^5Miv*4TgshdlHNX z=hG^iq3z%~keK+5=LO&l;ZLWwVusy@?v-SVi#Cht2w;ct=O6P-Vii(c02m?sG&cd* zBZ5U8U^N4jtg=|NiNM30rj;o5VAxlskZ5^?Wd@Fp=b3Bxk`i8mOR@}|mA2In0k3-( zbyCs!%%T#*y7huIDmK%w7spZex)|QGnrr`?m!|4|7bF3Ct`SZ zQe1@~l$;jBbgJ*ndA57wOCsJvN77w2wjk3{Ry5W?Z)^qMD?=7IVq}9_7lGRnRN7{V zQQPt&aaF(MLa#NvC`9gpI6-O-PXf}F!|@fq#o4#6?`}gUX!`1%=t`tpZKE7TAT>ok zsH;(#>)2n32)ub?0eRzUg}%KYloAzKi>tM{)#2!i?V^1R!JCv%6B#KEFOMEo(U2jN zx=$ny~}2QuK5sF+9#%tqPu}jID}#5tQMS^;AiQofbrFu?@v@1buS{HHW@ z_(Pb*Uz2yyuMBf_z)Prp?)(ZqqrZ})*gFxyFUD^&HUWW_kAV@9y}Ls(qi?-$F8~!| zvTFnJy<|BA07Gu`cbOb?Y5+KP!3a zxSy5EF(O@|L&lQ|!b$7%KgqC6307<9g@#sO$_uUB;DuJMd!dz%7g~wNp@M^3x2}Dm zv}J9Cew0mEa+~H)uFqeF?x^U;R540u zMkqk=v@C%NY!o-st#^oNqXB@g6WaL8z6urkgi9~F7^U|tmp#8_y>av7fqu4q$2hI~u#m7q-crXp86S2(H4EJT_oU4|xp~K7PP~ zo^?~+NuG`nFkc(j#?J*LJSiEGCEErKNs>8mf2M%%J@&N2ryW8@wNn!`sfjTb^JRo@+VV0MwJ;3__X*J?gW*H zU-KH|g%$S3Pw^He_BsBUn>ZEmIX8~I@raAOO7qjHh<_3slvPzV74f&A13M|^`B22) z3&#hM>!2F(TMn)+@3P@poC!|2{$dnAQa|INa0^@-rs=n!aS#q$oCHtAr6%S&aJ|OVN zEV0}iukn`LX9PL2e_XS5+<9ZTw=PuryiDFy(LB2sa^y|9;Y_*aOS$Gnx#C1=MeChD z;*)GN0(E9l%s4QNTyuq7^MoAxJmRHD&!?g+xnjUL@}FEYq}(uG3_JIo8SJqX;!gqM zPQG2%62WB`a*xerwh3U1UmLH_aYlex@Wg*gJW`1l=*RgBT;f2F_la%+@8SWC+9-nz z4vD6qc=#Wp{sP^MLw-W8p_cAhBk!={S;IF}1qlK9FB0mQ>7FzGqB8wdfIR<)@9xuR z{D=*XGW1@BcEgwHOYnE=cYwhQcf(dI4DTU1`7DP8zTbhb6vbdChrCM@fa!3d1mB0y_$q4MrX=Nmh2rqwC1l**Xx*MJlx&h zubad&{<1Q8hm%x3sG<(@+qfqTdJ*FfP1U{QBHv!TME6zzxMBRP(yK*~b8Q3!jUe?> zMZ^4<5Lw@g^bDNOF9FY!Kj%Ma|MHMRjDd~cYvXhtzDQ>n+ta+XXU&l(CqouJE9o{x zV|+(wiBj_9JINMDG|lK>B-2an!hWS>y2b!tn*MpcT%sb?5jdi9M6`*(Xtg3R3If5Y zlK8cY9B2XPil2hgRVoGERRk{sN1heLd4fiVRRqnRRApVPRY<=S9u)7Q$k7Va;whbE z5#yIaBL(y4iR5SwO?V#*c!j+y0hsoAaw+9w;BjsL)!d1!Rn?RYC?D+G1#-uML@Wy7Ft| z@FMTsW3at6z5pPl8)R}KZAbPv@3rE|#Rf^^Ed7VR4n%>6>Tak71Sez^Ossln(SCiCQAF>kfzhI^O+2K8(!NuDp4GjF-ERx8C%nxUPK)^MY+ zCS=w(WN7tL5;D-D2wSb6KqTPAftvFfB3{p&T+8L`AOUp6VKhgJ5vWP&9i@ZFK8#8= z5zJ@~)6po5p^@H?f>a(Vldc@tW1aQ`@QeaaD4p~g06|^lAuVmHbGiJeqNS+9xR&V$ zon=LKUpV&O%x9;kU_jWAXcolWE(lx+dRgS+k}wf-uCajQ41T_&?0^_=>opMmy@s@C zPH4Q{)XddXLHT4rn1x42NC+Gqaln?$$~R)nkB+kPr#YIM=SJJmh<=H2EhD;hj6*Fw zk|c->;QtVe@h4d_%p@P<@+I=8=&q$H3=Fjg*=?+`WN8~-QqjohOJhSBuONC zRqtUIkMg+cJjek31VK0-Yf@S zLID{8jsw>7gDiRFt>;%64)^*<*A9B{V$9pYedX+HsTO#AEzp#N4-*%tS9ix!-$`;56+ro=y)yvvg~or3 zB*#OM6SiuM32;xzLaIn5Z2Tw#-0JvU##PDqO}64MRj~^!<_QdaJdU?;g3VOe?f^kB zufZ$ZSaz(!V4P-CF^U7aZve$YbLs74fNk39ta!r|G&lH|>_R_5n=3s2w~@;{5vV}` zGA9=NcPDL@Q`%EZ6Z{9{9i1)iqDBg5+kK-UPq+3#*SQavr=qP6BXyP^0V`6#DN5mi z3h*|A^^mEfpkmxlphIQ>Q&z5$A24`Kn&iEwRV;hISMhe$#lQl{L?eKUmWDq({Zj`fe_QmXUPap@Cv)C*^DRn0iKcE>n-1nF5Gmf4>o^stD3Ma_nw?vr>xU)QRc zA7J}JcWC?o%o6SSfSeVK{|F9dco+!|WCxUWEWflpAk8=pplX2QoaP|L24nOegmNX+ z!0&=}i{6|LZNcJ5=*8pY&<=f>Q^@dwdLQ!w4%4c3n8H%^4pYqPcV9SmhF-5F_BzL2 z1M8AVJ38GAdJSBK(`zpW^}0y%UTzaLB6pco4r6E!4xJ;0)?kUC$EnPI!KM6gNC9$}qmAVOtQ_+p8KR!V3&ptMTOWhcpO(2!Z zq%g}irOS4hRIr_e+RmEbfhC>#>)By}rhJZy7qzR0(UfuEd=QDyS>U2(+u@RS#!JfE z(}ku43V`E;*dahvDSZ*B_Y)J`KnI*}wMqyl0{Ot50kGfsG|3?L7&gP_iG)wA{7=MP zTR5LM?7gnwZd-u(oaRz_WzRrOBjU*_nYQVro})>xo+VZZX|F$zX8q29arnDGV1sxb z&6v)&;{Dop46HH3~HP*e{~GX7aaTl;|Zwc^#rHaTSJ{AXH*YUK?r-`Fg@hHJ-`{Z6R! z$*BN3^+$w9Cb|>A101N@fd!t`tT5HnKO!ya@Os>#vC41i@&Ck5cbH|8akq1_yoMk8 zl;HJ^WSX-EPj^7qW3zBA7`3UCuSr$XyQV9TYz)0&V2TqWMDaaez+CndotE) zWdP5X_hd|sAf>*oNbYH__YKmgzdOmaM4TvSHBjs$<&m0`X>6sHKsnPV`wJB0`KOQm zssON*0*&SpoD|gr0gGjN8Kn8hDCq;GR4*~G(L@AgdM*Oe^K38h`(LE9uonht8Q_Wl zKz$xuPO{+y(ekDu9T5T^^aO)c4>M7=g9mt*j+dm=uEHMq6UUu1kc<6{>NbLIlTP`(a-nepE$L{GRqu^ccEVv zinzv+MHUL3GrgiD5T~G1fUM;8E&ZY*ZF}8R3JKZ;_&6 z!S6XuE`(#CXktMCWc@G!Qgj8O8YBjTgSODPA>`jn>J|dTisS%;n_&{zNMq73CPj=( zOd(@mcm(P3)wOmUvMI@*(YG*5+Iz^pVa`2(SqwmRw}zf5bwM~sNf)P6;I^UIh!6d6 z6MuRW1VIdz%LxA_9men7!=DbWksmb2!EMB*vQY`a1nF158Z;s`9_5bLNH#KFRN2Uh zVM^tlS0L2=6J-IgQ~;P4W?j#6MIg~C0-g2vLSXytMczB!#c(tjCq<9jPZ`>?Rosb6 zJ0aIA;2nB}ZdwlFKV9FkyodGfZZFD}s@EnQqqpz3kReg-@07|JeIW z?_R@gRD$$2udJJ6zhIct%(#EU;cy zTBSNXy9I8~oKP;{%&2|r(Nx)<7_;PHp3E4ZuRyK^yiv6ZlHlkFEh8qybR^_4BZXrc z`B6U>Uaoi!dWUHOPL9YAZwRQmg%gNhXMMqNtAkY;I@&!)8bwGL9lUat0%V@pvT$ec znVV3Gicb<{=xvF0(1@W_^^z@S(Is20YH^)PC&Lgkux=Jj&^@yYKxG>C8t1{nlhpzv z*$qwT1j$vAiN0xeCWmyiiQM1J|t9Eeijvc zvC@NCCJ|yh;1+SbU1w6v00xcqh7J@)JIhNUtB2$ipYkD#-9qW?Hf2zfqL8>D91WGi zdBUKq%7?y;3JmVTA85~LfYppl6m&h>uje#@4pa%Q4_l9you}ZB0UR*CR+$Qo_{jKc zYzOuLT)lrdU_NBKrPdWtIT!BXdF6;LsmmMiWd+$;|B*SNh$;Z>_9DGFyF*ZmfWRG; z+G#gqAuQ;$W?;cTt%t z;`L-O#~4KhzyCVN^M;Q05axUHxsUyp5d|%Sd2%94ugtr<382Avbfdw4(5v}!k zaxjgCe2x^h<8&F03iO+Zs^rHEamMAk3pl=hzy5j#LFPbt3@8+B^+ee9UL~_?E_E*T zw3dr}urX7X(1V{rFD{iuKh`oSi(ws~d6>w)wD^4X^}YSUav5eh8o2IWrVuS*np9OZ z)E2qtWynCNsTHkjFXH=Obh<_IJxEKYY*iaqZO6Q!C-(KH>&dsOCrGAcx zjzd$vofMZEg>;DCUG?F^1EXR1sC6(9rIPr;-({%FzRXFDT`TlU2C>T6a;fuY>(?iZ z9#^r!Zx~<4NG)rImE8p-*>>pgM(;nZQ+DNWcUyJuvsP=1uv=Vp;x|qQ`e6|A@W^+% z?TPqSz_=z$|LCwB?D24SGg|Ils2A9MU2=*y`)!liOpGn@!JY_j1~W+#JX}Q~?ihQ*pD8 zxH;IJuPWI3)loZai=^?W?MfYDt>6`)o%D-_GmovEcK74`51y)CllJAm-=u{JgR{oQ z#cj1t@<;%hm=owtLSZdN*jF@rKO9za>R5!O=#76aFlf*49R1wqGlaRdQz`usHzqsM zo$k!b#J8eM_3)t6YGn@adxXL?Y>Yxus}}JpPN*-8i~cdl1ily7#{=ddr0H5)tq9gJ zMe$iKHx7UspCeZhF1ECxc7M@ zbx0CpxGq=5k`i2MttjAw?B`nSHdh27Jmh2IO4QBcV*F`l=qf5el9YBG?|9{w(o69z z3XRq!1#y!*z41_y5o@d{Vog=0nvy3%$uKq(W9}GTCI^$`lJO^bG-1673X)koS@CHy zQMoU>W%M*TxJ;g6woBH#M6vLM#UBu8Ou!?yVFcjD_r300t#geaKS@i6AI6xiAXcvN z$rQ^~YVHaI8;#Ne+?&Yign(#mfC9K`*u7u$Msz0{d^AGV3x|_5KNVpdX8CMhg*c+K zyie(Cy6-_9XN8hC37(P}C-Bc(h^U}CaGawnXp+F7 zVgkUKpw&-*z%OCf3tQzm0ZaK}tW95vQ-NhCKq}cni7(L_YKhi_Ev6vJS{d=nkh=fl z4BYo{k4zl&tERQ?gu~l|IiElb*fne{;D~7tAoiF-1LG5Bpe5@iwB$jJ)-dwH+2?td zS8}cyNh3ob9g;>V&dRsxISIT3Q*?LzE43)kD(foCAZvA*g?)70^qmNDFc1_$ZVe&D zc|rboYdL#5C6=18zyazS46tlmLs+m%WT?}6UD*-Jk?jjvFH63yBEMo5yE!#T7-YQ? zYgxfO%uV6uQF&JO9Q?P8_3}8^AW!{lz~bB`LVgBpyNszQ#Aby23LRjuk2(cz8U+Vm z$~324KwoLNDY$qub17!@y~}0R1_E3U^0yeNcGD1kx^}JvwevAG)~aG%S|lcX3NTH* zwfU>haGWLi`m{F=>$hNhzF{b?MExBET8Cw(BCcbwP>25e)(KK8dgw0tbXug9M!nLX z@hf7URjxnS&)E$aUB6}@%PT(dqNUv6No&*E$dNZtHF&wZZ-8bSPK)#m^->LbkaKkb z)G^&2>2h$`v+g!s6vzGT#UqVnvKkztl#n8MHp>XLPdrKq9mo_-c!5JAO;D=^EdOE! zmM*dV$&}*bs`@D9lM{6{N2n!rs-oGEp^%{3N2ISv3WYw6?M3^WTEYF4f_T7u; zNx|2}y8JB&qMJpwrgOQ7UW+J_-)bTrXEzLsn_o z;9}MNLxR-y3eAcl@H|6QmO0``E3$QHfPhxox$jI^*PI_REc}tUU7ON1K9}#9Nd4;; z3eFvsH0yLl?$Q-`jjk9XUE$CW6(1s)A;2F+HrDgMiUfHxv?EaZ7oNi4gYk$^`mbXT z_~T@B-(ISt2d|H6vhWs)8e>9lfvrK|doOZ_iuu6>usjpjPfP_#wR-NI9BA-iP7X5v zXxL`HQUsPuVeNvt6u>PEd*Nag##Pruavww7MWd5kth(RGD1+5Nm){#AWofBqE7pw) zvoe;;f=p6P zo>EZ2x_N^E0@hXzn}C9O)uim4q~$It^C7;H(u;cJCXS-MYM%8T3iNcYF^bJ~LEJjH zOehfZE%|@vRJctPtjkb_^{=1>K^21=!Dk%o%Hvrtr8dDH zgU%rD9X51y*dGtNbEBy^rBDW~)}^U?m<%;@ zJx&g`F6~E*l_S>^;n)+^+MGAEIfrpMNrq0VFzY82MPaBFBxBy;r;N|2C;caaj|UbX z;$$mH##G});*{A3eF=YMlTLQ`DY5I-{EBg#g?IP`;}g}=1%EYA!h@%J7`jhHa=P-r z?Xuz9E@3=R!Pq}-wIaKv`={}~*6N+YZOlR+|pp}R<+1b>yJ{gVL~ z;sa(esuQoku4M-oSP;fQor8Z7=nMejZxj?Dc0wK04lno#SS-I%VOxY?{6hVH1<6NO zN5i=UiT$(jlWD7^GuGcQE`*NTaRGJI3+h@gnhH82^-5XdN>NUJep*OGq>H9~yK+z1 z+8EB7$8bhtc$&CoaJ?diLG7-0F}g_BdWXyYRWeoMKZn0VXC8jkCyl}#fuSL)^kSKe<9roLI4+qp_i(k=ksAV4IJm?0 z-YsgqTiw2QrR`Y>J zYb=7t3^;YHc&5ft1<}q;!O%|D}bafd9*s2pJ+|kc|2k;k_GO7kVUGjFlOwY?0 z&rzewEhDnul~oizDyGwPhT%en4L>OpLh+so7`WncK@^fFWN^N+v(-SXco9iFA9Vy~3Ly?K>Q%e^59 z<=elPpQ?>cr}O3Kp9f9polfVoFZS;T|M={SFFX7DUw+y7Jorav|Fip@&w_t+{)z#Z z!`k^rr}GIuveW4V=I{TKe|N+cI&4_*Pf=;LjF|F(><)s(ogfInGrVT{paPDm_wY~K zdzoq=rmglo))i9t!<}GLpw&{TTS*e2|K*38B_`1M zjt@7c$6@Ej%59aA{(?JqZvFM_&g#ych5@hT#f?bMx-)o(0l6I{?&}~qa32*#4#TS@ zQpzWq-7(diXJv_~_t^Bu)|Ww+tw2oMm=8>>tZ{zEZfG|hX|>;jeDnr~>&JXl=ngPQWK_n91Qh zs{%{=l)*GR6LAn@RS7D4g5@&UAt>~n5Edz=wpzi?$+Q@r?S$BjH@rdQJtj#2k&0N* zt7Y5S31UAlG`7RM#kOHYBY%e7TG&l1(AhLtgr5HcD{x%M2cuDt)B|m}t+vP0w0eQk zY^Qo2fMLr3XB&P6J?fM9jX@k>Jh$~8I31w)2>)&$w*Hk~xI03?F!To|iPo%2#8lH) z%LDiu1&*_g+tJClwyD(q$e5Q!^*|#kn|EsKFw?6CqtQ)Wy5WqtsZ+4iYdykY`apmD zbKp+>W4wMgv}dcO#y00SgQida)t&$S^dB}!Dxy!Y3P76~gzY_P7`yO}DXt^B@E|K8#Eg@FnvKQqdN>tM zc8I^?WFgK262m*1B1KVD3DI@vF2rN>&N{v7hxCa6*y#jJK%fBrg6ozJgq1#X^f}RP zw^Mmq;#=ER&lI&8;$T=$gFCd|n_4&_)0^8h+-fzqfgk_&BNoK!;b(hm2RSmlsLNq>j_XBHQ9&Fl$#moo1%UEh4G z=FRzBoTkHTyG8fz-VH`#CIx8hN5S2_=Cu_S)6tVDhgo|vby>_UO7cU$H>3qgfK_;j z8BYY$y1WA+nF#F z`vm!#_qep+JiK9T!uq2H0{?^KwPEqXG&MHeYN-nV`pFDGe3s23hhKw#8+vZ1q;b_^ zf7Vv48g{+?Fr)j)KELy!xvn3aXyBU;C%`Ar`9$scH)P~oJupY!nBgP6F-(RQykd*qH{`=3%|6pa} z#0LqirnQ3y-bLU8=^hxgu(4Pl-VJa))7vImBFll3hDeOBWpR;#`)yR5{LTaAPp@mN zapBm2Yq;U}V^G^<&9OMK9V+ObVd#ffOWQ=Ft>i!UFp#CIF!PSecyp$F9k2@zK zC>`T`(*>=O!A^ev*V)f?`M-Ai|8xhz2loHxUwySE|Nrdszxlua9{InX{s>Zd05A)B zlYm;TBD-mC0owR(&OU+6YAe944j9V;Y=x!dh6f)80E*A&qyeI7i#6@W6BXa|#JGh>d zJFb+;lu#_Z&OvqwJ0u>Vc)<@G)ydWF&N?AN*`jhzVA!BxsflK472OL|-X^jJ-EXkM zTwKyGUE5lJOb#v3F}v;CG#^cc+(>}we4D7SdOhnDnfrbAL{;|2raWul@wV1$Hz|WA z;>m-gR>~lmUV1ozriS3~cza=f=R*|wW%ELKa+Q@;iOZq3cwOw8wV89!ez53`ZIFsPHPOm>pgm&EG4V<< zm%0x&bC3j%1B^}A;t^6+9bFw=WU`v4)5oS&R^yp39=Mg(*n>@VDEAlIE~s%QP9a(Z zPFk>H&XrFLdRk>euSMJUSNZfha=PP`-P;RjjDr($6Aki0o~Kh1LOR0| z9rMOgWLOv+hi(B(T!jrqYJAe2I}P14^|(xuRpT|!rG~`trqgKyP2#~_4ii+ z3lAcD6l)H+;qa<$R_EODPst5u)2-&LVa)Xo+X|XTA2Tqk$SEI-F^pk;>fHP!ux+9X zP^w)L1p&dhFq5)fcC&mhK%}f9jkAWM9a_Z#S$^tF{hFGnv42)93(cR^+QJKUQ|+r)z1t7X*7dp`+U=scl{5In6A%=a=rJedtO6P<7PM&+R`5B>mRFZnpJdbdU9fy**r}d#D>Qnt{-J(w2bNvNy1e-~s&1UZo z)d7#w&*w8IgNIAvKav2?OF~)xdTCqGFXLo)Z;9fO8Bbah=96pcQ|6zYee==WRx;Qy z-5)qOok`D&V&-VY?>O2dEa{TO>vTVY*A2iD4eD_w-|4LSKA8EN7NXKptg)Vc*W3CM zGWELW#C$sa)^vMKBWp-af{KA&yUzd}qqS6a=c{2*oBfoal16xS{*@R%Hl#% z53o)?SVhyZ(Yxs+Yd(S*?JLzXm@=rJk#~SO1KF1I{EiN*$Pg+^l2 zS*VO77v=S_an~Ts1a*(>u8~YNmy_u^ag=p(?!zBw*)-LDitYJRZm{D)k z)~#NwDn+JpWj677@PCTtCc)#_kU|24hHw4Uef;!Je9ZE-YJ74UYXMB8uSnV>$GV!px8#% z3;8a%@X~X!zQ}zY#q~_Y&Pes_@BaQEh*5Rn^SWwNI78HP9yXP--g)*XK@Z{?W=_VP z_6`RzC-aLt4t>;^|Jq!+O_C{+ohdmM2vN02t0vh*!53^_EV@Hi?haMCBgI(%1U;|* z4X_IIE6s62aX_!UiXLvR=wx$6^s1Q&_bb89vS9b7 z_Yc|s3wo}<|J_>uuVOR(b^8C$?>FfG|JMKgH|hV?^dpZ$1Oee8qvTVcbYfbI;bpD~ zAZZ*d=BUZ?hAQ+goRj&<$yAgvN}71xc1hsg3_uS=#)+fAqQgU*uJqpH4ry3&_p;|Ni~Y*X;l9 z-|zfw|MTDK|FJ<6zjj>cH4`mB&=Uh2CFD1v;-DN?k8edqOeW?)j9;4rA2EkZMIlJR zn|bbOl(x?)s!JNU>^as0EJTCaVI?E_8N4SmpyvDOFr z^u|8us`H`(XOWvK-`fjbQ?w>R^%?_{B7$jA%<9=!O(tpPQ#Z^hu0VFj8_(wKcEPgS zIY*MYx!E<=y6ukdeqct-0|n6HrA>bOrlB5n6rtp!TAvk;fXSaBc8yrivmHK5!-UWHd{owC2`pXYo!y5+-Z0h%xSENAW+_E9tBp%hwpp6 zU=f^)vP@4!9PGR-RJuwEPO}Sna6ak^%4$I1lAq9+IV4RNr&pxvh$ zSsmtw`S!xCu@~$-aU^$#;ZAVReSa_5ISio~AV=)%1gm3INh-CmwPrTDX$ZM@slIK+ zgHG_bxaa@Z^WWI$eqsjjX8Z5^oiEnpKleZHeD(MF|CjQA!)Z~95`DBNghFsG5g2yF`_H_ARvvSfmK}1N#-E9a1&3kL(~dQX?5O%PUI~0-+d*-lfrw}y}aMH~%$>Q8hlnu7xe!s)PH5OO+W{riN z4>vXobY_t44C+9GwH0qBw%IP~mfrv+>Kbt=h9bLg4U15Wg(o1+CJzWF6ipP+T4T|q zH#b|!aZ+8DiQv8Jf8x-h@!$F5nNLc(mzN^tAHVe1Bj&!t|n>j)McPZ zz7lYbJtn|+;y2DoP&5iIWjX^45{QHlKs4`NUH?$w zv)UugAc8396r$ascX*dRc=)P;kKEo~Lj;6NpLWGq7psQ_b8Y3@+rP6M~1!X!G_0?Y&()mobwSCNo$}rrkAX<}7_QRti3KbuO zc-Dl2b$^Rv9JvVJgIJY{w9V7*PbA#NooFH}`P-tC!5O|e!{gLs9)q806 z=_lW06`HxhMMXQB^l6U|{JE*QnyhYU-tlmDg!4*@p|)LJ0pQCs;Liq`My-+8vN+F5 zFlj7{Dd3f_ncmdqeQn`rI&a;A^JE3y4tBHVRL!H?O<#G$c`lD9a zO7BK3Z$7xy#SpC51X~JbO3Q3F3~sID>NYOLH-EKa{L8hEb$EfBL>jGDa7%z~k4Ykg zaN?4@wrl67D&WL`S2rkIGl0kA1=j%@$KL$eS?!bA?Prp{)1Ab|Rj%8LT!zh=s*gfL zzxn%VFr81=O=mvzy34q!94=(~-#UT+59I&Z=s$t}_F??DFTYsBf7}1+Z~M=`R{jrQ z0gp(K=m_NvcCQl2pH7RDboy-M$dc-J3RLtUA3e*55^0BLBM+&906yJ%$i0F!q@gIn zO*vuj@)FI71Wd1++S*-)vU zG@KUcS**F63E=VM_on__YXt`G4l>OI zR*OTQ<)(Vzf?M1#K=6YT?qAXXaWJ$L`Qev>y8 zR;~{EncP*&>HKsJXDg~@iWJ%}+4eL9%6+%N5P@~8|(!~n7kJp9W5~{{5n!umPZVW(0{?v(caNAIE1&5 zb?;~o`fzx3c(e@KM@M_hqva74S{@!99YLR$M@L6{{s)?Ga{nFe1MVRo-Q~Z+bQ%#8t!5L5t&VPSuoD~^Z#~@s;b_uraEX-0_1;rSO>TLqk zQOWG|6kPg2d96cNfcB9HvLsX%uptzzieNq)fubP8$ROb6fw;mb3^rMzTiQXxpBWup zgc~m>08oN3C2!J8Gf)3@F&DnGlbx&eV5SX~>PV)lc8F%GoA_i?N@hR*{yhF7(h1km zLM-`l9+2H0QXRAns)@MXK^uvAUba;~O0t_!f_PBMf{~yxvcO7EyO3U_8PfV{BH^fl zQfe_cn~viG$nda~!KF9}(%H{NNEL|8PsO75d^ zYt=mePnQ3>o9k1u0Uwb6+}~fL|L=eG#ozS*Un~E)NvdNq;R&|d4(a4VCMxCUkc%34UB}9s73OA+E=&ix}tIJ$lsy-Ga${7j@c*WdcR)~4LFzz)b z>{IZ6*?ZUSwvA*_^t*lq%#-Vz!$qEc$`{~61LQ^nPy3D`fG$9d zMo?`wx+BaIR(d>jacrS(qWVmy3@$FNFDOi)>qk|qE>aJg&U}WU%@5Fz^f0=7c&D;f zgNJvY#O>;G=Xav*^97s5A)Ul({1HZCq!o`$U`?EN2~wX#+TZg={WTy~%~0hk!6LC5 zf5eFy#hwO_^pqQP$S;+1V1CAO(g0~2o)$loVz!=%EcTf_RLUWfiy$;CVSlIE_zq%E4S4-3_9?i`HMsgoq(VCoHZuK-L!B;Yn)7u7eX1SHgCp*vBFz1=|L@63Hn6Tpc23*JJ zK(jb?*#aT6EYnc7rUq6qf5?K0nA%f~Y`)#Dbqh1JtOs^qGR!+&!7jF5`|I`lf|Z-k zkoy-F%g^_|0uvRFBb=vByrQ(d!Vokqc>3(Sj)5C7(+-z0>0G9ak_ZQm*VFKN)SPF^ zDRPc3^d3&q^RN4Ahj)lE;a)IJ64vtoUbPGP|bB_i4I~rJz z0QwDLxcSJbaJ1A;4U$O0F^oZ?9za-=b;B`G2kK^)I#mfAZAV z|J(cK+ke~t|7+zx_#k;QhVbcmIeQ~xyg}S25{;Aa!ar!k^tv`A-S5FJTjjC!t;HOwn~ zp-IaK?sWL-FiAnWv#6_aA?A(Vp$*X{%nKZ=cB?4-sU!(_#b_EtXZ0;g zgesJlskvT}Sc>}gR1^X%u@8$PPK!c)HgSLOvC7N%>*VWx zN8BohDh?#uM^w7*7Io+My%=EIjJwFb_T3|S(T38xJRDcc))KomF%L(D@`I{sRhy6G z1w;lgP`q?Uwr`umP&Ki`^#$ue@9)zRZG_6WAC8e_jmb7hWvsLy>HV#$%uwA~6^*~6!nSYlFJ-4+c&s=l4WHmIFN6vlyryrWL) z^rnzcyGlV=UQ$hLAC>U}tA<@7@-ud9{dsF^v*`ylHei|0iT8AD2!jHsI5D*SM zejL3-J6b>xrBPc8p)^0zh&q{G=X20xK=}l!fNQU-a%-~Vz*hI`ZsyJP25Y7<6%UJ1b(b2tcD!@Y8e1o_m@ej& zb2ti73|LIWwVZ|Lqdm)XA1E7Q)jwoF4J>FYK-+OjeYB}>9zWI!XT*W0giGmw0K$dz zx|>zYaUpg!Hqs0P4H+AuB#CP)p*3?_LwGV`tp#z`emG z%LWzH2CynS{HDqMFT#t5?ZF5Cw?zy`kKJXnRp(RM`~{?%b(RS;mD z8+_iOpCuC>c(oIdzPX`eCHaVN|NqBFlG^{XylEfLt87__!Q^A}FVp|}_Q{iP{^-B| z{OOy2+kgK{{<}`==;DHWS{bjK^u51BxtW;4)?~8n?Mi_e%_q=$vRrruHKP1-pl#Z8 z6~s(d2Hk?5OuJl#D#)v}kw^^WLV*oTE^o=Cn$N59KTkn?F&QTiUsHQt!tL$iq89&H z=CzRfu-r}NRR$VY@slK)jL*H6#glO#U!>z0AYm7yeX|)xci=H{AU~-_{8uII@2nJc za<2tvz9~GLBp?yg=L+aF#{h_NYjc$N($1|1QkRpl*(fekS`>74Ce|qcEPb@}NJ5q1K@MK5U^j+nam_?igR&Yp=Z!BY{Di0c9%;7pF!HLKr@FeQjt*=W908y+ zR!#kRgZ1dA1-z~E(I3FEh~%RF$yZ+?B2c0s!p(J;^%FtsE|UJY>S~TEV|GV9h%=h@ z?n;QMf1p|nP77cIuI`6N^2$u3wqm{AR>!Arpr_|mmPC2;w#vktDicXWqey{-={LwA zsw{dS6@w1+%8vPp0Ze_68-piBHk{x!)JV37X%jWdUcl{jCeZy^+U8?8X>Xw_0oF;a zl+b`qXj(?cr*8<+G%uvJA4tbg)FZ7h$>1i9j?_9sP*TB9qZjE|6uX2&)d-kWaNa1+ z2VxNQE-pm#22ZRW)&TWmEsbdV2{ZzK5~7~8!|5r>l&-rcPd&NNdN|Yk=7KQD^gfK^ z1G(Jc@4yg)-R`b5UA@-$#HhW&r4|k4&;su@udmAHT~lh0mpXcV zczS9V!=ymDZ+W@Xv%kGQw##8spxl4(a_`=symRWqq(Hf+f8qtd|LOJXi$H0U9zgMp z)z%;X_VWGV+405k&&O}i95i-b0M(zI<{!RzeSGo#`@8H2ru(`Pbe1Cjub=uqG5&WZ*LFZ zygIr#eSP9~ypwzIu85^TqppIu$G&mYGEliXJBKzaVgUTvhemOt+!!0%igq$%EUm~Z>$w|^8T-f z?_WAy(bLI2w^cv9K6!EY`t;(jKfXFUzIaXD_$=zZqHv72iBUX%o4!r*=6j6NnB)z7 zVr0Vaiz;pD=c}?!GBK$#@zeWP=9gAcNkpkK^)Hk826SlOF6U!WCoj`hB&ai!(6N!c zs49?0B;*h~c`s(ipBKrSbdj8jHi77f$*Zz0k{9{xRjE!uXky-wF?DhK*Q>l0a3-MU zmU}#@6E4&xeS@wBGo9#JwC5a<%6a!um5J}`6y6`IWj%oh4p5HTgHsE*7pR(YmoddHJ@YF9(#XpwdhZxFXd8H&2UnEhUea2HN&pt>0 zceE#!i4`7I-B!h(m}2PAdkGpD(G#1dn%<~J>(6bdt>fS(ypJSJ=lMu!Ge3%Ax54N6 z2redpWL4fImWgyxFc1%A_jWykrX97GG4tjQbcpik|Mfj(SNY;qu`fK&>9$^`hRO z77LNKF)XOTJpCMh6YWOQkvu^4B@IdRq~BkCi6Sc8oPQjxF8f^+yp}rUk%CnN7=SOu z&1)JEUCJAykKv*FXbs(dpi5yY=Ds+WYF?zcz-Ye!tbK?8yJ~j1h|Q3pXQk*edK9rSTclYZQvR+}iXer|5Mzm8VDNH5p^z{9ytOqV|mRDX{UjbB(gp>*e;yeY4k~Go1 zrP3nJo1d`J=)m4?J%!%EdiHm?MJ1K!J1Ub9RTXW4;!DC5Y5gUXZ$eO2dPeJaT$npa zkDf&jRJHCZ0_3*dO0r#Wd zg8^i3TGcGIT^#>onO_g19{k>g33%->z#yUesm$BAAXUmIr|oSar0lzEv0SEQKF6l- z<}L7i@Qe1yaaCuc-p%LfOzc+6wh>Mm8Z+5RH+j}xCFAPz?z9k}^^e_IT`d>*S=AW? zG>|Eis#wldh4j%RSX33epO9+pvg*gKC^PfX zEYgyF!P!QiL;?S83d(O&RwZEZX;rqnHv%FgC9u`+PKtECpr2QiTrJWG+(L-Ns$N{B zWs|h&c(=)a5y?%SRX0uY%PxB0Nq(uSc{0t5Vpo-$7FCt$FYq$PKI-a|*v(Rqs=+;j zB~;TXjGRoF!zdT|Jl81>4jjQtYv27#S>0^fyDw>`C-#I-$fpuW(No-rlC;QYB^@$J zTC{9ao}`PsMMXgRl)*Ma8#cUe&ro468P6tFQPpx5CgbH4;+SN~Bwe)2S|pRJw1Bf3 ze<4X~Yo5T>4;Nnow>SI;4AB!pIDrEJ{(|4nSBqb& zQoz*{UQZIBs{SNyuksQmV~yuF{v$gcekx%24I$a8%st-WQ;MIjM4Ew%N;!MwA$XO~ zu9B--O!1#0EoX_@kdk~-l}Vl@N?mgz5_qYf)iA+`bpTESw$J2~xJ6<<AoWiW z9sILQXCjeqcM`bd(%}n}W}cS$R5WcePd~%|lKY?MrTPV7h2Yy9yL1X;r?R%9~ixeCyl*s~WTomak;c@L2>n zgc=q%`~&l;Ny}_peI~ZSFb~8WB+XR{sjw2@pC$ouO+p11q9||%Crv$p|Fa7JVAnPE zgqAw&NKGpiNdref(k$omw7!MChBg;D#BJUdBEhE>@QaqTo2eyur*R?L+d@p(Sl_W(4tnGPST zNzWU3p9C!Z=paJ*52Z;6%ot)d7RwLKG^pKc2{wo7hv&weby^@oRxKLki^70m$~M=7 zmCKXW@LulSuN>DD0bb5B#a=m#53I$P0?!X2dDZ>+;KBLd z=L>bwe;z#rQ9xXa_Pm`h&Yz5A^hkWTnJ>#o1Qh}-BHU?fx3=C65s6<_Y|UiP(1 zn5)~xl_=q14W7+yftOyaa>Fs|1I9N@uSCIX51nIl@Wio2k)t6EefQ`YxTdk7R>OyP zSj%eva*KO-c<407Bj7#UeN)E5@p{U<@Likmuik9Kdns$qc|N+wE(!EM z;(Hzmk@nYabK7lcYzixd7^lA#c|^C2rxK&ODV7}n;@F|&#HkHRX9oK1=fz#Xs;@wW*8{!lv)2aeCg_ySF>S=Pdmt1|5 zTz#8d{V}=vQ*uQ-OPO9L5PtzU!Ysc|vMkApBx{ptJ_D8+ImLViobw`|AP0R_C;1$> zuw$Fa8#&wd`B2Cg|mRAWd zDs2reiLUcZREe06MV63eQG)T?68Ug3Nz3cBNl5!FDJ%IS6Gf7jO`_U9sS5a?I*WMx z7RRE+v1zlUy-HfRXS6MJVG1{v2D(oa8Sq}ncIV|{*(#n^%-{++7ce~4q9xQ7RaY%r zfLzqo49ApMzy$6T*vd?_X%2!ZG=fR+o}rmJF<&6pHZH2kr++Lfkj_ovu_kF@Hn3Nt z)1QCP6Ro+PC3NQ(>hGJ1u4eRgrZjDmNnXPQn-uv1ymQgTXm?Rpps)iM7Lb@V6S$~M z(mG2-QRIt8BvbLCfHqIX5tMk7wsrm)zvSx}RUvAX*1(*B-{mz#bJPW1=F{o25wGC_ z0(?27G{~HTrZ7C0VG3R}5D32OYH@m%W*|6#=RCOMU{u0G`S*qV`-A-ZKADOi(q+@+ zY5Ag90#UC(mXS=w8wl&F{(|xk{DzBrRaCRvWGYVRZao$6s=RC!2_W=b7HQ4sK3!Bg z`wV(-D$bVmcv-+ZK|)VeFn2^gE9D#EEV%-W3;Gvb@}P(XMGE*&TK@pI5xAF1(?f`O zlFUVOh5yWSu4t~%5FUSlSOhi|T%L18tp1@JP*vQ{D*B6c0h+YXb%7N?g4c|y$TPYu zqs#N=CWktj+xfUEa1P@?ICbPr16TL5`~(68xM(ETxwv5y_2-jUFZE2t6@a_p7_Z}U zb<6!ot}(quTC1J*gqv|~J)OdadzQ}DNHO%5Y{@@PfBs>8F}1#|Qa@LDw!WBdEh{IQ zNxBeH3f%kptM8tVTxOX-er)GOOl+XbB{wLk>Gh&Vl26=s6q>*z$}?TnKztSxKxIi> zA0SwOQ*7GW;) zUu=ow&)rD=uW$am9g;si=|)m)*_uD?b>ocxoCWN2QG@3@%8??ggOj?JZ3lJC`$g-P=f~!qCFI+|t)FwsQ0)xMx zmH+qMgXdqqd$7CvWq0@am)+e5`1Md-uLE1b5#flNdSd!Zt=JkO2IILI+jS*T&we7* zn2V}v@NiCRfftA-PLpWtycnrVFLcG&QwC6;6u^?m+7h}oSx^SBpUN8h^rzAaNUiTX#B?F)pG1LkGBFEkm73+#21EX)`0R)oLb5z z;{e3i+I$&~FJBmZ=;_UXe)SbceGsK!6ahYMKyw{O$b1j&VNqS=5KmV}L;X0E{m&r1 zbNX#Zx4aN`5-#)aPdT29HsFIWWO(}X?TAj}^e^JJIg;u}QmgorfcEx1ofIlD?kX|% zOJKVUJg!syc|US}aZnl(4x~S(4T*SC_x0Eo=IG|=0^>~uur(4KTSdu%(}N>r*#cs-!lYc(o5DDNTb4@ zT%oP#mUK&`fUSVi?sn=ShuO+pq}KxpHxs6SKn`>f2U^+)sSxQ1&yqTc_FzF8!IUC} zDHuvnAmRdzXR*nA(fMF7fD~nh+aGB^s4^*u z&Q;}mA@|x6?EI4aPe;$5UrMi}d;6hDBH^uRl7O2VGgpG5xKq(?*GvHHY9@-Rpp_dc z;{yq+#r1*yAaC9kXRcfk(dzxTk-M-1%k$;mt8#mH^s+Y_C~b`8j>O3BAn<@w*!-CwxIPTri9P)<2Q z23XR1G20!%fvHjP8dQ8sT0yFaBRua_C$HoO8XpmD_jrPQQ(Drd?9*YQ~?m z4Nmrc8i4mIE`sP;WCaGWx*auo^q$#PaI~{!Ku-+kG92TZbTP7|45#?+vTgBG(b~md zk}0k(4|_Co5&se`a}D_S>SW1YjBo45mW z7l||t%24_QNL}xPfO94UZwvdfyKD*D}}LL{vI=v3fPkqT#U^`P3)T9 zj`Z7~*r%#B2Pr_P`?*({b71;(wwjJ%_3+y`! zK_Q#qx|@;_D=6;Z@d7Ty#C*}-O6eHTf?@iaN;zH3)WHK5PX!bso3>^zyRswzfZe+R0Y{i6A~XkpH!mmYT)=Z5os_%rhZ{?MKxM1C?GA`N za*cG-$U1ZlNd#sfWSBmQ4x-7Rt$tc8lm%ooWO5MJ^ZFf{X#DUZK0n<3uaQNkhS@|Y zr;H&^qTcSqr@g*ylW7gV(u>=s29R|gw(*m`(?ThmlJ4iNT?aiQsztr2g6JT+tjdRX zhAPZmT|y)mt~Pj;Hb)eWRc~iWR2A9JdShcDQDibIPMBwW`t{|D$$!Rx`JrB3SD#2u z@IA7a@f3WQr}fO5BB2NGY1wJJGcCdPCI&2>Y)mGmI$DsrVL1Et8Ye&GU4XAQe0w$a z;Ku*X8rMA6EULuH-~Zc+%+Nwdr+ga6*bU11&0_WS+4?qp8<%h)ghP55m0mR$6#Wt$ zHk!nlXn)Yj4kN9Rvy!-v@b71eH(+UaifB{5UUa}ShpGU?=L>*hvIe@z%dENyfXR%Z zU43WO=uW}zdTE(H;5QBZI|M>^7X8}>!K=pG6E_iWC-BG4@JzMs1RHqWRjo76Mq%yM z^wR~f_AvEf1JPQ_#MDkUGH(55^`jP|`#@3l@aclPCi(S;HJdRfjD-br!6JIyz`vRnk3%U3@=0P6S? zugmRAg7xiz>bsc!?SeQ=yPeZ68#;Neg589-KlD&fJVyAw3 z0P1?Ie!2igCqVzUL5zggdesU5Ng=WVlb<%Ayc^*YI{vb=ZPh(bm#+gD=booTZ3BCk zXFI_Lc9nk>H^P#f0K1QfPWHcYL-i#9p@-AoM84V=P3f zjPl?VkyuIcVs`K@AJlhb#Pu}S^+hefu;w~%Z^@sL`3^ZsGPzqjOWIh$zs6}28V#$l zwYw|k*GRM|c@y-NREnGEuOj^fVj3=>o=(N2J#Ev;C+1`Ujatb`Hs+huS7*oQ66Y_+ ze~X?)w86$bvRV{e^8M!U9ROW~3jmGyfN2+Grm|Eq3Rs-0%Cv+l>a-kOC@8#=8WjNN zxsRIoO*}1=h+a3)9R|6+(yYE~HDl_xucIhd8Pw@b*s7K)`xZEC6!W|nydOCYwxX9z z92Ds0S>1LyQ*m=P3 z?Effg>s#;56r>SnplJ!RU&j*yuNK`XgpfwoN{6c$pHgdE348k#42cVmE?%=e_)?o+ zv|UsO$w5@-9BrXoWIP>h&=gSFY7}u6E%WTrBR2<4V&Cfk)DQHs-VLZ{yw^!0-lQ(RdDq!ty)@8n9o1 zT=1tuF)adfa<#)jb?8x}nCk8e%~iE5GMrCVH{+QIsqXp4Y~Gd)TRxgjQ%Z)XGBs#I z?ONH!<(@yz8vPBGbe?g}f^r5HbRe;`sgJKoyAA>d$#0cs(Ua(aSdk%S1S?0p+RrB1 zui8PO$?A>O^5u)O%5`?*W!BMp+O}x1&`YzdH}nH{ZSKGhLf943_w|JV78PdLq&x8jFb6KFo4kp! zS)!{o!fWcZ%}r86-d{7*yDUO_#5nyQ+{N2;0(f%rdtf^<@6-IX#H@lFcfBmlHvDbp z4*ackLgI0>=^`z`I*w8azxfn}V{XH-st-XcRUe3MDjkj+w&`%=o5_^`;n#-7Yp~FT z!QJZua+A*cpou0|FH2948{T|~e*q>QwDtq%v7B|<4b#O1DyUstBo`Og7x3;fO)f6- z=I5p0+8N_zUbL@Dl8H6s(Gt(~?%*3S0aMUlt@}lZq*1S2uIiN_OY|*;fRO7xlB4_} zzydY41&?rk|A3D~0UPcLP^^dAB8{=H3jP?xCyOUay01vAq$c zb&ZYCl)LsP2=?q*wEGlzCiUgKNx0S=7D`+|)b73`(en0^kT)NP?b`Qz$DH@zHU$H@ zs21?2xyq-|54~lnf0CB=KVx_u!Nz_^PxFyS#DjFPC~h$Ub+_!kUn92*by1*OlrEFg zsIa(-uWZ;wX&cy6(w0PR5Ro_bN?gf;p?#z8dU(sL#YE)S_NimB{%Y%{OHD5*^nJjn z@{Xf0HUti1yBD%Ly}@gVY6s?6y>y_v=fK@b;l?`D8#8@{fU)TsSbg>R4L8^l%Imhb zqx@G|-zChq+ENJK*Ql><;V>68($tBAo4yJG6d?J%m=^NTT~n6Lo9@=p(&7liGtX|H zb70d>aNsZrDDc6YVSqJ>J6mTj%g%na%i3~1xsBWAfGf8NFmdin0WwIir}slg6v+*L zD#8C9$mH#D2lK+Ndstw5vXC91Um#L&9j+r#S0IfWd{X@tjM(Wn!m}mx4JPbw=QYmr z9lefuJMCiLPS>zbrylR+?7$LW>&>?DHe0EA9NKe%y)df9a#cIt%hcW0pIpl6nLNk1 zHHUp;F))tm^2XaUS*ySdHHy<@xCd#zyDMJnK+$J82J5t3?{X$6Z2(f~wym4au9XlS zM5L%fU*E}YR!=KKXYXWV*WdRyw`I|?{jG8LH+Qh@aa3W_p6LP6fWAYp2h?VtxwM71 zC~>lMzXKc{TgXP+)6t|OcY55dee91rhCunG&mdA^pw{q7v6T#7&?y8 z(?Iw@wwr1loL6b%9Gu&?sk$lgWN)3<2d4_9N0W4I4hKfcJmg9|E@Q6x#;Mmmg&<(` zxDZlBjt3&cD2*UtP%S?2X%DR0sb~;YGDrIs8R(E(tL>{97PV8^e zx{Sf>JE|7a4SQ6TsHoI?c*pGPR=sGN=7q>qoItQ$Q}qunbzsOfXS@|YF5ETuC;cUs z|5sD*1-7#94{W?T1ZSlDkKq!XiIvzxY(!D^?9xn*XFcXzeC|byJK@5_FzJ+6dt0ea zu+2$bhEnDnFcwiJ4LR$eQDTMLqa-f08{?_w>=;4^N(C=PAOv6+92WF9zV3T*tlEc9 zZ5APTna`WkE)G-2R+T4~o{st|%wv|lKm03;R_2^+>CKr&CWRmNY}ar~4;X>m^Fh6& z5gcEg-aQp}YF%&eBBj>Xwq<3l`;Pj~RoV>UpFPy!QR8CDI|by8%JlmIn+rqdGQ;NG zkj-n}Cr~q4RWpj+vr%p!P`B)P|FMyAY(bo|`CFh>kO9ncPRT)ZU-#9V^Yl4Z9h}F* zr*YTRb{P>fo3HZbfAhKA&D(5S)|tz4AeF33(te0?N9H+}`ug>m74LlIY=xFjx(3?$g2I@-+ zg2VX8Sm3e=cI6#6KRLLjDf>GcE`;)ecD?RC(Q3m$caq?-#qEiI-=1UJb)vcEZ|t4h z=}dI-sk+kajGcEFzYjlk?E}%ah`sj_421D21IG^SExR)$vT32c!Mlk<)4S`GBd^uv zwwo?n3kiO;fZ*2%2ezGlbQL%*+ggfn?*2W&e&YlKOYz`51D+Vg4;@kvIsc@>vfB&) z9ik3YZHs@!q_|46R}f~CHuD@ zd>KPyO@cdTmwlh<@YxQ=cx=xn{xfa_+i-yEc^>CE(L9pNz14p!*Co_I$hA&`ky&$C2(~WWFa=vBTB;KHKJQoPChXEUQX^T!Yn* z11cJP)4~!59)_W(h$(Gd<+M47&dmZne=_Rx1$+K<)E`AdYY98ppc-3u)AkJ-=$3II zLfvxiOwLiBC8rb}&`lf`6YJu&Tk$3}JSkds;r7@& z0!nt{PwtDOq*4kpQ8mg@gGe|6k}m{NkmSMEvtxx7!~XE8NlUZLe5l714nSQti7SgDf#b-`R|FjW@4_{BNgLC zB%mccvHD5WBiHNjOWiCI_cEdHJq{jog(T+RxjuGr2bP>v*jJDYg@d0 z9UHV=C-Ob1b=JhD9pQd7TgW{v@bis5pKR{LWMhXUTQ|;rx-sf5=NTOTkFYQif&;km*MuEi9+#Glr$^@M>?U)rhC8Of4Wt%Q{XBOs=Am5}5uk@+#G0Fx6 z(@z~ccv%-aW&$A~CD4<#N=?u=x`$lt5fgT3DIBes=2O0~)M8Hm^6DMai$N`FY2utW z$DnVC6Vj+GKGA268XRw>OS_8>XGltk($$(~dSCjM`;2xTAZ=H5Qd3jycJjROG+;ZA)5J2$3oEhMi_+_md(hRP)thu5zDZzD=o~T9 zQT;Xa(c$GQ>vo^f3Eyxwb=+?ytV07i*?giWfi14T{xu;)hQ;|qC})Fz5~y=gSD$Y! zH$}ERgoVAoonAU=Oij|VtlDTSqIsH`!)X|4?R1HBb-DJjAh^QJ(!Q6H9-4B+LDSOE z#y}Sae`7d0d-d}%-x#*u8KkeL&v^r<{yXS=(v!nM=<+3H!3XNH^21e{4VKhn*j^u~ zkVAv6$UWP)knMuw7-=$##6}D^LVs39Lu=w{%5*nzLk~=JMGXtn5i8f#tQyxn_mES@ zsg?qLpyeKlU-44krL*$jfegm-)mOpO_I}f{y9X>AfxBNp!`5eJ2MshW!UP1y=*t(M z?yz@4Y4)j9JY3vbAqN(|4STPh1W8gQgOtqE`qTUL#%-hASu!rOloKzE zlucQqcNjEN(d+JVau&p4oo8TtF((d~E3&tGZD>Nm_Fh0G%MjvL(&$Rai4?DjQj{AR zM!(F^4VOiOE)tk_E`cRZmpWFwUVl@meGfz{c6Sk{de@_lX(`&>*zj&tz9qYzRCc(w zp2mv$H9k+6D}_)$C>=cDao$kKcu_>w{@w=RDV%ETE$Sw}iOg!h>tN2ox>58Jw z6;~qZLx>l2+nXBcs}#?Um#tbDS(HW#2<{YBr7wv!nnJDb?n9AD>i0ZNduJaq|8nTV z&FBW^N?7a+pYke(&5-yu_$+AMwL)CxHf!ZVRdC_xZ_rezR0J&f%blL2pM=HxH^j=F=L6Tdx84bPPz`GThi={7_im7NJqx`;Y2Ul(QHR?MTd<^b(;Wi*2Dr@eKI_5NDtmID!`->sS^FPcoxoA>&v(}=H& z#DS&I&~!mHolh!w*4w+7-VoGAwYfL(O)5~SwPC8@ZFWd2_T|J|RbBQ>_nrfwSQLOz zzn%D~&R*x_T9HKn%1Q`?jQo770!Dtm^}|JKS0#+e4nQgIBj&>gn#z1H7$S2K za-$G3uca7*kbQgc2kF9~q~-A2jXJ0sq(xpHglbG3Y)Xv{soiE+eozsBeLEow?I$p! zQe~S6`QVB$C#3^?$|0w2)I^N`iQ&KkkqY&`?&Z-5TzLqI*Hw8=ueUl@O*;AHX5rb0 znfNQ1tqy+mVFTeM9O5^Xa#XgA4;YM>X!7qH4e)%!Cl7l{k`9oxCYa2+B(#ZNW$1q;r_E46C1kXHR~){ad;j?d={u`Lb1%Kt$|=>m~ozu z)Oridmz;=;EF>zBS;zc}0@HJ~X5O=iqbME$TYYRGdonNj2-%sbs6DCycej)I1!p{PY(R1Z%Xxe? zi`}}n>+E1BtVc}nrH&Y2cCA*7M7Lr+**o%OYplSK8fIS&u(HLl205|X zqT)uO!K;F&+<7BfXRJ6tMAUa6FZaa+IVzfzOMiC^yIAx z4{kkw(#fO9Ff+|LQrtC8`qgglUom1`z(#!$r>mKoShXkk) z!f2@@qADRwdp=&a;xNlZ)-b-ODvyiz7^dAzwqVVsq;i}S!IU8OCCm@8>S9s2Ge`w= ztEM`G>?BlqZ79L^6ggd+zO|%ODhmT@XLwXP184|{gk;fqUxkX>4b^?#guBZbll8r( zfqCbZ>0E@mP-?Q5adwONjn=|$b-X4{sUtybzE zOAErdtCTq`&Z%#4;f@?W0BPVcQ@?y6x(q`PpMA%L+`5y9HvaXU#h8a+PaV^dug`f{ z#usT4U5ue*e39Zzwoc(^bO8m05^BjXx=1yh=6->6-dyE{h~oHStP$y@7sNDHFI2(R z2O(+cLWBDaX;RfvY4DBQ!A@jyT$PvvJ0EI4Eo-oyC~gVBVxL(+^t5g@fI_J*3aZ9| z{1Io>1TAHd6I_nlS_t{15KXS~B72=TtxC{C)OaZ;a@(g2xv2-~^;zMzT6EHj_XOP^ zh*dWs%bQ76mRiWZu6tJI`kU!G+)du8Ods#Hm{c{M3A*k!{UqK~a%}Fa1~sj5b(|rb zx*9!?p1{>mjcqKmX<0yZi0U;0|Mg0!cz7sdb!(AVww<*HJ*?hvL0ryV)tQAX*FXo3 z=bX=TVK535P5F*>jK{WkSm~%rlQRY+x6~);TOO z%ymgULcCTrVL~Xqw85k*Cuz%Y?mMT~N)B5JjKbS06Namy(L|O&WvsnIX*A|sT^9k{ zsbc#=A=%2@U94Qb0$r#9AYQ!m0(bHGBA=C2E!-oaZ{Doiyj1M9kH*9YR+~7pwzWWc zKbpfD=EcvaR}vH5ZSVU>B`6%?fjp_w09D0qPNf8OdLAfiH8R zG(w2r$${B@&?>;M#tJsgvVdR%Cy}#yaVSL5@7uAREfCPP0_ORA)OWg%0nHGoPknh8 zG5&W5yxUB)8kpEy-)AD@ClGTZdD7pQ%jjU@_KVo&mcU_ zXSg#@imDM!`!a3Q(-v4p)gZA141NGmbU30Dt?pj>aDIu?e&?$32co7 z9}EUwjTQ>LbpxuACpDvS3t{)tRQzN$On4R|34JLtwJzGBF3=pHhuq@Oz1)3U;B|VH zX4TF6s%jmP7wk(oJHb^)T25?WHA~e!AVlKes%lz2^~`);q;RD$<6)%3qkX;EtU=4l z+ZP!=Z%7}pu_l&L)4r4Xj75^e5OAUS%v5FyZ8iBg9gK1sOl}{_h z3Cj|LX_2BiMZ8)baa_Q8tFJG*fXC}vK5FD0XgUGnXGBo9F>$Mfg z-g{1qz=ktjG-}YTws8vzB^p-)keAHim~QYI>Z1tTcc*>1AQij>MPK znOszXgY9Pf5@-}|&jlNwamt5%tfOl{_!j-#zsAgj4V4nIGa-UA@0g?tRxu0yrvuz6 zT~-r#2K2kKB?J{K#o^f6?S|wp-C6rtv0;T-Lko)Az-%i)(3pR83C8HXD zR5O)8VJ79|%~|qPK=6j>8zjlHgUVUtRO652L_ul>8=geIKX@VmoK@;s6-el|66?Fq z)T*@N$X0xz=x$(293(?M8GmH=&y`s{6=uj|jrvCl>t$34%&|L}+ZC+qQ_o6S$yQOf zoY$tF+hHeRXuz(EMfkHb)gI`N;!5?IZaXeH&K2{@9dWpvg&e}0j8-O}lRTqyYLZHt z>Nh%2+2kCI;apV|%b7f|3IzJv5-d;+rKpvB#iDDQbzoI$uqc$Cp}|&bE36d|s>ghC zsg>ak{j11~*jPDnIByLJsI1qb!aUe(o2B?n62IjP13@7G|K+Pmv?I?`D_X|&=le#vT?$B9`! zi9=ce1h1dwRi?9{!h(N;kTmLCV{9(wRsM^}erod~Z*vqi%tWg{LF^WIX{U<)hjm54 z$Y(4vG0jU86&ESFeE9GV3a&1#sH`EoKE3UN2+E_n?*-vCEXI)d3w{*wT@=@$y#%e+ z>#jOqs^mmT-$vA1$4o2F>p3V2C2?5!@rJ?>jg$5jPmhM`;q)S|^-L&&JjP{XF`;dJ zdxVN!fLeTB)S>}@f@au|Bom&Zt#2JMgc<}MZDkcrQgpGWZ_QU|hkXq7$G{6(wfQR{O8~57dV{y@g-LHdIyQjV3~+`;^$uhOtDT*PcMRV_^tCB8jCx;3k9c*DqOW@& z$`9q&(J<=uV0p;d1Qsg!TvSV2rH*Zsd-AICWW!BGz($qIdy3H@K3uldF=Yv5Xw?MN ziL0^=g2uk`;3S<~k;zPF1xBa1t9~t9S@+Pr76XzIeDXHxwX&GEK*Z;^PHAK2S`#V| znJV`>1)-xe-($x8X~NYt3Gw!~ql&OwD^wdji(@sM-@B1!l)NnjgtF6mo)$W1-(nMV zG8j+l54k&Z;A4PRGn|UtZZga~DL!YSe8Z2!$T`UzD7``eg(Z3RAwxoFQS|l8yIvYF z?};1Ydyy^1g>Zx=#(XlpQCD+444M|ZwZm{R=|V49NHyvqu_b6e zCww?+ny^t{p;nTbW%+7)hOx_aGZdwXti*`^(WF8({f(GcF3Y9*N8w^aF6IzNYTJ;Ca-e2#S`RuAa%`g=5M2_5asS!# zyNDluU?vgw!Mn0aQ-^CCHR)8i9bg@Hnk|va>C1AmCp8SMaz+My-n+N}D{`(Q02oPxCSdDBqEjYR_yw*5li|L5$1xa}FXfCaF{95$`k^Ad7Z z)qDY(IQTM)@f0_2n)|MNh>sW7a$>|Bjz4>M_10?DuZosaV&0z`6WYuy<;xbzRkwZw& z!RwovyUpz1XIN~1=JteAb;OJrQAUGW4z|VPL3eYh)2z0tI`h7738OQuSGYAd#w@P| zT4-u{)uI;D{PST$J0`p+ectUcHj47&W~tt`dOcgHX_tQ#Nk~^(`Ht|E;)Z?^60dfh zuXsF7G4~U=vaDhyKv2Bq6%R<-oOrEcF|BG5>ymqpCo&(U0UdSvC8HLCA?f82x!;CY zYeQf3;qu{~LA3gCIlv^8t$nzRZt|kg;UuKtepJ<&s3W}Fh{+PVILLcqy@LDum_~67uCt}V z4xe#c8N?flzGLYVMr}0hNI5Hssyd&+9;_9%PArq&lzEgbDh`iGA&-} z8u=c1ZK;I?Euj4JgE{EK_|{LhMrgEBdl&jM0%g{TRhyys1pPH1+AWA2;@B4vpv!wN z!fs`xmVpHj7Jdw*whE(T5KzkWq9+5)FuMG_3-{#V!#lh5>XQ2wQw(;GgJI&TcNy@I zWOKy2$o>xJ!_#mdDhmO(8`UMSt<$oZR`r~z0#baGJI!C4S-EH9hW>7=vjB=FhK=+s z4trH(Z*hr`XUb4@=MosUJq6xZ`gPT^eOr}u8DXuEwZBX2Mr39h#vN6xTS5In15QiE zx9{q_s`K`iGvciEG{N}3t7n)AZu!z#@wk$m4a>3Kai%<5vwT|#uj;jfU^>yv@(1Dm zB!IrL&e1k9>|EnUI!-f@``=*O!OZV?DT@9?s&4>h+xZ}5Ue4GMJ2p;1Qn>~BC#Qm_ zn+oYEGTb`UE}+qwE615rlO=;wvL^3YiP$BtOHz{P^edBy_g$r z{^XFmcF?uc6_phm#9Bmd0cd+NjWu>9gx$|tuD=P}Zi#tPuslqxvCzinHR&8pKYEc5 zgArP#hP+;2<7}L~p!N8so;Im3mA50}Zn>)?<$q(ST(u=!*BPgE`S#{*NrO*xTusT+nzU-}1BN@2^ylFes<6Kr%hf@){3Dw_nelWn=qGisA zbi1p?{%?Cx?J%2XwW;I8en2I$Pf06+p>iR0=3fEA=q`cGba;{wwjV4cD0OV>7C?RHJ>KgQsu!E#fX~G zFf`PSs~4m>E{o&V4@feTpw+D^aeIQvTqH%LF2>Zi^(muCX7@C!f7i9jdY}om&owum zr;9+pJNGWDgVy=u2y|P8X!IyPcy|8x52Mi^9`+y4@Lfu| zgTW_c*=D%1bTyw;)jO^{c;Au!KkPZIY!Yrk%x}8o!2CXciXOb-Id;doRI<)EU>`ob zZvD{wr2CCBm{VI?ZvZb^Jrk@#Fr^X_+bX>_*$>92lwN33z5?PoC2Dc*5h##>r3W50 z={W2G;$AJL^aCCl=vSW6-?W@uRW<#F!%XIuc}u^hDsx_CqF_HkXNx{@cyg2y<9Bma z-AFW4tt6L#MIpe!WN(M>59Zz&r%A-TDZ+3ac1y8RMp=>J%;E-Te#@u$(v}L z)^#rGffho}7gYoPtU0m?2*nFh_=9vQfg!!E&3$u|7N4wsfrRzGtk#PvuL(;Lw2r;X4K>D!e+bZ9LUzG;gHgHjvMqEjGrY$loV zBcPRe4l0?UAredWp+={Wyyfm|>rG{_S&GjJ=V?AJq|@cqR)bZS&S2GLELH6sCB~q_ z-e1$Y%*z?*=_v)hOH*$Bd@1s&nA}c`yIo{L`4g?}s))Hxm5_beSKz8$5_FX|QCfie z>f2}x0i%s7Iz)p;Yqn^S&cq-(N(<;Kd5ayWI_7X^X|EuTGFSk)77ybbS|<3h|E zsitkHRbm)=n2>Ig2IDHbufhV{VF%%+IoYE1Fhh;84FRabtZJDasy5%{SPKVCNxYU%3of$UU|{ z>8bILrKoRD1(?fK^ z3-kDJTrJx-dDB2R)nYlz)iAF#qh424t6Fm;H!tox5vuFTHxKCyiLzT%nw=s1#MVtq zdb%%T*Ye)#;LX_Ni$ajp{-(OJ>^(yY!8t4hvie}Xc&YLVxaeOovO3TQDc=UYJ*|^S zzU1*L8#~&b5>Vu2c0`5gn3U2+?rTGZPtjnm%29PfLY+ad$@%IVh1w#0e46*^JXE+2CrC8 z_idwL>%c(>_>q{}eHjyKRJpTS-5j+%v+s^T*Ncw5l>!lJo$MvZPWtA(#a_tQlViiH z8o&^lJh%G-o@i7dU(KMQTp)wL#%(-9nFrcE)=|s@HEWlQe!@oY(IeyjnU#mz01&G6 zBSX)OoMC{O>x?%Itn7Wtk3;T&n6uFRPB%g7af&-9rKSW3>pVR5O?rVTX2M800Vv%r za}ZBtd0JGnUJ{-6&Oh(c*C>h3KkqK81!(7wdLyZhd#=R>Mu0%Y=!-+byD;kW(qDvv z-vF}{MJNt(X=4U!l(lDz)%CXQI)`-?OV}$(=uu$p_Rg0|n73lv5z}O#8_X2mM55lq zI|Z}qB^Z=&P6HG@ypv5^$>v`M0{?np_4uspzWczH?JS>sQdgfgpM27W7K%@5eyoZt z?7LN!Un3!3=jT&n{_>@Z+0*XS-^!{Qf8DtbYe0z(H9WbJxoR1Abb9AXyO~OKvvz&^ zM9KGYudnpI+EBpXpiL@!Yv#suprf&-7Ug?$(-j*d2$H5B*Tg%bLbTU;WgM|;|FZ3_IgIyVOSgq`Zk*` znqK1*yUE>?FT^H6S!hQ+eIb*v-}P-#?i#Y{UxQH|$-v3Vq9^LYOXVqzz$!ZVF z>^=6_Pi0nV8m#qbVFy2ZXv9TOmW1A3sa7%RfX^$rGRhLBsVa)5`g%rdCpvI|dOZj! z&XT@-iF!S@$#gU`wtJp;dw<=`U~?FYoUlN!T{FWS#x3T>w5ku$Tcx96$m=wow$2&y zBpO#$K?f-OiVlb-n;>bGy{`WE%H!m3BH_WWrvW|mg?#erG)<+;pjtWw;bpOQj^^xS z!7Aw(${jb;ksPP)>L1**epp(ja_oVwssjs75$li>s6nYlVg>8Kb%z-9y-jCV)7}>T z(RGTcp_A)39WR8o`*hg}18+PG*5Ea)cP*~-YS|F1Rt$C43l(x*HDT%==W}gr%IlCQ z2H2l0d_B&qPvVxVU-Wi&du&d9k{WyCbbJJnPTa7?3hMy1`=!|%ql@us9gLn_TZF}O z9l|Fz%^u^#wTJM%ZRWB)W$exgc#&K`x}Gt->w8xc#-|RnZUabw?9NhDGoDTX^36~w zMH((lk!kwf`7u7otV)_tFB1+`^^x46kZU*uH1FRhi9On2};U z{=92mz@dYTwTksL9^pLGuGh56fbGBnAbbVHJx8l*lev3;$JR1{nXFL7j;ScFP#Y1Q zw*krH0|p3+8DTQUbU-s^e3mz@sLyn7;OhHP6bmV(Vx8e}{A+O>8AieL24NXYalM=^ zaao*7)21^mk#>u-t>18giCV#y0l;Zn)#*$b2vG1+0W!4SFvL%*$SrJ!A@m?ya_(0- z{gi%D2;(m9`}f3)W!9q=Wp+=bqRhHb79zbCTcbnh4Q)r5d$yhMu5CM^y-(W-X{hb$ z9ut@q=Qzc( zE>f}2&1JCuyqvv)oyo51%a^FLD$pO3t7T;JsF6YZC(Cx*3W!{+f#zhe28?B}t|zRz z)CS1);eD!&L7=1sNOd0Q zdN4C)i&EB>M1THcKYAQJePSU5)w)|YIDT=2=z;4fC{1D3jXLGpq67ls_z5i|-Q&$QI_#))4f}H5h)G*{a~wDTX0^2*Fl;jLkoLCx@T^pC^I|B__M_B`u))5 zWh|BT+<-o-Bub~PXC4)qKn(Vz^1G4SUMp(RSu)=OxzV*Gp21)W2f?N=08wVf8at7S zhmvyN87Rn({`Jk}dqh`r+4>4MS1*$-nyVJTYUd^|v+8Cb)d5%>1DLJVY*vWFGCN9} zNty`|-!YzFy86*=RnA|os+%Ob(sm=H6Q$mB_mCNuPubUblaIkX?e-KrSJTxU6AJ@lID|7hd1dhXb+|>AUM6MZkYLutRDQ&+-N?UiQFuu zC9_N+7()0YF=l`6Ue)h!xQ!y#phJcZHb7YyL!H}|!-;bLVxr8nB{R50b)oW-IuKv7 zf?XbmgSs!l&rh6%yniU2Dbw9V4iwIzRjI^e$;H;5{qn@u3>f~|L)J_B z`ctPhf4%T|4#sK*wv&F>_A?->r&u3-mVYDrkio|>*snMY(YqdoogVfJn{;-io^qi{ zai?w4vdpSe#cs3QOa!U)aIc9t9qve!H8w2d5U>XI za?y$mPD*$k%w9;wQhv&TL46GL&Iksz@HoeJXcOPs-nSWk=Xp&=3}rQ%-Gitc*i*|c za$H(IB4r6tX0fH{7}f$bKAU7YYuf4+7>Eg}OXy+JipN}&)>@yw=3$73cxJ69+FYAq zbUsSFWJk|jg-5gajgW^GJ>6)-7}79$Pozfq&_}BHM|LanfgA@ornl8M%_E~LNmNm) z9r4DUQL^_NzS3k`#+C?mv!ez{=Rx4w;i(j`SsPO9X?Uq#m^u6mrO=R6F6MrSzwymk^RIjPQ z`ntA^;NoBDBZX}k){e4yWIM;!wMyusEWFKdN6TH?4O3qU9pE(c6VuU;Xv7(2wdq-H z4r&>9io8*?X6l&%`42D@g$a$-Ed!t_b9hNt|2n3-}L$r4A#3z)K-D= zo;{U@rKS{T=`kov7j@Ab(&b}x?7LwpEkjGIjgFPxhH>kTeMIgA(G7s~KO`L) z>N0!eP~DQ^HEmT3>GDuTFfs)+Uxchj%z?X2B35Sp*j7vqU0Byv>YL!)$5P)UpN54K zkD2R-oR7ShH7JyqvxbX0R2rPbvbW0A^&kb~nd)Keut z(L?R;skzB9NCuAuK1mx9^{|HCP`S0q%j{LTSkm*Fqxy{iwMakhv+|^k%gcLu>78X! zb;~O2n`3oXjOKzOljSAGD>3<`(+H2Gt(xr&XQ&$a&=^FuxxDpc+u5yp*5u9m zG|MYARJR{`m=9zxoG^d4keO!6sJklQk?&`4D82!oRJM@Zw-;~~QeOQCOJdFX-CWRn-W5N~wiL==Sg`6lWlBjsVTL`t0@~-SP%`1NPT5 z9UWj}*BRUoLWY1|5Qqo7+fa4uoFZ7!P%$QV4FOW8)(W|4citw$M6Y|v5|ONSRUq!J zF27DO;?}?l`><*J9z3uIJ2X6^7_{l^t#WtXJ3W4Vd~~K~*K(1itsrCJurZ^xBG@u8 z_b&V5>kcYgG|>T>xM`}rmAb|zl(uP*Sfa-p3CZ_(H!o(}yPHSi)X<*iP}FVe;~;+M*^i<3AZeZDIoGH3=#eyiUAaD_L@}rqs9(Yi(I|x>qlAHC zRlv!uOPQII5}5V0a}UOBP!5nO!WFY31TZUqQmA&o6%BRI21 zQ2P>6NS`E8?+Kv6%>c1ZF@RoK_52;83$4CB2INK2LF6}zT%oF){n%^=I)X+hiovO9 z@rA#KcQ66=x=xE6mYi~VDr#9SZ|3Pj{%pmZA`#+eQB^WyzAV~&p9U(+s3p>gylNyjDnSaV@};uynAh?g-M|DmbkKZ!;h;Fm72* zIy`*M(pEIAM@?=cYIM(rC3i;LP|Dut%?8UBg*WnptF$qo;UFEG4kcc}gY#Zm=jkrm zbwQgW`qq;`ev8kGw9Ht7?xoSXctJDKzM$(VJDYqFymQml>O{`f_JO&?*nYWuSf=~H zkFhnx*wKa|B=H1~sQ_%E@|6$Ke{w^ZSALw)FFgEqx?c+ur%3c#gDg~(SPKa`FpZVJ zEV)W|5bQYQZrzG5ZEA4BYpz_g@n18DTb9vcDp)`Pqh!sf!7vbvvV*sd4jD{ROXuAP z$y)j@eJ)r}JsNMX*AE>?U3{T^&OCS^qg&A#$d)Ds&vE(`(i|Uh{6fsP3Al^hF62dQ zB7u5RO|+;cX<_bZ%Y1h;1j&|qt_wRQ&giVW28eF7l)aT3XfdvquFbVdlp#KE(p>UO zk%W7E*q30f4 zNP(tSudNc1gfM8?gKR+oTClNOdzS#+wze(o?o)}f`-*&?w_MfcOy;laLW=6TO&6k= z#UM4Ex1pONMu{UP_q;4vkjTZUW^HZCF3L77XHHM4#P|+&sUhg*i~0xAqGp}^JQXb& ztRqBTmK*{<5rReY1=0WeW$6T$LS#Rt&DFjhh|*4|fs+&9Fj>jyJylvn0uMiu(3r(3 zKz!&Aw6yZb1tZbKWQUUS7$0C>O{E8(V(&x+{wcNIYZOBu?o1&&so#>HscwT?--LYN%_Ies-W9Q;Iam+)=H1iQMvj-JBt zQv;~z=;$H?yT%s|z02q+7Vx@ZH-+8H?UOa&ndX4VTENXPb|_RLPA#-sw@ArHptVFP zDfpUY+#cIfRRepVp`u}Qu6~dBgHz!7*$&0k-|+B+PhH0SdR1%ZH}o2;-sXZX*+I1^ zCQ2!mgqbrARb^f{zw!$218gK_YGyoLFVqEWXViS^HS&uQ;k2W zYlYf#A-q^1B&($>a~CpI@HA#R;;jZec~;|(wnQM%|8N09a#buGFOcE;CG71coS{^P zwR0_ZoKDuFS}5gLb*<_O)e9qXzp%X91?6?33U|ex?Tp9!J4WO6V)1StiFcbgyer>o z%#OgTA_!~@+$;xz`GvjibZFBDo)5xsV|(NVR^A74ck!n5YdMk zBN;Y@^#5mg9g%E?bDXGjtT55Q#9(@`m~4T{tBnI`l#&e2^v1)N-e?dI7NenJ@0-EX zZwG%ykuL_8J%m?R7EV@2Q%R)0TToDzP=pWYS<*W?1zqQ5AuXmm0<Mi#gmH+EL@_#yW@k7;pFCG`@=8NgNuc_=)IP$l(DYy}O4M~3=BMa`{hxpAtv zG5EPV#!w{bJsrDPdT1o?sGh1V`Yh7U9G^KzwBJ>E6Y?Eh=qR20R*337bv0LN7rCuc zYBUXWnC}pcP}yb%IyX{ZBstr7_(9jHm;X= z+o6RAPKFCU87?~-(Uus+wBZ=VwCUMlKFnhnWL_-l>ho>j70qNC-6fL-TCwaHfN??* z&dKz>nChF76;0enYk9rwz@VpRty0a!sv|rNQv^~q8f`U&M7pEa03H)&K-cqPxsfZ( zifWt|ud+8{Ub#Fo(0T~^sFNCR`mZwfmW*;EURugzkZM0YdKNullsfmsV}O&dy5L3vyXaPQKaZii+@m!Mw|dcX&^Icn7ct(d91wT3trNsMlLv zvXRA7ud)}n@J4r1nz%fPMyNOV#M_W-j49eR`t11uRHP920RPzCH(b+wY>;JJWZQNh z-sRbfHO$Vq)YGBAzvGxIF?%DnVL>9%rS27NMc**KIy2x+_kMjC400wbwq}<#5mn;3 z!Z-?Ss63lJEiINUyDM`|QC@&vju!NKs?I+?;Fk5cTa|sglz6t8`=VfTAL1+PlLY;* zY(${BI*2-C#eRB2IKL;AAJBQSe)RV{i@bx|V}n+W3;!n{`VI`VP?17XmTZcp42nW6 zWm&4Z6gBB@)e=nKziuN4iF*F<;hhFujr7F>pWaBgOEFd<5OGf~fSzRHqbpI1VRY5D zi)Q#(citcq*YYu?dHnDWD1(@?bd+xG@LNZ~cKm&_$k>{Dbe((S1$rp|ev{mfz0@zM z%W~qgk&c#%eoFj7v;lsy7R|Ddsxp92@sgD8Gm{2hbCat6SL(6XBkA(touO)lmkiY1 z1j~O>U)ppM2CdNVVrT0SyAoMJaJJX8koNFFEn2Z)t1Zi(CQQg3^4bDn^06BpxULZjG%1ozE;I}-Gmc9MX9?eKeXpx^rZ zB;7U~fQ+o^1_O}EW^Y&%1HfPQw#A995ls(dt(Y%BSEk1ULmP51*fdDPqOpMe6(d%s z(RZrYbBN;HOCss{3!Q1F7y}w#xX$o*Xpce3#~w{c6xf#Sz?e6q{$V&YxgCgj(zjfLo$&>8|bx7Ajd{Tw4sA$O{?fV_MZWX`LNkW1I-fQJs~=!Y0Ev zDa>+XY9b@e2wrUo1{!9EBOC|Ulhp#`f9WhGWu$#>wxmQJh!G5sBQZdefqIE?3I*z? zB@wrN^7I&O;U=kX>?Pgx^%p0K`_O`M6*Xr)(7#1xQul6qiW)j@SRN z^Agjsy6Xug>r~}V$ML-2I&_j&(u78jbL_h}lJoxEQY|i*MUahJw*hoJV__|_>kG{n z-`ZPk%9u`=yK0haO2(jK4xdc4R;M#|aPNoOP;pWcc0_TvM9q4ayG)(bB5j4b;qkmp?g3?vGd~cC@tY30Pds_J3FKp z0s@)ou&F~}x*2!ZyX4m(LVXXWn&R*(Sr5I_TF&?OcVyy#RKm%#fpw5}9iBm_|Du@o zjH6Ym{!|oGsU;K*tsJI16uKX-t--!Lnu>;@oPFbRk#P@{*Gp8#Y|oC+O~YYED6yCL zvvI3y3+q~$5?hSF6O0EhSL@}gD#(-*Vu}!5V_b2@F8NAtg*-^l)G{MRfm~)_k9~{t zg#^Fa+XRdGp!_P|>Fdo+oi2Vf^N{&~xItStQnQdaWs>D7Vr|Tjtb!mKQl3vNdRDck zw`H4tCU#(Lap@qzMxd?f_O`&VNSh|V77B;#fq_isE>b#4ShUO9Lm-p4KtKlks=POZ zl)b(WX`}2!p#at*kSKY+o96aS5b-rzlpVL&HZ7``np(e!H<)Yg0EZU&!l1#RAf zvI0m;SUoD@=e+6l&!3E7>yZB3);n14a&mRs;;U8!?jP3s|hXXt|z8mV}CV0qn zH9NmT{J8G;PfanGi@xtD`P^>nP_sI~s~Rx})`fJ41vrz0JN4uAb(CC;sVOq~=D=IV8ZkR}t*y1bVzlJxkeobZ5kbYPr*_<7M_O`gg7cg+;QX!l|3+L5MVxjDtj#e2np2m<<6Y1PJMv^03Rn_;eh9*bI8dBEZIz@4yB>kMNWez zZiR7{F^e#R2M{0{>YmH18VBmI&R@tXB}-Q;=gAhvOL8 zur9L$^`69y7+)493l6Qfr!QkfXnYy6h2q4hiCAl28 z4p!zdTJq{ZJx7Q}DjampUby{oj}!DjmPz8_T=Gs;h}LXOU*MPAN@R9NCQgDokmjL! znBP_~HZqJf?y#{z#2Ikl;%1RI7m&VhQdap4VlD%VAyQ8B+DU}9G1eQD13))3NK(x# zXGokR8LU^3me+N4wYOgBRJ{L9I&lL!lJZ$=zYu^neIZnB^NB&W>Dx-xMTHF-nFdzN zWezDr)4u;$=QswBb;`0R*A1lXndX+@6Eg#0>KGU-qn7aoc5+E(L6_=UFjX?*ieG~L zlOkJBZahO@CrokOo26jE$@x3o>5P2eT)CZR18O3iemJi{Xno%9J5wxM5AnFySD5g(zF9{zr`CS-7K+vjc1hNhw8KAn+72;MVN~|($Varvw#5-*gQ$zV5%v{ek~a|dXJEI18GJT98!d`VVY>ScMmRmECmq4Fbqx&VUjiVX z_~nM14{sm=DDrgOwAB*doj9o|b)2g=76wAvH(LoPjr4%ayvQn>rltqz1snBd_dt| zOvT-B_&xpca9(1F_@Bc7+-7NU>m+uyY^atZz0zpb_%aWWtnGRiandAWHE=cj8x#qO(z3;)oOAqG)OoMYcx{n=-o z6TK&l+{zJO1;6Z0b#6X?SNUt&oEBeU9S5uEw#3`ISVk#pLLjLF#SKzR7OmtMxJT)B4zcE&okVD&7MD;z___Pceb|;lD=vLgE5braq!S z07=o@Ya)o?cneRri+1U25+LdSvC$)x*|#r$@y9Odavc!QB^$F)ut^>M0AFQJbf7;6 zh$=<&qM|(iYtde$gYjSpP*9aQj1XgJKxdKgzBsTh7Jhs{DYLZ@eLL%jP#EWkW(4%V zL9R10x1sXhhrd6%PpUEm<9J#k7?u%b{TJXkBZ%?RXUFRMeAL@ zj;zg7$_R1WreChcyMT&0Mw_%#vo80bj!dm)=?Qm9#1L5H=Jy&`jUw@CC8^Z)KVKhgyCv~_Pm=^01b&&Z0(%rj+JeRO3m+Jbt zSU@7zEf_|PS>+)MMi?`MvkDnAi*gmaHsj}KgJE=zFN>9qc3YI^0EZ}9J0n=N)2HIy z<>(%u^}5-B#!HTbj<|ka%$}Oy2Mo}HCo@8SG^xztI1bMRB59n0i&+}UKXmGMD9aPa zn`?0b$J$`EXH3VQFrPjpHVs|ENs7+(MS72)oNjAKQ0SZlD94;x6g6BH$t-T$93Zbe zCvE6ykX_p80z4X2$Ko5gYV~*rZes-0TvS&c=MG7q zV*<1*m)^yx@J%wWek$fl-XN6XnUHMZ)iH4MNCa>s#K;91O_vo!TZ^jv2@*30J0v&( z?N5l$K)RfOJr8;SE;4QpAmtW4V9t$t;T!3i58NXjv`Q$3UMoC#)oGz3zD)D z0|rJ{6w?`Z366{9Qq2oIC|zay?wzJFcT5L#OI+E2?6_Uo+3jBPXI1ST(PveC3)xEC zGP7t^4M@|Vr31E{1l3h-nc%d?VDbe7#EhQo4&4z3&J0QuK%-lhH!*FT{e1*;9TGxmY2ReC`&lA{KOn5#LCxgr1lfT7WeH`d@OS!-a=Vx_ou}>*^ zQB{}gm3_Q8YZsz{hFu@JV>OhW?|vV$T`?}9CY6;7SbnYCwf6_FWB(eF$R|)p3amn$ z6vo1GjYQmGiF~5gMQt!XV_@v^WVs3)&*W~wr)CkT1U$_|VNY&`e|o;KfKjsQG^OR~ zf!S(3$Rqvvn{N{QEBXGhb;;bC9#eo6guWK>QCy1>Yyv|Gy})%* zR3$!U{sQq@PZvZ^t{1+(kgh#YTtnHP)paD^wd3m1coEVMgh8qWN_(~jUoNorf@7yD z6Fh(|9-96S2_m?$V*>0;`)(3EX2#U|(P+f|-v}K!+wn3v%8+eQV#Cpw;zmJ~;-pCa zKx4z~;$c$Uzn^{i*dxtJF&!qwE`z`8*niET-!}5a=Z(AAs2Ck+KKC~c9G`v~9jbn6 z!!ujS3ev=bIE$&zH%1E24W594dQ`OFuS^daHejbQi_pVH%>1iHO?w z$z4rBdPrqL)V|1@mhN^7LfGBm%N;s<>2_2fbJ|tYG*xz7j*7@kqahZjDa_uR#SpBa zB?Uyo;{ls+=Y~l!joB#JnlLh=zx6KF^^5X&g-FqniXVcH=b>NX$ExlqVr$z=9tOob zd&UH_?yQEeE<&vqCB!0{nD3JMwEJ~|`@mm-_7Q2<4|`kbPqF2r7vq){#M!*vau@1P zijwbCaU6l$Tv1xxUH2nha#utKeZ|C3iPVtW68Ln;PKnIhy1u339n*py>h4e=Q@$_@ z(>8&UynJ>!+KigG%(=|#OSFU8f|$396y&a{R^AwdQHR$`i?#6l|azj-j4<$rSUqQGNyoAN9k@K;y#SZPQ{j-hX`0_FON{p0g>vOTR0x+-%r{ z(J7%(>iT0%idE;eHkvc6tb3(80B%5$zYVU{S*@B2P^%ydK^JH<@h>7hM$>HDvc|)< zdsXx4a4@8ceM)k0e>p=gWcYP)NnxbA|F23gl^D3VJOu&(KiM%`rzb{uTiGAbmb$GLN2rn-Dk2Og|bT<$Sb&_eh6 zD+S(krMkkuy)Ey(D@-mClkO6iK=gf)xXr?>)6iN&Sf_43gm`Xg4>|Cm-59Js_G%W} zOhOWflP_Mil6lbZ&9Gr0-;97cPgRm*1UofrfiX{(>xNPj(tE=hn3ovo>s$d79ho9? z@7k-!L0|6MtaO#fcPo*@9Ft-?-TAc8CA_mjtZ-LEbIFfe&r-8rlx4y5tNH~$cHTTs z9w+<5bn@Hq-R9kN`fZjTjpfhm=-$4K>RA`7*WioXP`TgUHQ&BVKfTM|HQ(ObKR>ke zpDc=;Go_Pv&Aa32w@2B#=6-rKF3L~U8UD>5vV99v|B{0<1$GOTrq!Epc3-{AuB=9A zRcmn^BHv??$-z`u$+A>%DZW3P8b~0g*WfOgg+*~Jb=!fIZM7X~3&SM~SZfk$r6!=O zcS!ivb1{AtICP;4GGkEj(H24&o!fUBl95at4zDO^HdEasq?c z31Zde>XA!!mNlU zG;%ucIyg7};B3BdaCROU6RzAF9D%Q3ONL#Tdh1y39nJ+yGTVWgX4vqL!zeAg?{*+) zGwVh+67tL`8n<$P^cAe!cU0ii>db*NW<#Y%=)bzr23n5-1Fh}mKVkSO9mLMu4m#45 z4bLW1?Cl^DC${3Lk(|5Q3VyS8l?q_1YjtKVv>x5U(*4X+eHCY4r1|>n=o!V?XT;68 zl?_CPuG<=MM&2M!;H%*6@kK#7c8LVh%{QwKj`^1S^2Sl_%lECzrdlh=7iYIHv*?Tr z&=XA{klS<&{>FhTv5oCBkPt>B)R%5wX!@SUly&r}!<)ND(cWRo&}q@?47y{A3JtrR zj+=u2$$dWW+2_6fDDqm4If-CTx^C4-u*A;`pV#>D^BO0BUSrM6b{rvs#P74_|2N;7 zzbdsYzZlr6>~{R=w+QaOf}C^CmN@D^^pddzNIBegI=f<=EZj0~Xr4RLNXGf(={jSj zyR=oYtezrj(*+E}@Gs#QJ8&Fge@aj#H_q8TLJA!x3cjrJI$t*9WTK`{l=~RMh6Ap# zyMt7Be8FdSWj(DHi+t4(VrlH}Sg=7+9<5&+3P&+0;y<>KFkuecI$!liITWQ{<_*Ef z%71$U9NNP4STRH82RgJH&&$#q@bKf_y&EV0e|OYFGyiVH@sSK!pO#g<%opZ&b{NV1 z#>5hTUY-}FN^gwFZX63oKGI)@hP#X9qHjYT@h+YTP<4mkOdJ2)R&VmFM8^VZ>Y0eE z?slYW)10o0#k|>HR`d131hAoBf|j6s2y~u+JP(xKFp*EI<+3XObPVSt#M_~Z4CHUm zk6&`LL2Xr5b2Yw$-Y+TFMWx@b|xe@Llq|2M-T^|J}pncMtw624D@W!|xtE z_zInT@ZdpW{{0{FU*|#B%q|qHhFWjmv&Fi(c&*Su$r^E*FF`80gENN#zd?QQBji+b zZM3lWQ2G?;3R5?h5z_fnb!w9xF^2j4x9U{*8(^|!Uf?6KF7yFe6-YEuO|fYnsQX-n z)JZH&?bnr%%wCg2fsV0%*h5Qo`u%+{2(nGuM1h2x4@ozl)rqAUhi0#uo<$d=A%2ErGMZu|Gl|~$e{^yNgeX8>L;tfh2 zf@CMJ2=mBayi38BAPy$Z5{c?i(Bje%))x9hhijEMRd~I6!X%w4SF%bSz_Q8St4;E`A(96}zLT$g$3j8Ml%M=9M!fs~cKbc}LSy5@A` z>gzMllMtlpE;qaO)Sk7T#Zp%(VZcOV8yGM_r7X90e9uePplYm0lu4VTfKaY_?jlDu z&@ottU6^M)Qrd7+U-i!2a%5_^4+pIM>Y`XEqrBn@k97Es=)S2|X-2ORJSk2aRewO? zDO}et`RsYc$!S$$l46k!t6&z_l)>SB1t3ITw-aqH8zR%(p5 z4+IS>7IToN>I5^mO_1`64{Z9N<+HK&hJ0*WtvcI_OuiWpq-we_FPa&J2~4}IGfxBa zcAc9#{NvfH%qpPOtg7)eH+8r9rFuijseNo((zHAEMTGf83>A6k$b7pj;Na`2N z{MQRrzO9S%a|PajkAqtHy>+MeiiUj`FNhnlt2(;{d7XFA_+GMTejbd1lx7YG@9sdW zyo?;i;gmY?0p63TV<8D!F%nSv#X2_3p<~&E(o9-L5T25(GkoF59Jq|SXNh43f029i zf*peE@<};AZmZQZtRb>f;*Cn|It$u{9qekcbAvL4r73Ah*dwC553PHL&n~S9YtQ|E4g5>irouET^an%DupBH!mTq*im3)THE3!6 zm7sT;>%KZ=nK^gFVaw09_YD`!1FNbbE3( z=*jLh1>TX^iqI~>X}?__{~4`!nskvjL^|_KvPB+#hdM2f5#NL@+i8qMckzme4$)@Y zs<1ct!1X~u-2KRkl!o=dQTe$HK~Uz&%;F{I6p)Wv;emJ%kxJky^0qI|g}~A`LnE?4 zPz2z6C)3OuKauGiGi5ZGH;G_fA;bfGw%8(ML=iErw}(Yn^Mj)#)`2invsa)HCFq%nuUC^;9e*tIO`pw(Sq<3*nH`)xKnEWZZzyn!sn zdjw%lVME}rhhCE5!!vl7*g8Zd=3ao^3IGoB$dGq|*xfSJYheRv)A2Anr`&@w8i zZ`PnmwrWRCfG3lP$K73X*NC|FI=8t6iFWRCog7}-UV+HBKG_c1mpF#1n8MeE43DAe zb3g_92oGMiJAJ0HwoHcvi{x1nLXKg=AZfLhJpF2_(Z{{S^qO$?(P$LZ=#aoCGmx5g zgtLxO57N9)p9Nlr7OZXKy^>=?V3@#wxWl9eU%l{L#~1m$x_W~~z5&!Vu1*n+#Afy| zm!nM_T~tl$#FM4CREWJ4E)8+AqP+W-k?V$x=^JNZ0k;U>uhScLZEC>4$&|Z( zTjwhy9&nS{?xDIW!8u40@H!#jI!pj0VurcI=xmX-UH2v0i=@=~4tO}1-QS8WB01+JS{SEYvQ z8o@gbGV2z7`jos;XYd-q+tq&YIt15c(4k?{UK9s}R#v1#%b92Y^ zfT>P2b(SLRB@bCjN3EEvW>yyf6luX&&Q&X_cxG~>EysBjtPcWRnjA+6lMex!MAErx zz1g&1AwTuOjFOHq1)Z=8cWk2nv=DFqyGh$VO zrwtr*$z~dAH0@XD8A1Dg`jq&=)VlPW;);w%iU*m2U3 zxZr_1hJdO1(`Iz<=2Bg6PQJWd0EcXrhkPhhr+?E+^#ccvD%v7n6n|G5Y8D#oVwVK3 z2Z`%+ppE~X_Ee{T!-d7TNz0CdFr*++ z=&RGeiC5&t?w<-j@YO^E#4>jdbctWwQD#BCEE646KhB^Lk-~8?lC^1tH=HGc48VX{ ze~ZTbs87Lg8cje#(|6o+lCzbSds1!fz$kJAtI_!=7p45rxi-lxOphB~iehz+5HMZ0 zn3wX%DG(X!05S{%FK97|)2>}Mf>WubqDdb50fBbfTyeF0tRDMQ3ZE>07d|J>i52CA zBl%-U&|ae>^eCn4ZI;*d^)PAFIqp&zK}?!(%5<2}B)Ilbwia`Fd#du4Is9}e7Xpi- zw-&}Dh@TA!4g=qa7D7kNUWa`#Vq@{aU4dpt*@V=t(6auZ?D?XXq4CI{5Wsx zYfqS7(M!~YNbGKt{{$qE58+4oQ0G{t$z zK(h4h=m;RpRnz3>YMcyyt>}YJO3sT9svHgUin;MCG^ob#>Z%rMMD9A|T#*PoS#0(= zxpzYqkGO)(ojdn#9FMqvvW3RU;GdHFvby`pKMmfM@5+CIIO79$%{io(s>Y_4qAYPV z9`N(z!IsyF((XC>xFPG)C+oIi&mHw6&qxz7;;qUynl%mW^=A3(0zN4(X}EqFA>C}ZRuOe)N9ynZ7s_~B z=`M>sNm8;{CX{$O&RT~KV<3FG)RlGUqSK&*p2+BQ!>cG7fd$!jGB=*9@};~0y~rAV zt{}FEkr#(KW1?fV$flmRK8jR2LJC>o>rrwJew2VpWJaT|mS!4ETYQ(-Xt87DuHuDE z7fnzII=+dy26o*)Cx^BxnRl)2*kmZ-EHyC0Q3csz3CnKbmTDl*Zj4JR8YCne-an4* zt=SP!(+J~frH*)bLiBLfOv9#`CatA2>+;1JsHhMffV2_Rry6Z31vhtZM zJwBS2m>O?BESQ9(=Rjb%cV=fkY0L4Xxh`j7Q&|DbYb{88b(ZFkE76T+K53JUP%>Dr zXDuCk*U0gu{*aLBUcCZVh&voi19bd266*&OQJXGK|n?~T4H^>jPL z4o|dX1AFZ#t4bZ1a%#$U`8C|z#a7k-QA@@bNZ_5EV9t~#C&u#Z#%(& z=qDrL%RFi5!~`YM$Gw4IqZogNkb`HJGGBu7Ya+(mHk?D>yR{`||^L54{5LU$dWV}``@ zk44k6kBnS#(u5#+4ddNbZzCj{6b@1XAF3Af zUp3-cM|Bg<49A|%o@uMNYTf=?mGl@9z2Mqk1N`#bF2l5=ioP9`jhd=%)6?tMby3wt zdo3Ap(R*58^4t~CN-^`fYM*&K9(S^LV0msg-jWx4Rvs(yUEMngb`b33c|1C}#!f#HNq97b(u$E@NgAV3|(5H5aJ?EroQ>D}PrB^}H-3kr` z67L;a6rtG(+koRE4;+F-#ZrpE&RQMR&WT#)I4O44ZE|~VTpiij_d)BCZGcPZx8x&2 z_D#BhI?H6N{&fCC74HU>5! zpzSnGSBGACT*~>hvr51fR7z3ZRE$Mb3+HC4<++s_a{kZog{oRxg~8OH$P^T zYhzxqr>3E;1+gb?UH*LG*|vUR*NVks~!W5;QY-uev;R`pECH`7@mAr>2uU@FfvUl|GXtFt??cFB!WhKrk?%RTHpH>U+qY~h8;i0K zS7O&qFHjylYc(xT?CKdU(;Mbs4cEp@YN@Wsx@aR=Kih`7@$G^P|K;%CMxDeTDYt%O z4gHZ25*Tg~nTrV%Y;)(BCW}{_GroPja?~}^{`p?RE-0?cio^$~4-g~Hi&481cLsAe z*Bf=NKBgI|M$A(ZyAjD~)&;O*Z`AqokE`_Lw|h6Pd}EVNejEQbn%>Xey*oY0oOSm# z80}juNI1cDa1Y#56x<^|2;xPF)FK7<$LS>B`}>o<|NCI?U*GM$A5ZUR`HYNR@#HrM&vGx@KSwQ6s zwDi}R{Y9amvn=Sg;npo!a8_>y_3{}g`rOaxf00nh$N1hM%6`AJ4L?9Z%bUo>o zY30bY=s=pukr||MLZ1!=ogcdCoOaVWHFW&9txE!1nk9RE-+#zfp8+Cz`JJv$!RtvHU1O;4CyPaO z)g+40x!WpPqk!HEQk>n}LXYK?Z-2&hi+t;@Uno zSNY=785c4k=m*_6oCTvl zXc?q+iEu+mp^G7gkBEke;P-SXoCUG5yLtL8`D_BcUg& zF1^XB%ajf8JQK#K`QBgix-80bu-en+dMCDA|9V*zXKHpmvoO!dgi3|2i#R0UOF5?u zFTxGF$eScz)GD7tj1eVG(J|NvI2$CZ{9KKarwsm0B}clBB|KW%3k*~;Qy8&imV*Xh zRad7Ahz>olpf1*GL3@9i@Pen+{8~2f&m}tQw3TSmD0y37BLI1oEUJ9YZDCzVa`Fct z^8E<}=FC6j1@6jG@~oIA*VP&vtig@0t-v`rIYGJ72_Rb&m49lIlRuE7(f211SmlTs zZVoC7%ru~h8RM<8OD1eS8nbW3x3P$H8n4}iDuLYuD?Q76lUg!_#4s#HTZjt7Th5p&3+30UoQDRIhS6u8h#yR8U3)~K`=+Q0{s^)_}Q(0KYPfn|K z>)`lniJ4*4A)t}&%~L+SBzPfI*Y(}1)ddmlxv1?tWAurwJ1a?%U#7nIyfeVtsj+?` z+SF`YU2}|nqRXX?M}Vu3)=N>;{Q^Gu7ou4mjKfIU0dx=FdQve#bpZp%HqY98ff&(7$(a5QA*;oOpEy1R?v)AHE2hj4l)! z9W?Y6njv*_TklW-0ec_@N`OF%et`j=JA3!ZdTO_Z1tyuDI4cbjM%^m5U3dak~u+3jMlyMFXn>3AFpAKBP zx;d78bXMQYL?}vPT7llW|I?Aw^HuZL*{ZO77io*EZb! z(8x!iG>09*1Dn<$EOLeQ=$I@~2N-%$@-> z|COt1!hPq1&VWfB+IvcqbKNtES9;@1yM=*t)4RXJMzOX$7%TIxwk?nvX`3oE&(f6+ zEH-*-(GZ&3p4hWR-ZW(QC++f{QnC$aX0Mz8lVWY{bgc6%6OdNdniRhul0oK2^SuSA zLT`;^J0%*wwVuFeHK1#$r54L;r~U>`+3~zM6ZBhzeg@ZT)VJHO2dpHv3ED$D8JGvz z4^;(Mf_W|Sslio$4n@9_fy2X`0I6wF*@~>Q>U=)uYM+$zH#lN{F6WhLgR>tU>VSZW zE?tz%k7=`*N~Q9*oL^sdoD+$>lnT|}Ei$GvBtmt7)$n;nj7Fsj-{ui>?ke$7;gV1Ig#Q)HLjnT8wZ!@wW(ua;dJR`Nd#wZy?sx zCEM?v=BF6L)y1_*4Al|Z`m+<9XqVvCIv73PTSUcy4v`C+R*ywu9bo>!E^FCcGVb6+ zkRbbKH*k&j5p=m>a_K_WtiQ z+dm&BgL@D6?i~y=H+1hV+ZFT`&Sr&#)X^VxycK9b7Yo;0PWTTBFIkP7kJ&Sam3Oou zlD}tvBm#!Z>vMdnHF0mBvz^LpKf;{I&sGEO#mJVb@nq)^&i&D|#ZlPl{LaEY=}z1k zXd8E^ONj2~} zy-nYVXsqx09TQm<6I^IhhXeLR6t~z+w^+5}#w4?5)s*e=O3jKh;1TXx6DQ+~H7H<@ z10G@QW3_JiE4JcLI?rJJMS1=LPA0diPoI*`s=$7Xcgxg%qfSQYzgoAuRzS_g8fZ;M zYrv2MeIw!2r4K-9Cud8Whxw4gu(I|VLWKUoX(GGZVGA8F=>B2!q3Hn&mSDUr{L(uQUCw>C^O`^2b1Phtgi%OiV)rI!!rB9wg)B zp>Yj?l1@gd^T^bLA5*a@xwc{Qum7AS`^m!x4nZ)jyB3oZ7RMX|0Fr{z>XB(R+79*> zr7R$hpV2llU0yMF526z8zA#H3nAWXpw7z)JUysf<7$y(@*>9)*NSkvfBLDKw9u1W@ zbOoHu)~Cg6?^ON0P<8rX^xZIdFnR$0JAhclCkCtCJ$5q7hWFmC#*kEx#48-ZF%R}o zentY%U~&+D7N=>`oP>GwOKNOJJwk^&Po&JKN9nySmPL84o#w|pI5IHkmdoCtD$>M{ zoeePbhhUtX;0jLf-PqN?$xe2tkS@cZx`*9$Jd|`dvB`Y3ZaZhw;}`z1X7km${aVxM z@-Lq~zFU}>uf0q*{d|qfpXl)zYCm~>=-zCCkdU_hS+rN8FSstp$xT9wWb9BMlI@wF zsLHvUWbrIPb0&nm4n2u0VVzczy={F@4ogFc;O;Fu5>(BV-e$^|=Sg46`cxL(vqc z;GcGV49L~=bjQSn0`$BZVud#Cld@Rmgun#uHDe*@vyP?3?DEM~eht=xc?$%NFRCly zKEu@m8qJmAqlL)LFP|TaA4xK$aMW#_ zFICM}EpK8Yh3sV!%AR=OS<{?FrX@s|y z>}F0QK=4542^@E#LgOPLk6@As*EKvi^yopfl8MM;EVRVB8am%cqfsjIm`c&nj4Ww` z7Ri8h(~M!6CIzWjildRRGIQ*&{Fd}*(zS&l6sg;XA!bPujvfZZ(=b=T7!t=b>RhOq zGgb^mEP>5pVHeRN<}k3>)eF-qwb161wz&-_Wdy~P)L}kKAN>>KNYflUl`#U_U92- zg{w|uoGY!jg)XI?j!5frUL7M-gMU8baf82~m*_mSQZ?}MZ{6``&6{wWf&UCOz?HN! zLNi2tazv^$79N3T`mN?u;E{7EFoSi6d9heqtnC-~Dnc3t)1iyQ<^W7YTN%*qi4q+j zNE9qKBEk^x0rh&-sySSXpbDJ-z+5E%Z3@q;?N!LEqD*aga|@ zqdh&Sl_Pg)xka9r4m>26PapEX`(}{TZ4W#u$dj z&VHi9wHYUq=`cw4jLLO9Gl#i|VXK(sMhC{2rZLcmT1&%_sAd+$6DZ8&Vc*!%*1u^T zS;I(b6{Wi2ZTuC*quvO-LTts@~xIVx-!}wtAgCOt_RJIO|NXQm1Nhx z=6X;H@ z!A|;+3yp;^(hzA&n}$?z1q5{)&HP9E(2 z>-2uMZ1%;g2|s$xSTc-5v>B`!k)4_h+G+(m1yRP~kA*sGh4N$wrVedeEv2q-hk-ws zWof$S>vMI@XF^>ig!KIB|v!GEPjL{$sH!Wx+nk8XRYgtPHNY z!=$YuTQ zW2zR9I-CNdHA1jK?Y;RZ^Y3ZLZ7%6*bIfp0wByi^LFsr^I(_t9^0v%dci1BW5=5VW z1{-1sLsRB}u+$xqUDH;zVz5IUyvP zVHhsF0Ls!BWHJrZXi%sq&l@S~&}ncJ^Ju3x@)@Nw7)WjtMv%eYV)hrae5n=#5PIWZ zXp~A2(PIPd)La!9A43N3p5={723W&jtTAkga{i)Rtx1>W*?D7zTIH9AqCA=2%JP8` zdS_X*({jp&zE|B9qi>*^b9ttCp=OsRjc6J>;V0$X*kOCq8LNi1icwPA%RBnn&S5pH zrfA;e^P)npbXTh*;E#jg!BR=VAMKLSZ&jef$}+eVUjhJ?D-jQ!1AHq~?L$Gs%dt-o zpp6|$Qr!aLwm-<&qd^b~hZ6q3{%Aah!M^hc0hd848M zXX|ql7+~wrS=x7FUVlOShr4pv&`xVY!K-Mh1e4p-05+g?;%mBtx6KPN7+!KaBo|#B zcDrlHKjau}Yve?H*fxK6@4Ay6n;x|owfXt48tHs+{QQ^aPv4r=wO-BhR*`3L+;h>{ z5n>zIcbEI{^(R$qn&gQ5*-Wd0o!a97O2;%vED_#@bILQ`|CWm5-Ty}7)YzHlwW!;# z$0N*!sIm4ijaYMxZ%xdFC}_-1=P5RD`;jSJV_uv+y~xXRHIHQMYC*hOe1FQ#$M{^q z9)xXbj@M%h_ENS#sMoauyd*V$arR@rXs%NSk3ZsZV{kx&)mk)sK0;=uBM}oB`%!z; zw|#@)t<)el^yJsrSonT8I%AgHeVjOk1ioX9Pcqhs`22x6S4U$e`r8x_O|Jps>*J0+ z+HqV6n~fY!#=qA2YNh5{s56G$(P-{4~NO%A&7|J;RFAoA?x5;f$$a5 z#8$R~Gj|3JaF8bYV3-UZ02w?Ckm?!6&MT`yctUiMHP6S0yeK(J!cGzHseaj?+T*|k z&xi#uI94sH^9T5L1BB^jRx8CQp%{UX|6I4#Sv6ZX_U8&soZ**dhv`REwsp1OjLhAd zABv$$=S2fhc5{PZx-6>?`J#X=r}0fy&E<+_nXmZIRxK$AA^u!c6@OT+7j3c9c&AH{ zv(uktwXEiA{lTxLTItS0cN)SO*NCk79Hd$L*MF>wS`)3+2L-UfjHasJ2#l=?2$cXW z0|En!!D`b%@pYcJsu3e8=EyApJUslBrCW( z8RT`5@1YYH^f{s5W)bjj^>LM#bCF<1Y1$Vm=v=iw(DPK>O`!*FIug z5Uwz%NQ{gY@mn-vSHL<8Yqu;dUvi4 zjw5NL^L}t-BYkIp1xM9m=ne*1>_Y0|3*CF>?p+RSMR%asnix078&gR00ORC?SRNDb z7Q0^YLu|&G25b|$sAl=XzSGvl-u4_MTN?Oyby}R!S$7RNy2;Y#oiLx(X|?tptaTzs z_q@sr=9dW5$=Kj_c~WEOpsH-uM?4y|t1||>(jL!;Cg&n2^QVXb0@sy1WhWM)fqiWHz zj(;Ajmb}w3M^TnC2mZtyB9JeL{@<)iFRm04`zdcO4$VZAZbA*5oC0)YEu#8j2ugtT5d5=rz7gIcwMobhx#cM;U|yWD(+Lu`;v>-)5!uNTDmlG_xI$>y`={eq zzm6IdiWO(qO!!a~G5zly_crrxte!-!?+9 zYwGJ5DV#q&fw~a#w@W2#D?1y@h*37)(8yE5jATCFT>Ppp%!r(p0|gvDT~FAl;BQSnKAZ z`0HR=6qSM9wFNU{bH=od{)tjdj3rT%|A6k&K4<|160%I^=1$_INpX%3ewxaRhC#ap zW|2vON7bt<<5!qcG>$-AKZ4{A_&eDa%$J68uX7NTR)~n`2w^a-f3AU1HnE2BhabNe z5)XJvjT+IcS^EydsDsog^Gvzxv#PX%&G)hS^H2ntl5rd~c(FUXcn9lxd3#d}MSIdn zKxXWrSpg!m$H6+W*CZ!dLS0Ld`98veH~p;8XD$R2i$r5}Y-Mg@t_p$0Oh>5I2yAC{`Zrf15E*}X0AX`=;F}Wb0}Gjh9#yt~EY^#Tfag`MpT#rqWl@djadcMrn5 zO9@cJ11se+RqehUr~K)Y8y^e-sa}0#2-PZ z^SsUDQO+TEB(iyMvOLS%+&NZ;`pptOUy$xU*7-t#6m_F}Pa6|Lt6VQtO@V}vq1bW^ zbx#rf&~wBwQpo=Q9G@f1W_Z_$PR9y|CNnXZL0(LDvhvf$%V~|0EY18XpqF2nEFdgK zuf)Nl(ZlaX|B51Cj4AsBw5}qOtO=bmWP7)$plnFtJYZzW?&uh7o!1L?kM4-ZGUTwe z9bZ(-Tv^dxKQGUV61{f9Afdxp1eW0)_BIu@dkO;+pEMKMdBynd17)Gl znp_p_1;}WY`QNHquVV=DWliQi+IIvdWBAD!^AF`UfE{Nc1pKW3Ijp- zTRWw~-xQq@;*QZ@Hf>D0UXzGVDw@XgVm8#wzFFlw!n7RRZWx2!@DsFlJ{D{uWVr{2 z?l?j1(hy?=fCiI;1q}JHAF{mxF}Mdhu&MhFgJ&Kl9O97%A-dj^5~|t%w-0Nz-(2Li znnM)1mj529X1RB|rcki*QMt@70dp*E+8Uwrz+lp-UZpa6iEwqkl8~q_}_IpjG9o34EIr)2a8I)90nv zYIrVa8=<>*q5Ow@;cAp2j$@c-YU17kU{<~m!fm*+PmFSK=&3V@u7Yuh3dNz;3=YK? zt@Jz5Z(>o$L1cW*^h8>8KRFqq3Uz3-r$enc9cne{PzTV)lWVB;qQi?~K3C-s6r4j) zQVz8Oa;SBWL+t8&*r9csPX2}i1b{_^$Pe}Dh#hd(6-hnrW) zS*_IH(N;7W8?gXofAZ!{S9Y*U9h;a1?!(yf?-n@2%^^#HWi%Rxkvq-z9p%;JhGG9#xx~Rb=x24U~o}Fwkhb?fuJgpYJ z1u%yxKtm%7Ku#%a@CmSFf(X!$x0PvVFw`x7qx`b-Tx2RH) z#iYc|8(6S>X%@vyrT^a$oT6+9Xl)_+GvXSjdaCt!Q^Ggjpq~+n8Gg-w9dN?r0qH0Q zdzdm9B=-{(<-I6d!aRQXfTr|P@e)9TY$C1MC#d$!+RxBgs4dQSJU}(`+_ZHN-s++- zR_BwZt*4Ii6Fz?Wl%)1ENZU#zWF9NJ=}QGM+1@;dcCl%V`$^a1b})6CWrRkxvD2}X zhe`T=n9RsT2ZWHWjZQKqgwzc$gp2Fdg(~xw+w|@S16%BU-_|hM8bNfJ4EF9l^r4S4 z-RV`)=DTzosDr`LlQw;jc|E#M_Z_ayhnZR699f-KBUQF2n1_ik*9@ayIz87C+D zoV~~!HdQmbW(aODe=+;V3Kw-U0^fLsr?6bi_s1f0*2P}bhL0x}!~XW!4D5RjK_p*B z*$1!@`m4$>;fmvK(d)+#RYUKr=ln8)loxNGzj^ZZ`TL)r|2vo*DD5QS^Uf!_|&vvSCGb--Gf zJ5!p{+ln+VbcWiea-`pW=5!&dk6>xxL89f~hJ>lih^6mx!f28I-9Upfozz#%bGmB* z*McbueGv90lrVAy_S!dJXSeD&onN=6D&f5<%*vzRT^u5}PN|^VFhjR4=E!LZ70(|+6m)>g<3k`;iracohQb9I6A3+90s}odj_?w@mWJ(U7528yXO|8{MItvB zL;QGz5@)9w?dzi;E|u*CNXpMZT(@xAAZw~tE(Qc>wIi*IR*fVkk{n~6?6LQ+51p@!rh50Q3Gv&DJ$yRNXZ@L4J@0#FjSik6_LDAL{%HH>*sWtCf{vdn+4M z+4R?8|Gx9rfLN$E3D&T2=M7;5)XIm7h&{qYHs=wR;Fn1;9TBL8w{A9fbQS|h1Dnn6 zzXlBean8+9;oSf!@~pSYPKbzX7YVk*=H@t~mMWRyJGF!kmj1r@45Gn#?k#398H>E3 z1!L*!ec;lhjMB3MZ=*4O@G*~OmnmJSLuB6hEn{@0lJcid-j3?fc}h4Sm_xd%&9x1- zXI!VfJUE{wWHUD=^H30r-TQdwXI|xiPDrJ&S{;l;*Qx8%c^buhITh_PL3Satfe=}( ziqXjgX$*Yhd}Jskk%W7hRt&VuUT97xdu!2xGTW&ySL&alV<)@S#_%}X-`6Vvj&`Z8 zW7uBqdMeJrnJidQ=#2drm!-tN-qJb{%ltD}jJx#YJ=_#y_7j-=MXr?0(QGCDD=Ss7*W=TwFk6)8QP85{i(Dyg^)& z8@n{5Td0+3P~ZC-tY;^StTe|rSPv0h>i;80sjpj&YP~-7v}4x}MQhwR=UBZi?aA~g zdMG_|4t+d@``$d9C2})x-tJ2QPVptz}{PPwR&Az9GB)-zD9x9`&nH#JyP|P_wP}d`TqUz{reB^!EWqq`2Ky-{AI1Q znB{a`EZP?($q9g%zKd9Lcdl9?Lk8RLCZ)`5zMv(Ll!(FEOdLZk)YWpLbJfPQ0Q6Y> zqiPuw53*`a!XH(;tps|6up9+;^oz1-YcyQW_0uC>{z)u%ng!43j(mbkD8ec!0^Vex zpS$45!x%>hw3IjP3;sE^my;e%4QS(%)uHf=5w|fuFn5CXtOSMy#LkGRXRUmlN6|1@ zu*tW56oIPBdmHg1BF*c1m<-Mp07Mn&bQ$37@c}_*KXr}m4Qw4?S78ugCx07$!6UF1g<4lL2tJFdZwx!9pNG_+wp~KS8%QQ(tqEyvN^RWbnk? zAw55sTO$KL$HWbO?>B+fh~IAa6)raz8l2*8v_|=iSCcrC=J^=Fet%@RZ{)jcHB-e0 zdw4p`oIa$84IKocrMtEv0sccsguD*}BD>P4^DAU4b&K(f9Eu||2IepQ4IT_*bA-{a zSZ3^}$*g~6@_`YwpVH+mMeByrUl@I!$KFU64%-LNkvZkQ`G&QIY4j+i_ju5zH|lJ` zmqkxGG5cZjY1vCc@pW@3y!KhRjob0ayUFkcj9zg2BpUa1|k^;1kgg zEQ%J5G}F6OgqJghe)kV^l6m~OysGgTde@z>PoH30cnq|62sjiV?12WU8OK|~maA@K zg6)Hp=uZk+Zx``FYOU2bcfyWuj3q)JLvU;u0`FMj4?7(}O>hLUD#<^I(6`0tiFjN1 zv1Wq_)%Xx}Ub`4Lk{W&%ny2n}2t$#nGn*ZOYA7wlk2M&CV!b*}lGRCm$F zc&jTp(x|NX>km9uS~fb?Cx{qz?y=eGWaXoGd*knRe~Ro3P&U#%;h35{Uibj&k;}xm z(ja^}%L-%OLRJeIs33c3H~LI4oe3s?6Wt!`MH@Qo&;!<3r^H@92Kea6j*%^|+BY2b`cCcZcnV zbKqa(jX3c88(dwLc;U1{vgnc1%GhDB`;M$6YAiLvl8w{7^(xXQELbC+E)?tM8*BB8 z_In3xuZebp2V{#VXB$#3ax`*e`r5ieAN?`H;_b%t!#UGo&ZIyM=CN9+(N$iT>B%vM zDO3zljFF+Qlfk_kVd%0MBxiZC082dT!J~|mD4)e2#0*{29{+z}>BQW;=g7)eO zXe;3bCaj9g_035~;#U5k!A|&&FmyC?zl{#v_Hi=D<~kNsM2>SrA!;kkfFA|7_gWiW zy*f)j$Q%D$wf7#nw?phXQZ&agZa`lb`lzEox0=1jU;E!CZ=U=$`F8(Kl1v?->9?jZ zJ;vRx>xSm6yD!s@XyonD`U#f@LmKB+q zv$SJ)B&KuhvV3B>jKvz%9fu0Z08TVg9;LjTp-LW6SLE&9y&)~`=@xQ2mq(G81J8_9 z_UNVJsO2`^&2#Tz+OYuTJ!IG1MbZ4Duek6k+p&mPaXbh5^~{Yt(jzJ!Vtxt)Shq=r zq_n~T<1oGZyT<)Lrk@XSwCKG&cTpFfT7&f>C4DFNpJabI&t5ZU;V5Ho`{ zALr5G4Bh+Iy>a=@-HFrr%1r4F3{Cef?+M+l28hovR}mEY{L=oT5grngN+&A+fbv5# zl757MV8UOt~9!qEtPCE{@6fWtMhq{LRlc8&;gJsKn1OEU|!o)?xM1l4Fmz(XV%jUz;=Q{h})LL3q){HIlHxwE5pi^4mLx0;P^kBMfp zkGR=?^KXg)?3ktZUf;B019Pf$iMo1ev(0AxJiedX#i2^wph*qmX!A>ZdHn823K#3y z^glh_CNpb0MZSMmkFmNG@ysH6Ps*sC%!rX3hXgXOsmEere85t_sWI3OOM;SlXhWRN zaTYHN96W9gzY|Y}JE;R|Z?z0Zc!#0Ln9SppY7{Hi4cjgqEm(umE}I4Jfx+*7tY=s6 zHYIY2-?7A1NpbGbY*`G~CB9A7yQalFQ*b3UdTD(CbITpWFU#sJLo_EH*;Z4>czT7& zLW!Q3{FFLiT(ZA0gdhAhD*JF`0fJ}jj)ddIgZjgFGvb4P8b*0CDhi|ZopRI>gU(Wa+=@U4Fy}1 z8tmfQuyqVgf2JYOnhw$u%f7cynibh{$|`COh;F(^0s|N8qR1e(1>PD%AHCW6eOxY=YI{GqTbE)}jNv@<@$K{R zR?Wq8$-O;2RrLq2jXY1)3qH0;KJeEjb+81@D(x8AE;)z89HC7d6f~>I#>=vfqfc*X z6h|v+_;j&Lb=Y8?DNH-p{o~r`VJOJU0rs&tlFMtCk>}*k8U*g4- zti5Z2(vctixSRZjuRNKGH#%_U>cmc-iF^E01C-(+LqoUehz}^u0eoBf_KBN}8~x;om4O(LN{WHA zS>_y;U4V?}pOCYDI=3aS5W|40i`x-Z1h}N zd9C!N*?pQlmr{jn6NV_!W@(ZWbHds)BWpa8yUg8-zB%BVTjo#K^wH*t4c#&B9`>S+ z879#nq~@*C91=ler;@T+bWzz1mf(D}JQ)7Yq60!Gej~okoLXk+xm08>G;)Z{dSxT~ z`INxa?|mT0ZFwTsF+dyntgL?A?lOd&v6*{pszl~(;> zP9o1)^t#e|l_w{_vBO&U0tB`jv4lyw(jp1G-A5-EaHaxDS_L~s-u6mL(;j^d6x%t}PO z9naXGJYR32JVc+Sf9wraMP1&;M1tm&Akd;Gwa=`9{{2U1G^IRmmuC48k8c@6bLSew z0llx30eVuyVy19D^p}h?8mH#IF?_aJvz2JqAEuQS`p;`MYDgY)YJQfZqN(%0Bg04L z{NG7K&G6_vw0%v5NS$l4U`zm{TQ(037FdQg2+;2Y^KXd&B|^ul2XWU`jYC!mH7w_F zy%4{N@tZsWFH|iF!qUv)jOm%O(*4A1y6)=lZq32T^IXlOH<|0LPDTxOCE%SHz$prm z8KAgN1rC;7S_XZJ$3vkd%Pj4ts|w6t^d5V92^>yx>2jwtAjL+G1$qtpV?g9>^{1`% zH?$5|Yl-3cK#H5@+^>@Hnu+2t6UP0f-LfcBqLtbh*Zo-Fn=xk{T#txjGJ+XT^l5>& zh#}x9Q*zLC+R#DoeA|^LN&dUhRM{7J`sF3k++Bv|q>|fqMFItOwN^^!N(M*e7=CaF zmLnB-3h{;=I@3=8$C%~&Qo@H) ziWO4s2bu0G7*Jl3`4{q&C)wf0`8NqFg(evrb-8oM33t!J1V75*KC=h0YaM#YB|^l$ zq{;P`FMpVS3_{=xQ#p2b6BL_HDsdn_^F=zmgZD zO-8qp8xN&gvrI*$b(=Fk@rtp&>UdZq;FkayI^_m@b+vwQ;vm*xFb4v#TXF<7_$^MN z&1nSQU`RSDBsf#<&xa;@A(8*ii}cBDdVABCSV63&G!n5aVy!;_3zEW_TOU&AAjSCO zln04a7kx`$ma=yyTA#Ktxz=>UsKoUzfC}#L1Rug(k+#j4xDfh)d*RV}HY#|In0a{H za8*=etbyd$Cre&=IKd}yt_Z+`e<^K>RxL zUZXi!7@L`Qfv6=YUuOe+yWWCdy==F?LX}!&27KTmhfG0E3wrSnyFpbFUu`Mb%?5j}T>kE-y8U2F=?IS@o&|4#NH(4x}c+QCH{ez8_`bPKKOAKPVPPkpH^@ev9cW%!OD+;BtxM%q;LKg=}}xVkT>PG!;{luI)R9*Ew0)QtEr z?YaV|*U^LKzVgY9mgzZBEUD9%&k0yWd~8OI>4_TWs#V~QL6y=)3+1un{0lB=?uL!8 zmZcJ(dvU!-#7Q(+z>#x_!aPs)1X9o{WYSVkLZpI=>vGw1?QmDO#CIGI2`EbGcTvPc zBw9i%0^oKLXHOXc%T|jgF?6||YPk4&gD7p?AxdcEh5FQ~mL$CCf52;$>EGk3|4Y2) zsI17v5mp{*{6FTk?Amvp@*CDGF{^yCH)=@DUp@}IQ3S6{3Od`UnGYTwcI_=2ry^JG}Nib1p6gJUWvV;@?I~rpkvdi_L&?Kil zx+m9gY1>7JZk;Ch`PJ&XQqnP8w_@>=WdT!NAW;y=GW{i}e2ba{A}{MU#ihwO%XgKz z=)YrDEX?`mq2s&TgWX=>z>Ffl8-*EXe8IU7L9-qQdp9JEIH%^!wKYK`HDxDA%?2i)P(8-zi0!B!I8}%l^c#UsANTuNB3B0BGFD_OQ}{c%jhWJ# zp9TO;XVG7074sQa^;@zIPM)NefB{QN3ZL;t$3k7wam!vvY=>SO7&Pq7yLo*uiKRB) zZQU}voWlAGI~yN(yzQoSFkkS8St70YLO*TYkfU7n9Lb~~LI?eMC*K4dhj4Px$@`hy zpQ&e4!KJIoe!rE@zhU$9cVj9KWK27%_5a(<&KB>J-aw_&9K3GwWc{z0tw)*NrYoqayRx*j?OCjJ_sxDb1Ur}d8~(dO{~Xq{bdOn; ze@yJHR@PBo&5O6tZ`MAJV`91bh;@lEx>YZwiFDi&n8>lPI~bpAhNXZEUSff-Y}@orLoT#PpBMt#8p zSb3@q+W0ETe**`{si+m)n6dJaIX@U!B}IY3#PQFxS}`ir2k9zi4JS+!?eoAJfnUkj zhM2^62m8$zz$OF(`5QbI&!`(|reD=j^C>qY(OH>JOO{qye4Qk}Xtn?@8=2HX*P#1) z!YDa7VqO)99n3G7y1rS|+JEkn zVKpGg)P#)-z(wUvD>C7Uv7CJ#XAUKM{4Yj(@~MDU7206c1WZ6P+9h@fwlZ7L06J5+ zDFo7(u9nRD-B8SH4Xu!`ka%jw@nCKjoeVc zd^z0-CiB#1ea=eE>HcJi$F5KfOa_wMdhK+q-inJyce)fYf@JZ_t8+L?0W(5A(KtVQOclkWl{kJd_`;y3B7P^_L^+s7@O z5b%>D81m=;;M#e=xOTvQacw5Ksu%NTr+&gsB^(-+!&Jr}trtgV9$ zOwe+Ff~A|}3^w9D@PPZaxK{nimgGim63H4g~s>zLAvgBO+R9)FP@5NPVBM1~QgFoU`SiX+21`g3OzMjpo7Vw#ZN>59^m@g@!;Re!7Y-RM3%Q zCf0kHWh~qx5s-kZzniOZPD^__;M_Cc$fj?;5c4iMB(WOycf#7UKDVr>TR8$nz;~kt zfoU!++E4!ag<#*K@hzX>Qeza-|FOB-{>SFl{UqdU36af6>pV82lHkpXbMYDg&QY7=C~|odrGa zbM*oowZe{nEfYBbFai8yGN*G!lf?tpZpOD}6Z)Axj3D?#3sV>(3Ksk+4U!xt`0_*G z-glv9fq~-Eu!q8NhGufZN z?sCv!nj=NfMH%)7G%!)8H4hj#DfzZ;Mqxt|MO8{pbM4WEM{#2K`%GQRE5IwC&~xs- zsw@1ePd{(<5w4=Ejs@h=m|(V@Sj< z^m}6dO)Jeo^#7vX1EvKy!i=LyiO<%{XRIQ?opdKliErA|xpem>3Wj2z^cl%dJ$S7v zk>-r=`da|i+)IMH@=L9i2VVa&?f<^)(V&8V4C;8*Q1JEu;B%*fvp}nDrUC!4_Ew`z zL%*PKAs`LZYJucrF;My?b)D)1MQXHeW3XPSa*2Iq;A2D6)Cprv^BWA=Pg@F;28QwV z&??!_aY)YVfOC#)=-zmVZJLqG_i;;oK;rqq*s=cvk24xvp!7YsOD$)h9e~1HfWTWQ zrVrjRh1Q%aG05$ukIfgwe+rlShBfebcWI!9IaI-_mXA1J8a$jS87{Jb`52x@KH~9n zZY|Fx%yBBC&dX1X*P)7j2n~KJyChB!r4I*W0tcp?%)|1+HcSRX@&cD6yunGG$!wjZ zWoG)=w<@x}y($Os6|I>KV)w`4wvJH$Da1)P26Q!EfO8pv5bG1&zMS9Qw$g;x=o^$= zcPW+hR#ZiD)3VN>=`DNkKGuw|m{~9+X+MAdkNr*dU;CRM{@4B{X`;T_9&WxZ{vZ2W zm+aU6PO;wG#co3~=#Wja2PxE!({Ry9W|(C(P^t$hJ;k|9+=Xc3m$mLkupm4Ic z^-t1z^l#@l53w7u;qd&@!kwXJUBc*w*EE@VEP#9+CLY|2XzM%T#vBQbQT^tckFDn6E4jq(qRlmkj&RP; z2&(`s7|1!XLzsI^Ux%5DYWU!uph|T1s{yZwU@FN8=qfJlx@+jsjS=W7%}||u&ZCwT z+&d4J#>B=@MoAOv%z&ap>v~?vw+YX7D1Xy{LW)GFhtv#sXjdYJa8t*~Ep`4$959QG z)X1Z?=2`!Wz^@>*K*a&2ofMapGkprP=xCNw%h@GO0=#+J)s!AZ{C*FzfqtYr(2w`Q zi+Ix2dG64+(2fj8^}h)CYQldJaQk$ZQ+VD&&b1}%Og5v2{~+Mhy0L)p z{4b=JEVasTjm4c&o?CyT3HhE>i!6W(5fpG13aIWZ9#XsL0D=+6$5D-p-r$hEO4^p2 z_$#eOBUbtoh-VQTi0wyYj2AGhW|w#0LBR~{@0CpgOY1`v7k>x^MdVyBgMAoxWdq5l z(=_?9qT7D3^To`J^vJ|98)!XkIldG(sUQNfP{#4it<&6iWFkIZ8tL)9ia04t28&ir zZryM{YB?V_#Cl%49MHK@N9b~Azp{bB%W}m=D{|Lwc`FwU8%tZQyn#GQ4H>{E*eOeL zE)rdAi|STl@yWg5fB=3SaO#3eB;#~mUK!!0?s&KYA2p>oIF*<{?*LL#O`^YCE{sK!P!Mvz1cNx*euRJupyiE-{g(IvTMCIv|=glMo`!4SS@| z7q3gfu7Ujk*U^i0_%E}H`G-?tb)&RY5zHQ3C%2M<${D?q$NSc76f~c7Um|txe;II{ z$^SCoJ4j=$V}Je+0}glf%Yf_se=*=J$!melt&tM{ivhR&F9S|K0DuR!3+S$z1Q4o8 ze(4R1SO<$w5oT0Ys@pL9X_J)O-!J}U&otL|>$cH^5&eR{(>T5o*?3}Yd$VveLCucM zX5cI(kkaw3o@lt_Q5}5@Lw%uJE*E6wqFQ+j^pAE-XbyB;<}*?vcAjOUrRuKkN_WYd z3kT-RFgHPYQ*R~?n$tHs8xQ7~Pb%i{cc3M;Vdg3eNn{eAp|jgWMUZceV$l5#LjfF) zyQXuu5b%f=flIf+U+Y@K^xMx~Q&BMDD ziF1mPvScw^9$IIBn|cV!t(YbCv*Rg>^P^Y;EwHyj@7CyK+9~{)Lx#K;cE@I0wsgnz zY+n6)D(3nM`^;JEKLU8&{~rO|^(R4?9~2BWr9`FRR{&p|{H_tRRk8Yuvw!km0UTqY zLH~aQa1g>@0bJ=<0H-WtYsHmVQ{9MfDbs22XJyV;wFK($3=7udML!S^5JvAHU7Ezfynnc4tQQ_^@}k z@>>#SC{Scab9fsz03(dst<*K8XZ0HkC>bJ^Wc_vo4gx}lsiTbyjva)vt|I5`$Dzz{ zUOq1bGY6`sefS-CZQlGmUzHzLKmCRN{Pp4?EcV;D^PeOdMJlR zsbff6Q%&dkg?8g2b~sPH-j5w!m8|LB4zAF`Q8NO-y#0_s26Cgjb~t&+8>@WCPzI(# zK4;JQB{vo_VdA-5U4354ceo?Jp^w^`GVajIxrUAMe#-5<&HINO+MSCrBKnIoH%Qmw zi<;;mv(GLDpJ@EjS_hyf)@2}@QA8r`FFtmEzlSY=3PosRk&8%e>G|3&~CBVPbV==We$8E6LackbT+Cqm8E6t&iRuJp)wrna7AIO z6-eph(Iu|2{^Fy51L-TfW>Tj)(#y(k+0F#c>;br3-5So}%wMPIn8Jy2Yq5j`qQ7t> zZ7C)S>#c?NXu(83N70bTY7DhbD!=O@3jR%Y5vpsx+1ZJRYNhEio0ff!MYzIyYIqXU z_-=N(9UT7Lz%`m5=PK?nx51_v@s*-#Em>$RO?n&nnuW!0+DZ8TI`p%X4+Y9+(eY=| z(|YIApG74+RxEN*SW*uY*xZEmkv=56e^=a%Mla@WYY36K? z(sM{j@Hb_#7)Ib^YRhTtE5<}X16nmTvRlE51-oqgx9-V<)Lit}rZR5e|>v^>_%K<0MvYTv4RWz$s-X;I2YmM-KQ zaf&~P&YyzJZO`4ZvSBuW zkS#v7pANx4Kgoa^oeC~LIll!IXYj>MoC!Ka_Jb1WBk#)nmD0jIoa?40`eRMv8X4eM zJ*V9jgw|dQD)>j<@x=?IJk?YiaqCX?+pib7Ez`un)94CE1t;F$QDI?lpYqhJfj-QB zT|s!!aYjbHB6(%5Wvdew`3M@WF`$vYagw;GO1$xE3L>jMxlxNcX?m`)cO3h& z73~^MG)mwWJe43Glz?4QSmv;=I7bXrQ&FQUh#dPJydKXrQj_>BT~N$}H-hMfIzUf< zSYsX&p6CYF15TRG9Ku(a?tY(J7fA6#tL78XdAAo$xMpRI*twN=y{X3ZXT{tCRMbvy6y z6i->~+|VO)qk03*iqN^|5g9T0ruwCZP~Y&qGW^_=PD(qkUnek5>{qL(d86Hv`D z%nRqhe@Suk0WcT`nq70-Pu@ezs8!Ei&m(vRm}ID+Y$mqy@f#RB*4J)!WMfAL=4a%L1&Q$aEnd(B%3{ z->A=34300<2!MCXnZY@Yy^C~?yi509wM|&)Gl?iDFNnleuD@H;bU>`dE?QRq18@GL z6`5dxg;B?6tSmby{{(uRn#$1!iS*{=mbNoEC9}B}*m{)UI6Jwk%|NAWl6KL}M7ega zEph^eEqfZe@()?o-|0b3N{cwhsr-j&MGNieeND}DyP?w!GfD}jF&<2fNdoq18Z-&x zL1$VNMYLy)x#t@xNQ-SugxXS11YDGTnrxpoIj|GQ!lxf&ROs=zr(M0~S2gIsUb20{ zyecL7?KLraH)+^gbd>qK?h``pd{wk-fq`P(EQJWuv@4LV7_3EyVI%1+63Qq}D5~Dq zIx$ZZ>NA9Xj>Oz7S;=5+W;YKsDkRds+C+4m zNmpRf$ebpKo6W}iqk~1#!5P6wti^N*4G=ydD|z)Ts#oj`qQW#!$m*@OC^9vfDA`^wc1`hH2O4zaeaj4JX&37evHUa$jH*;c3d zDRT+2^BM{TdbV;s(+qJNxxmdX^yGrxR62qijm_}VhEdom*o>= z_~HdmXBSjTkt&@~{V}~_$G&dSJX5Dc|J3let&|oYdBi7T$l zw`qgPHQD5n2BrwOTGLUD1)U-SVUgl9eJg$x6hBJ#r|E~PDg7RO;NA|2=1g;R!$L4l z`ZdcZF&RPTNG%-2)r`S(w~Ur&fGO8>K|%{S;z~GF!%fsYBP_;b!qvUPMxrzXy9!PLMGl0f)uyh>d`8opR*Z0^b4G zoR5kXJt5H|ExKxM$I{+83N~D&+t5elG<|XU4H%IG{t5Gff8ZVzjOB3-_c;$p52QaV z{j9oK7Ec9iK3O7~OoU677X3=A76S^4V|)Q_Aa=rnG>n+-(h7(q(x;tFy~}G5=oIHh z2Xmkgo+KFQ9Z*EIJ}OlV8jJpI4P4vizb~JmY{BEt@cV-aJJ60*MG-@;6!DJ@6kZi; zyS1jSy_fkJsraiK`eTBfF<^@lJfs#!A-{q1AdT=C5o()M7?(DpqOg_!sZd%zI~436 zwP!!)P2jeRVShdT6RYrLs#P%(ex_`HZQJV4-`tVpINlg>xJP!n-b^6qlO-fJ5_zhx zYM35q(BFK9%Tw+lburf>s>rNhVN>u}K3QFUPLw7$^X_U0^1>MVQ_nOUQUOU98tFUTh&zNwq7QBGfN$>ncK`7d9N zoPxNMZ)7s!X4}kA9nPyzA?YQ*QC)O3d1BX7}rUqT0k72!Zhkzq|1u{A|C6C=hOf|4!I?P z88K+g3MlrG5#Q;VH3j60-O2B@i*)>^Q;8s@buCy1y{9>b04I^=NxR|7L3k!P-yr{? zdTvP1tDx50Y_91Z2W3+!oxX9qJ#>nHXLF0^-_*wX|I^Y3BWcL*Za(H6R)P>`d0Fj% z(GBPG-nv1)tH*Pv7g4_N%E&;sG-WAf8ofelMS}oekQg{hR1KjsSfE`dFWp(KWQqNq z%~L}%KVX`+iQkg6kZw%5_!a`;M1RDQEi{m`CccegvP327mW#K6n7!4bquNhE_8Itq z6(h58UCPH2tdU>|Cls8|5SwIG>rjD&S5HGB)~D_a$3y3V4W)dP@4EzN!p1 zeY`vhqRf_NIHjM81+^YEBD#Jl<%xBk-8Idko_bUZ&`4H1kn|#@i>@UaS6Tf}TeH?+GS%w@g*j;RfU3F#@HJi< z`t;CnG(6Cvag6&^Rb;RSN-ayeidP!W03rDi2@o3&m~W|_zAjz(pg`_s-Q6*hooLaM zao4!1@qGieA;OqsGu>aByWKOX6Vy@eiPbAW!8Ot+zMLX-ph-mHv14{1+rr870WaSW zHES>8I-k;2JNO>xOpw)(q+|o8Gej3E+EnT9?NgJYSr|@H zLN}Rgj2_I5LM-8L7-{(#uU1{AeG+;}f+O!5Ne0Il!EUdoIO5<3bSU8k6eIkr{!|=_ zb7ULRQhNC1Sh3y`1HCKX^ITDamx`8WW+VTU>8W*bH)I@XcMDRXm<2&gIbjX3XMAVW zTgUF1UTKT}(QvuLB~dkou%H(=L$MX`FWRUqrOx*+vxpx-U9L-`oXds8_m8wE(D(za zQ83u2(<>-QT!xJ!pD2u%LhPd^5ilsX;w4C<7|4Tm+o#VXD^rSP!L}z=R2f_4D0-aZ zon_V^$8$2MieB``{dKJqlD6S~9}&08_jC{XceRy*<~@d&GG*YTA% zbzqgJn6Z?%q$C)7S0>vZ`B$pMQDr*2U(D+PI!F=#C|4!!XTF+n{;@(lk?PBAU;wq% zk=LA`MlV-LH|grLd5{s|Aam+-biq+<0}bkm1d9gEV1}9#JyNjEqRb;Wh<5yx5h3D2 zNTH&D5B4ywj7*D2u28R8W0#UsY0wsr+~h$%%L?d9W|z7!C}3zzOz_p}-Mpmh{i zNFZka?ct*ux2Wl``1?cV(TCzBMs6ph1vs;X?QnnSh==pl(al4*(to>hyK;R>=k@db zI>r^eL1(wYbaPBAPp3Uca*+Pkjc)kw4ZO4W(e>x!>pINdIrR#VbBg+OYp-_erEq>r z9|6`6l)l5J#ce>faxZ*T0n)Gq$F(wpRrx2>ks$1&5aG??T!w8-CW0{n2AV`n!Z2D( zcIAYRr>`1ZZQ`j1-iY;1&BXYc;F}KXy=l)!E(Q`R9hElvivu?o2;i?!j>_13@Nltk zz${~2?^D9CYNH|r#( z#S<)J-edcW2hv;Rk%g{{V_cL65FR<+GdT-JM^<3sWcmPk{t1uLNuEklgjs)^W-=gI zm_4~(z%SVW=5mW?HU=30<{mS*Fgg5=j(>(st#T=`?}so1^l4(svh|{Sx^}LHZHt(??5rApvq<)C@_qvmR-I8hhD4#(P(fSjIxHH1b$6^7(gDlr5y9#S1 zEWPbPdYFN8?`o;LyX8~T2}62TA3?bz`YAaq%lxPUR5;ItN#^zIZ z-v?+3G0KwX)Jx?fJa=7tV5N$;6}$q1RHxT-P2v3X!at>eh502Cc0t0Q?b2oD4{8ky zXilD)xYToiXC1%BhKB4SymCs)M#F5LKs?gmuVI}s)C`-*huD8-O;^dEhNcT&XW%3L zS{wVtq%J3-ac9_k-sc~2eV~PGX?>Jr^8@ueC9r`X0eB+h5XJuOAjiZlg9hy~#8fIp zr;t%O!4K_=+X7gZGg;tJ_i|Ob5g85iTVNhX=NUG)`AQB78<~%Iw0Y`dz-`8y~Cm@FgYxbIp zDSDC_a9!}?<;XCNbOtiLN9uBlMK5M2_VTs!(x^#Z`b0cvdoU-Qy-VY@r;YI!uBlJg z%?z0da%`@^-`fF^1&z?1a6q`q|yo1OfXI6ccid5k|zh8LYWH}~p>bLUo+1$XdyqT}~qE$X74 zm_C2&5_VGjP1up;(T6rzxs}K3+}_Ksi`&=gITe;^(x(^&Bi^Cl)IjxDi^5jL=dv$^ z3d^KfU9TX4#UtnQpz|76r+y!D)0FCzd;ZR1jm-?JO8!<+CmCZ}yZY1aIf|>vG}0eq zVX#H+%#5E)OX%8-L%%ZFZyn8zVZS2Q;$g7j%xWiKO5lV?1Fi@VK*u0Hre?jq@9P?P z{vY(D|VhC_u9G1B3m{kaj8Z-0~;?|QBZZqqFW+0_v+C&J2!CiLD z$9c=ItU<^ItuHbc8PCT?JNTV^Vl){1%Woz_FY?Wu?VYV2Z~(#Ke8tBY$* z%Ovl-;Yo8v#1nG&SQHwVI0LjRy){o>$gEaf!>rxakhJ+*Qb9JA?Rp^i5eBT0;K#(HZ*)=GWSNAL;a~+6LMeb@DB?5_*Xky79SeaM6FWTjyz8qr3WM?kw}Y<44FM?Gy!}yAag0)_`Ufs6v-)``ITwgu^YH%~6TzZAlb8_W9`p_u8s_+W7v|zf{dkpcK|K+ z0)38aF=sW8hd9rEGC122{9F~S4ILNjUQHJqBj1|z4BLroov4<+NmZnZ%3c#n=%zSb z(QC4tk&ZLkY(Hrh36|DDEovr8NxoN#=Z2=Xn=8<$agpm3sTGP6S*hGtaMTmE*o^H! zI|;2=D?+DeDnpm8eFzsNUFTJ9+$ND8kHfLz_aK9<^elB#P8#Aync|O@2zMj==LyM3 z2k;N~UqUD*z{|7tO1v_H>bm!*`#b{!lw{?oK1c3t3s9wuly#9{-se%`O$S1>{3#3^(X_Rg+CxIAhU3;u&%0qh70QIH*A#+u%==0YCn}n&?F5ONQ zB~YVOUKuBxLEg?jv4kwYLxAq9OXAR&+_B7>CZ&W+Hn%4=WresqE0>P@QVgk{v9WF!li=e@dR2$~nty&db1 z6<9<(prmO+!huQ{omuah^{vB?$Ei*&OwWsc4frNpQP~AdE`~mEY=-i$kpUVJJO-tq zHjwH+bI!5=Sden*yHjyK#$*%kO~;|VV%82GM0A65=}&Q==4e;O0Blk1sIw;nx?uck zS)8J%`Df+6yuo}-V0Uy}f_iFMd-_lL5>MCVxrrt-+yd{m=M~0_fH=IW2-W4+UkXCF zg#u+nvAr?Y_LB3f=}y0$1Gp9gL8;YVV0@gN2F=|~TMe_`yf0ksjU)Bg_IaaDI@Rfd zZ9RgtKv}ox&7(>c{fRv>?M2n5Vp>}8jO7?~xBhEP<@g$ammr%75-M7HN_SSBiRN`j zbF=nNexUOZLx5eLQ`UcH2>J#S6$|EMsG>`mqRDw?3CET)kDL0d8(%l`I&9R>ajfMu zJ->gCE=T>yXXq-W%#V}Sa1+iRj!+37A~KWb`NLlaRWyz1U*^@(N891Qt6{sM7^;4! zw1lm2Vt2n?2$v)s;noe%rR_#RNx#s*?`H3Q+G$z;jJ4BU%vD=u&2_b!fn#nEZ}a&T z9>u^5wPY%?SU5+Mf_s?fCG6rpK$W6<4)qej8I@Lr*B_Zq7=Dx)fSrnS=}{lpvprTm z$BMnM0o!jKDJd~?DE=!g07wfL{y?&RMb-czZ7;Ki-_m z)@fV8$&m-X_`tGTE19tgcsbUzH%Din>pkG6-;zQ2YXChyHo z(^Hr}587!>%qYh2?-jA?2Xk(|Y6z-zzwh_MMjHFZiN=U^j~wr?eO^v`j!gi~w=v?0=z z5(nKsWv2qOWOw%i^h7XONpPFI413c)X{_*y=Z>I5T$?c@PoaLX&;9r?-);e*W^c0X zL<*U0y+kHo)vrW{`#q%%h{qY~37%4_tB_{i(J>tB!jA}0WCIHfsiA%|x-i5O!qBWE z1|sH>rRmqdc?p?X%Dn^8chB!{7r5Y-HEhSHpNO*mZj1dhe;P6HwMImFgaiAs08==u z&tT3kmvCv=A(3F11ziQBbbN<8=80k_;p)%ax?3Rsrj)+8D+^ ze8eM1zGTO2g{|qH-THQW0j+|FaN*1PM=a<)^_IqNF4U~OeYMqd$?6Slsj=l6W-`A1 zJ0H^Tbor2s>j@M5zQsD3Pg^_1gNLp#iNE9pkYh}+L6FfTL*5p%R#MZ_Y6z>I32hh) zNmwVK-AD$IP01rIq4YtOUgVx*bsa0^d`vSEl58y{MKj%-U_m1i2!;2NNZD>;jDo`h zZB0t?9&V-M4@&Fv-dXm=${)Bmh2;whr|8n2#`y|OEPzk}NuiP453BhB7$V^nBm z$yf9FzzS;1zx@aBMkOFmU;$tCmtS!t;B?5K`^N}fs9WN*!X{VG$PxoBI@~Kej)RT1 zgH+!r-H^V9X_er3^iRTH$glk0B69L88bF!^{)ko3>a#^B^FZ}DybQ)#@_Q?}_5Seo&U}4ms=j>4UZk?G$QM|Vz8@wBh8uN3S#S3aI3)%0P=-Ww(J_LMC|I8FzI0bYgvXt@0}Ui;3TEE+3h z@kx+}nXvi6z`*{&jBZp3COS!^p~a_}kRb$tt`4Fd7!9O`i(^28hlD^Px#>+M@gy&z zE1eLr2LQHxW1{tdUbcS~9&h}&*=q-pMeR*``44DEU=O%oB`bOqO!AanSNIP+zP-Lw zc2d?T@=(HxYuTO?pyaHg2B{77HPK|)jsyF>&}#;E2StR-%&(&Kr}kvq~JG?he#pZ&#uNh$-EQElyl$QfL%MPC?OAx z2P{|tQgo>N9bO5$$tyFv1LgqyW?OkEGTj1`oIDbuFEK}%>jV?xo?9Lx*9_X3daxhF zWMRz3F5(_1_-J&iqc>VfATn4_T5#;YT!R#+hAY_I6K}NKF$ecy#sTlwOx5!#$C!Mq zf!1?)ZGUmjuoCjUi!8gKE?RGrS5OGKLE%?oPUsy+nIFaziR|yOl~02tDe00Ef!{JZ zxqc?ZM1Z0Bfe2*dxFO?z7n8Lxl7Y8YZww*&R=cX@H}3&aa4jwO`Odi!g?~z8<1i#J zRc?rMy}s;Uk_Ye72cD#Zwe+U2t77BoL?2sVin@La4MyxApbp;Chn|T4R;nS`Sor)S z|5TPE%ln*c;0!avU7_cz!I#AO;MofaH~UKgRkO{Gqo<|ad)wx*!f?3>Z`x4$`}Ylj z0C$frN{fi|htSQmrcw4*;d9}Y!8D<+Xczs5%rT9WZl3xMSNou^8vbtxpxzqdv?d{8 z&~OoD7Up+hnV&$ZMy_6bq0ul9D+W&$hb^XXdc1K|?__?A`b*Xwd+}MRQ05zbPp5q2 z9XFf0#N%+V>sRWX^zAm*^X}K-&3kst&5mg3y#^GvcQ1G$D$9eqCS;%%TbJN*IGofY zJc&E??JDSSMpTshfeGRl!5rmqIN!(u1TPqCy?A)d{{w$OfWLu>jP~9?tV~58H|t0w z_jkAV>*k}3zbH-K@oAhtD1#nz+qf$XG!NsiP1S>=EZttdKxa*WYhnClsdtMYSJ41i z8bQjKlBW4F!CSr)@fo;M9|J}vKjXh>Z)u+bVu3x}YvV%gzli4;CDMGXXwAYA9^ngE z7IdAW;kqRNLq;X~A!o}4Ei-z{`R_>Itj8kg!E#mB#xI5RW8t9MF3S`xCM$HH znG6^|78-PypG7%G(_uodSi&dl9Xz!7S#&Ih#}-uFx&qP4yK)ju<=wkH?;=5cBgTuo z5FkT#5_oPc185%2xZ&?SzK9^pL?G5N&-FyPs63_C*(@PrSgs>7XVBI)OMPwRQLmqW zWt>CuyLTBJFYPT4pyLMQo0!`SdvfMtInQOlmS@T-B@>Kit`2F|_TAcGd4+xpxnN5B z84v~|E!yhY56_pDZgeXXtJPWkji~gZj}>wt>!+*LV?x*y6)3EJoDirfm|JPE(_G=j z9*PoBN&#r_46N)Wx)7W(euiscoc_jSb}OI9fyp%SETNFz<&sz&X#iqUdb3nmgN#bviK)X^vJg zS|5z!8lP2u6yr*DlS2mD6n>}k4G0CS7)c90NAT#mm20({A4C8hI1UzQUja2KEnRMb zn~#G+Ed(=qwszsiK7d zYjQW!FFMPbY@~4Rot2j-Ctz&Xl4v%>qS_F+6ZE!7#RUQWrCg))h7$gKOW6T@y{gxs z;SXBUf(7B@_G7bF2@%o{5*Rc8!v|ypK78N+oG6PoV#+^!kj0M+xKh$o@2_@fM~uQ4 z(5+*N5L3Bl@X9;ywy(dZ}6E#xcEG}lr}a9{8EIW0_OKM(MAt^GzkEy zdR&yx)UT1_L5r#yb0wg@Ux_VF2|&|Egyu!03`PkQ`l|wgp0JF4s_T&~k1u4xqe!XD|Q~ zZ+W3qUBf#nUAuxDFkwZJsO^Gl+EBy?WSelD^~RtZ$=ANOc(=G2i0^lNZcTH&=as*v4R#72G^k1J zz@XA-v|#i{h?_7-3FTU{@Ph;gP>><7R@G`l6b3ek!)GNxO>Y&e)zO;W;}j0jE#5PUP8^Ojc*B)5)Px!8H-* zrB)Y%ccbMp>a=B}1zYt6TR(zIWwqK;o1lci2EbbQr*VP)XckL#XmiV$Nwd@(Zzp{n zg}*RfN9k3dEaxO+3r{8L7Oo_B2OC~UKxGb}NUlnThjPsysA4Br%n=#7=n{uO!R9J} zG=M<>d&P7Ad9uhG~NTf^SFbh}#&5!a8>EG=L|BxWV&>M&Lw@6fMU{JQ+|? zinNn~XBO-SsYpS|xSK#kW(iAHtfOBr4oe)RgWt+9A8eQ5^Ae75L62yJBT=&$2O6V_ zIXSXM4uF@3C!vHl5f!maeT2bIP`U=VxYVdPTnIU6qE0Q8Dpl833FAoBMu#PE5+vim zddmR;(+d{rKUS+;(M!udMbsf2tjSe1vHg{uC zBY{;aqRedDm@eCKRKjr<>NsnL2ex$V?q}->l<)DH6PZ-F{;!_coJ-&$RDk%*`CCbEj48v_C_Ff)7KOHUi%(M-}>&IrUi4> ztpMTaOwd^1Acy2&NqXfl-SF$DALP)wLb|l%u0X9{!SZwI#!!MXgkVx7Iip1?$KPO*Y)^6vC}D;b`g12>om zzI!C=bR>X{rGq@AMvzl~saWnJ)#rvp@K!Qyk!mDy4dVG!d2gmIDW8Iu%|K&xA*Mp6w-$|3y6a2R?+9 z#T^0g@Z7sNmE%*yeoI6=Av`ze2?l!}OHp*a2Y8oG)B~Hc=LfktRm*@jK`KMi95-sRfi!CkY$-_+t3-CWqUkR zRHCu`@oimoB>K#t+rpe;0R@cGl6x`lA3B09j(U6_<-S&2#CniMfD zFokSs;U`FsFR!$lO_dTo4YpyGw69I|h1u}4(uP~^*PsA%T@dIf>Ed(>+%^<%@TnU- z;i0`iPXUsDwF>axsK@x-yZEPt9PUPhu|Np1DLE-1=pOwwEJv-dgLB)JLQag&k(^lJ zK&ia-352>2Q5FDO1z=`j)%7Zu1bM9Dt5yC{2-Cj3Ob1815Fmk~e&~7oO`=6x$*lmd z6LLC&N6sMAP3NQVq3vmv4zS+c?Pal6^;QW-=o|Z8pfuHbn4rd`zm#$G#K9E8z9@_Y zV|zWR#&6F|HL+fmqDAe28-f?VL1Yoy>$XELep-V-@G9^Dk{5(UtUpTw|EaS2pF022 zx7TnRp&kFc@s~BAnYrk%0*Ehp@FY0;Ia>f3+$r&n8*T$c;K+l(7TE$I_VYr;3Lr#Q zxCDK`e)ScOpm!>A5qhU(IWNLJ6K%db5$Ai9qu8VHH()Q(C zbaI6Y&^sg%hBJlt@P;6zTeyHYy2?Qck2;u@p)cBV}G6LakaMoixB2F+SKUWAGz3?nQn*eS zCRKTy7eR)hO85iqN1U-nxY5AG7uS>jdO_=Hp?u(Wsj79d^B5d7;6aR^GmVmneg=5= zTF5tKyrni4usP>8_55IY6H}izfUycPwSFqC$T}rpP&7R?Q2$g1FoUgV;q1oW_Zy8VWboss`q5mUV6_Q$^TJ278Q2VBqLa zQzSS<+kIH@&4hnVK)@7(i>+-=s}Oa}B8b*B259Rs+yhIX^#N`6MRbq^W4=HZ+j2$p zCmH%s1ZDJ4B5HQt^q9uae>6YOA!ZtAj{&ryt9}s_yHm-$T;w{J`qjuqe#)3hM)bqY zpf{JwqJP#hDU)FxGI<>3!@L5st3Kb|AFWotOwq!1_aX-H|0EJ+FxDoyv%+T})zq5S z#)t6U=e>RwVN}C}t!wkD4VgFer272V_2fI%6Dzu+Mc&T!++|T5WIQlLPuV9pN zuWL&Ugt)bIlR~!@&v4Qk#gTuIiUzqiK*^=ZXv>HR-v~g!_-bE=RVfZnvkMK`IYtMs z`t%{eXqi509V|qtBst62dA^b85dEWsfLm;}qFh`yFHM>Z=+G2?VxxS^a@I~i+I z@EXm_qE?F6&voFgj0?c%7-lV`hc$@Ky>S0V;^s72ef;N}tiY|{$XCHvI~@qs2^d&b z_^=!b>*xHw;+=>7xXcsFGAl-p?3ut&Fyk4xM;D7ZLbFy2mAf-;OlNX?F{P7deqRiK0|Z6ZA! z^+kk-N2%VIFd?D#V)uEG#Kmdo@A~hk&|Ks)n}iVJXPnJuap-fOi{BS<68e$P zXEI$Bp}*_%MLH3AF$VV?|ASw}Ndq~M;BHuSw9!*iA9ON^B4aY1uZ;~OxU*J|@Ead~ zjTm6|<6AiRy!0MWB;N@eubv^7K?X9MxNo_AD~FIlj9*b)(|n_cZGPg$HzW^OYefNT zt18wkG;t{A4KXuOy@HGAU>034ewhX{HkhFZmxZ%6PokO1ebFz1?dael+Qw`bY;b`B z*%=FO5GBmO8?|Ky;Hq^2Z#tb18t42pF07X*#{L9>ZtaCiF+p?vtO1ci>pLA!Bfc?w zz+E;FHe5Aq(|8KYr^JhcMr8u9Qfh;c5lWQ*R=(Fr_*uoQ0mIRRGQLR19Rfdd;|L9+;^7!v?z1Fdg{BYpusz@n;h zMi@x0IBC;Jabd75#K>J&g(6q7G}e+O=nF`c)6J{!pByE1T_VWFK<<5@x06Vb>DMq73YH$RoXQB*x>t?}%LNd*1$IMq683`_BX)a7j z<6W&}w-lEKLE$@$hPr7A|GIWg1hw;LYOGbo`m{+ZZH9Yk4H`>XU+hpuX>$j(&hU3& z9ll{!PDK41#Px<9rviLqY)bnvWyM4l1N7&7nq+aQv6}RVen6zI(stPTU0#DM^@IGg z&$>$|^v5->u2otWU(7Ac5Ap!^7hvtiNfw`>;;2PY@j=}TbtJM!x*XgBtiMe+$kA|n z`AFlAtVc&E#iPKH?J_*=w2o3d3*JQYXW%hN3)Jbr>wLKeQ0B;? zXCm-JpP%6(q3=B|5^{N0X>^-#ELG%CSq&;PTz#?DDy&k=?w0HRcR5H^FVXHN0M{@C zPFWxqxgl_0}{f6;K~u`-xyp6rSlp{-<>C;oOV(zMRk2vqouP^ z)EpDQ3LFiJ7JHT29tqO26*v=DPfP_-xqj|Y4z$QHl!NRuT8^2kw2;%_YgrlY^eGyd z?+^Ut+7HXV2^_wFh=4|ExLo&t&jSg&f$qT<#N*Odm21`yGP5&QtBh=1@VyGtvp}JZ zeyzTNIOuOhP-thY*I@cqq^nx%QrHuM2{(!DT{me{U%!u&ClC!Nk%y zvTx)>=$%QwA{!gME$SEA7!mwnngP0?6AWkuYO@&R4Fl_kGWI7msA>!()m78*tF>uc z(x%f?4`Afn9O3nv$(H*)n*+Xe9)DwsGl z`=1H0ewYu607FUec@=)^Rslk6w6EI~fN)zJ48OzqAf`6KV1h3IzJ=ak65Y7B7M%|G zRwwA{VlU@ROeAi*PA4#xfM#V5mKSrVYM)_f37{hwv--N*+BI099r-hGc09wKDZ2;} z13E+a*(78rvYm)aUu|I!Sc6j=;1*y)l4WO$IcOZ|^nXicOQ3CF`rWA{bY#UGSjCua z4G>ovX@?omO*)BG-hFL;E9+X(!th>&%}&<%(*i9l`Y5nn{v^>Qvp7(I^wuLm=O$4j zNwht*(OqhBKN3rf>mGu6@|e>GB)gKa$x{R*#)}+;{LiLOl1@kG ztAAnqdmWMD5UQw`)0G~!l+%;7Rt@H2nv3G}r>9wt=y5?ZtakJ<1Efo5{^srTH>deK ziEN9tK^DS<_M1Hn4x>ir@Ho7R5}Nx3{1c064TvQ{sbQu~*m$eq8vmw@-UP2$|8)=x z{!Iz4hp}iIY;>4bcZw#Jhp7#;c%JeH1hx20IXq8C(SsB$pVZ>(nT~}vxjKix$;3+C z7vJ0W1)A`|Rsot-S;`yl2=2+!n=J}T_2_*CdnislNig_6j%WD&D2hdGaklNniHF<6 z>1cH0B10}VV*Sjyloz(7=V!|tdyfahU-|p>`_bs{EEt6LPd3=z<9W3A>-*yG?}OEQ z_P+T0_TC9kqrG7GzIcB)`ul*rFYX3|P^PPFihrvQY>xw+GCd;|x`VXerSPQaXT)Vh za(Hi~q#oL_cDO$>YWW-k#L#yLA*rgZumj>jKvhMBDOB2pGMb+#hH7<1!+Rrm+jPfS z0#^$ z$hAV`Wp2k6m(c-wsz}!A&rwtk9fkJjC@eAR|7bBPfcY{dY=#IBB+b4>RO?nRgaHX5 zLuFfVjh4yU#X-|ZT+1n(M2vUXVo+`chpF_E)_3G*OM~TLY-iB`y>6wjjrLe!yyo*b zk7q@Qq}FJIi-0U~%QEmEWl0jxF&xIY7CjeULD`Zwj%J}qUA;Uct43w(MJ z7iVC%Wc_13dP@W1J=x^Ra=H7jb!B5Nlalo@sgA@PER9>?_kt_R_kGS4Ds>1@ zu<=EBsth-tq|rnC<1&e!qO}~E!nVKp_04ggBFY<;X^~oUR*HZ1Anr2vFjVeO`U=qg=&Cy%l@jTBe zN<54CerMfYjcPp*3HR!i$*HHq{pn9$6h+>Su3<;#)Va4jksw#BgJsly(|B|V_glTg zkYnwkK(T71>W3#1lWI?6Yc=houZ3=CnatY4-D*zjVIpv9!JxE#g7uV{h>VYFbJzIb zMc#6KbNL~(Ibzp;RvWBZjScy3F>UpJ3h=qwW5 z9jaQrP6wtx6%A57x;T}I@B;UA4K(C;9n3gtN z1hsZmZ_sr}jI$gs5Yvq^J`-;!S@)yX3Z3!*PmiiVZ5!{v>v^4yr5j=dZdk{;c>%E1-7x5K`Izc8j&$F>83cHdxNxYd^ z7zs3Ac*oEk51SXB0HmWSRGeRxrx4`3+jWRh`+OjE+BA!GqO`Z?z05B3E5hn3_78et z`e?Uq5r_?)IPiL`v0x_P{H;isiPaOd-+0aKuZh38BJ~d4bnxz2JH3GSRn$^+1HGZo z+P)c!>thFwoFqWDjwF1*05ti{C(@0*WR7I5-c4lY`cPP#YE$%{F+(a7#J@Q4_mw=tvWJS`isH{b&FN3 zh`!C@dA)+xJVev8+@p|6UgY)qp7g%5j+D~3c@SW!#%Y*LLpjo>*~TEXexWi1ca!Nt z+_|QbtGOV~+uVCQb$Z|wuxF0le7sZ$gpAXK zN44suxF|@BPvdg|Ld0XhiUSKj87J}&G4YPC6zQrHr;18okHBdr&d*??Hg(1sEMWdZ zLFQyz*O)bDvZ^iiFPbX4zi>QoF~!v57zK|PB1t&S)l9^2pOib0#fLHZ7WgQj=Us@M zBmtzpa{=n&7*r>l=FgcGfS<%!VJ$;y%%Q^erD@!d-JDftnr|HbX$_&?hQw5!$ez|5w9;{H0w+C1g6JS=n*zkW&DW` zFMB0g_ESZ+ZyZsBx>sXre!6y4&Fs#&u;15p8c3zMs9q!PZie29#I+)(sQ_l%EOr!m z2>aGDULbg^-r^(lC!K6+Rf$zLHs02b)_&fu14{OBLkDiz%DT>UY6h;pGDa8x%@*8) zx3jZJ+GP}&o87T5iuzu@vF4_%s3tF{8gg6O+w zFjs9n9%l;$Zgc@ppGBdyZ<-$HTFpxyL0u)`uPQTo4U$xJy{Dkb<5XE}?kK!|CO%jJ zK;85BL~va(-cY$X0jFAc-o*-+HcmZ+FUE#q&!_eAxmRQ`go`*Wp)UY=>XoNiq4vby zo)^4TZ?@Aoog`4@F&y&aD{Q=?^1v%i&`vr|;8nwP1&0E@G)Hlf176m|N9(E+QP%sd zdl@IxYiN$j;c#{m68a*N!sCtX$Vz;`}%*CfC0StLf&FRD|1Rg`2 zQken}jTfg^wEYwx6{rpsj7q@t$#V1D9g8HpFmq?1gRQBwS5zssF#%`=tN>DF2~EsFdR~^e9u3AQB&alO>aD zrQmwM1ePjG@v>_oZ`TM!tNK?f&vI3AnPFuN^HQ}`1cu|#Y=?&VC1C8CEJP6GKweEP zW^}epxT%K=Sl<%h6#C~H|7{lzHhb3?oFmdw(#onsT9HwuRMN?o_5dyB`o@$r?jJk< zi&7@V-pAJef4=|a{l@v<|8oD+`TxlJe*#F;+W(#Io=)1iV{&OsGb@))YT5}|VptC! z4XB>rp0T5Bs*y3^sDikmfS{xvHy?>L1f3pAwanoamKa?H3MJ)o^)iu#mq_gVsYvD` z_b_N|;VlY$j!Y(|!*L?ZD@X*sQ+H>l&{gR^%(7f~(?nd#AoSFT(jv&mjZ$Rs3a?s9w5qc^aR%NOPSIDMcyPU53kZPz6>yhT~~Go z;Z1j}(wKneskbPt@J^w;4$-QTG(oz)ZN&DoORJ>YlqPT=DBRdJ^y%8tS}WUHUVk(@ z=;0MDi+-i*Z2*R()$!?6XJo40qo74AU_eT#C#rgq>_m<|SpqI5ynNEE)XnK?CgvPY zIN7yB4T}PHWMxDm3tQtSrzVppF6W?S*VP`02GHpdZ1q!wV}{oy2ri3KCW%VJU7@O! zdDSF7LQOBb*Uz*jC5}J_Uq<4xe4$E!C{Pz3+SQPkk5$Xv{SojDJ2rsgj#DqBc#$WI zmy4OmB~FB-rS?=aYbZC@2Yac!?( zPk8^i8Bua!BiIod@wi>fh1pw>kWp-njQlm_5*sGj`^wt~!M8~ztYk=TuVQb{doa;r zEe~yXU)8el;Xg?YX&$aXGPpoc@v^0>oH_;WxY^DAn|0n2GWg=Ty zu^2|USfC-Mo)eAiN~td7w+EQtPBj%re0?=H;DLLAGWHsu#>DW$A2oDvr{U_J)(t!D zZh1BI4&A#>$J_GA5mcu+^`432__%FAu;+$5-VWdSuw%ijs$7`GP*2ZJ-87*M1afZ& zA;@={5aiy@?oJJZyfzv2)8|aaa7P{a9q#SmfwxDXo-%HIje}dS5uH0P%b7?QJA4P} z!Vce=Ws5@Wj4bT|mbL*Z>n;7`r`UQMpNT8YgcUYZs1Z7(dz8#38S0l3_o`P9_Y9N8 zJ>q@1w*w3b{Hq^k@Ck@D_vm(qEb1PI3e@9oWDniZ3c`M}yM3!yf&TIgI9xCCY85oz z1E#Q(QNepSm2vAtIsF z7PP}FTNrpZqA84rp0nNdxw6bhdxpwbB2;P%%v5FJ!RCVo9=v>vm=i!+1)0kNHpQF{ z(?8q+WZ=%k)!WQ`Zs5*46ABRY?R|c$U*jl*QiQ-WAR5{1Sf@H$p34OP0cd(Wxw8p=25kMEkzJpHb3JUUx7nB`DrQ-u1FwB!>m1sK zx<;nXS}H|KwRKIGTv}=t>zV?#)vqPr$Dxy_ZE~duY<=vTD{YyBhV}A;M8<`OaSf1z zRACK3tU~bu8cbbP9hySUCOh_ zRA2Fz^%aA3RG;am^_`-3K!&c8w$WFxwACS81497(KfKMOPC$(Mb zD>FP3S0f_0&J)WH3Q{jaKsN34%_dc*4V^H;qi$~}{YCMAZM4(e6rYSo{^RUFwElPe z7Xv`tVE=Ky#s1^|m!IrEK92oI)9ZIEEVbiwlW7NC4UiGt;;f5S-*URfplRwx#p=>2 zQyJcAjZe@G2pXDP1>hLRy*NL?hiqYqr`oJ>r?)L^#7F;co`1r!`KzrzZan|@zUbA@ z|NfV~Pxc@GF8mk2t00d2e$xbr_DIlXx1rPEK~;;qWO5HG^>OG8_1}sMH5JrtTd8;K z6VLFkJ^#5usQQ@q|7Tx**}VV1=zad_{C|}D-q`u7?&c(8bj}!3(t5KO{deR^)joK_mqv0jp+HxBNLJJz3z<(<7 zKMfS@%niERR;}27Ump$xhHDr0{xSLdRC8ICweXAl|K4mwn!(cjtUqA?-BBB zvN+B=jt$*hsB(=dc17ycn>XONEx@@jL>?zAHQC|HvEG&>(HKkd43>A5@?7cv*# zL_mD|!ox8m8tNi_q5wHtYOcOkBX=8Z;4~Y^tvH~FeD%{|#@vG6@lKFkNtuz&KS7sZJ78!F zLe!ad0|5Uqu!OAFfrgQ)gf>>0gBivGyu=C*OgZRGiF7PQ?GW97z0$DurwDUqxmw(1 zEeB=HywTCRjm~Z?Z0%!v6IC+db(?j>#^X`#-lcsrapxA}*1g0vq36g=+x(xoNIok5 z=l*^0^=aULetQ3XJpUiWYI!ZvNgXN%KhzWHfE$RvBreLQkWWms@_Ki_h37KtrOo4c z8t}_Xw3Qj=^KaR)tH!`Dm9hoCE36-K^ZCtyh+!i35Uoj?FgIzQ5e*a!W{`dL4PxAkNkNh7u0eO?Vrf@TnpFjk=O8~JPCs`qi^05v@ zsNK(7s7O4SV8E8Q8HPq62my#L2*Lx!$Go(f(`Yy*%pqJgl)u~UHX3&7Kp0G@YjmxJ zXvi z1HVN>YDAi-VvtvvS<|AhwVU13tZ4dnsDaO8z{#^0+J2~wT3&DMZCLf(Fn_RDuPoWZ zt@bhC>a^kjTBW>zg2oiJnw1aoj}nX$1gb$Qc6x`7~i@y(sbyuV%+t z(p{uLIzXsbxRx&c#>-uI4y|XQtI#)R7^LS$vG`qkpLP6cL)ygUU zMohr~36YYjT-9Lv&S(JzsWDoPPgq=@O#}DK3?9yYh4`qPG1NY3j9YgL8gyTadbMOa zX`hf=j0#5v6mYrb?w)|*xKcnpv<>TDw9kloGq+9*nb~RgjDKKse{#v2!&c14mPN?b`0Q44+Q9B77jT(4XCK8EW zPAG`pI+FzoP=wY(GAp zjQ=a1#FNjz`0vSoeRh2R%P+>C-S3GnzWlH8{Yf1EcW?jm`=9SAZm+OZJ;?bT$AwUS zDMhy|{=et@_y3E5NAv%jFNBr3&G4`qFpPwj$?OodXK;PsVbI@nBw)wc6RiuHlj=BQ zxaTaWS;&I`RoAPjDfGw{tU$(YE+&hy2!eP#=48s`FbeT_tWB!yvr85Pm64oPYdjw7 zE`zDWfBf^p;s47l|M>j>eoOp^{m<`zivRF&@gD%`3&S&w1)Sx=iUJ|4WWQf242_Pg z%2`ngUnv7&ODQA_B5X=<8)y zhw6J)E6oa)M-=Glz+ZmXFV8GuvZ5EYbm0h=kjzHW;{1fNHl zEegtQp#;?ewNODTEX$d=+7Ok+tx~g$BI)8`!rzV}_niv$0MCHm;`5j|XcIqqTohW5 z3*rXIg;5@~53*fVfzHj|@uDQiP*rOoN_|c63Uw7KDGCtG&n*2b)RNiItm7;_7kODV z2#M$&vOA6o3ji0KiNH6y5ZZ+%_8uJ`dgpO2K@z|%1Z=y`j6%piy@DOy!BRUd;U%sU zNxH|*-A`?9?bja+$0~DtDrhr0DAlT)W@dC;p5n$#8%D6PEcF0Mv~ z-X1~Sv0dROAQqJJyMQ~_xL?$*jH>$Uv=*9BE*z>-s;y?aQ&rIFNz$PDPJVon>QVo{ z;26?8{}*v`_EG)6zPR7C|M|T4N&fRu{%e{(CTBNA(7aZSD3Y6%h?epSz_}n0P%hGn z)rP1e2Q6K>F~kxg%D3ByLq&ApRVE+}Hm<;#oV(Vn2DcrVCp6YmkqjR}j~z(gw5Hd@ zzLTok@ue$lLqk|LA#h(hRXFIBnqQC0F27yiHI{-4NPpuD`;yWBmN z>EtgW12_18ef~vL{`ckmPxikbSN~%cpL;SbGw#h|E4UDfB&PC`Qz%NAo`AHb@)YY@ zo5z9+7a%u?OYuA|ZNIYap8AmGR%R1w)6S?v0hxTTFRRaVWkH%%5xx-~O0-ffUMZQH zOyOUZ`Z~|fCE#kZM@1eGV2lYZ0UjlWW z2weoKbJmfd+|3}Yf>t42f6;WqXjvYtQkSS^#d?8}pIkNK7Pr&<2f(`>`gEJ)Nek*P2fL-?+Z^dZTJZ}{95mt`K0TdeEqT&<5v`7Ct^C7UM4TTk zKP=KohB25PC4fI?ZG-w3%Z|O4LFpcvC6y4ESs{t{_PqZovq=`}5L?eMMl!^}_TtHT zoR;wk2A6_WQp-5bMGUKoc10>0S9vO+t~5(`X+s)fMKQ`y2e6Yvl&{j8EWlAA#<08> zS$^h~7jlddELEYds^eCKZZjowVqMx^nC_Wjt*Mso=DKqj0co{}t~z)jJ;+ELZLTjO z={p8omf1r0>#2nk-2O~lJ+bz=mG3`_Bi_jWjgu_?i{wBzy#GGyHSj;~_rCn(|Nn2} z|A@D_k-58pU$c)CZl)dXkzl9QRkKdCTQqB$=c3veGF_iuaQ~w74_*Wx<^6YmzbXIy z3}eE5I{*LC=YNyMAQZ4n2AvYXoG9On<^v42oZUb?nSkW@5Wz$<=lz(-sTg046XDdZ z+I$4TwmE`(XCRrf{(LS@;_;PT(-<{JNH8@|Bg5Cc9!cMFSHq>3UL(X?vc?Ps@JSN;enk6 zgBVw(C)NhrP>Hh#gO&o^=|in@>mgR-0j+0hTQ6)(bgIaCBCS@QNk#R9ZcTH!&J2)G zoHKI0#U4{JV-rh`Ywh-_b{VTGc#(jf*7e?l(Y6$@lZIrKO3z<=mfAAi@ZfTbsEE%u zR&DZGVgVSA^{RrGo=Y!+0L~is%FOBmAb00+T1-Wbm^Plclm)(t@NdGVBScpyu3HO-7m3eHI(p9V4?t0a)kLBtF4d z)$$}o&=A!!b_ZVig$)FOf=n#aWH7+ zhVjvKFl$3cRmbJji_@$;6*<(S619E8<5y1(U+%o6HPgYu$JuP2r4ZQRjskJdMO=VW ztLGGc_v(k|k5y4wP@K05;hp61wDfXNl&aQfMqw8~g-G2g#vov)z=|A;DMS@Ky_)3o z_{MI)2F34P>oIyus$4UkR~KOm7_|n|wk}HMpiJBL9wGr_^cz?3lltd>EB{Yo#J}VP zaFhKPVExtJ|Mx!m|9oWrAM772%5fcwZ1%~m^*{Vpnjo81rR}%F>;2lqyDI28n{`!! z@M}fp#0q>m|IPD1&HgeNsB6#vz0dA{(ZK)s?2G+R_Mad3{NMiF`=^w;x2F}iejWp7 z`4$;I#puJ2n}h?mQ!X#j{Kd{v*+f~HZl;wsDVt_FJi4!=TkR@eG`B594paIvo}sVG zJkAU8G|Ma9LeS6v+B(B$rI@vAaGjdF67sP|@$b;{qEYxx4YrTWMIgqaJwS*81sanH zB0*(~96eLOI#9$DP*~}DC*7K!%vGLHSgMJ*ByAtFH9p`e@g2E*D-aP%PqOR`VJ(e< z$X1IcSvGG@0(WPP+p}^{`Y8XZMuUFhA!E3~$FV4nJ|9w-6Z5Yy2% zn#@0%HIrS?Qf*@FD}GACZf$ z_ZBp;ry|Zv=Rgn~=dmndi^B^NBE**%ARbXMEmOM!$S$3a`jMJ1@_AOEUUwFsLAx5G zJuXU$Ii3Js0zO2GuKV&|%#l*17`hpv-itg=imvzMGW76jk9-OJ+3)rIJ8m!~9V(6p z0z%s1TphG{KdD)??RnK=U}1upVcb&?N_TbKxSGBm8>XsUcWhn%aO4`Nn8V%JskV=w zA`2V#I&NmT*(}mg!;l!dPJ7Q%FUuz+zX94L@^j%me)U2l8W#{N=iDK1%4dn$)mVOZ zClJgO1Ohr77d8yUlJ*dtAlNF_@JMcumbf_!;axza_G5wcwa6Cvm}~*^MR|%HY@g}TAfNH0auLK@Z91Xs2(Wr}D>aE;MLe`= zPg@79KwVZiIkG%pWa+x|SQ$Ey2V<7f`Pi`ptM&h|HpG~;oC+P%Ye|8Zga{eZc)Hy# zrmvllY!#3{QZ(@)< zf^0C=6dj1iEKcQok*KKN%2WrKN}}#?o2meoc4eBzfFa8nI3bKrJc>BPe1(q2Klp!U7-GArd+sM)7=Oi!vy4C4`cCmE1@S-|cQ;7wg~ z;MP)SSTHf2%CQt_nOtFZPp0FX!pA4blf=0!Otew$!me&iGc^hU5vKrxb?V{RAr4v1 za1^jt>D92K`LO@Ly=!Z3+ep^$`W0hVDkK~lk{n-Z=~c9j<0RS>+o{OA`yexGh!~O+ zfdCf(r7*V6Z$H)DbH{*$99ePp$PbAK%pE;FJ$?DQ@5~jaASg>K-Kaoazf8(n`LM|o zizOLM`6%UiEv9RaZi(jcz#L3hkg3=?izBoU!ZzNb=H}r&O+p*WETZnt3QQJUQG(Lsz}Of@>n1hUQ#|i0_at8?L5Ta##PjPhfq+;F%_EzsGKVCxc zS!l%jkf*q<;X4x(sK}ci4EcG0{dp`h9oa2Wuyl8xh(-Mec`LUrn>C8@`- z>b20*_rT?82jJJyaz#=CizMsA();L&npkm)cfgX>rI^jYndx**_H@?M^Y3l`GM&Cl z%l>BvEc~TVgO_P8Y1V-rjRS=ZXEdc%Kh4G$NqL64pR|}@7=KI-=Q4tI&`-sAKe{SK zDEDv0OiA#6i*i2efdP~uYu6W_%l3{P(Z_o~%khDn6P%&&bc;?X9hBvsD^bOr8M)HJT0M40Y~JAy~4t>rR`_ znUFjjz)PMWvFXxu;)}{^DaUP+@xO?d=f#DLX+VCMq$xVFsQtQmkD;uxZHpNx21Yj~ z*QfB-f}*Hf9OyIaz!rBQ&7q}(9H}iOOOJg>*dr2qDPN=sv9wia`YW4S00=% zc=aHH5uB^pJ@(ZymbbU{GZ zGqa*Gy4~cpbPs9^&37-HWL!FyBQjGS$@vBT z-NFGqeVZ=b353jzkg^7=@W`53j6AhcKq}kLwIz)ZXTiw_crAHPRZ8wrI?Eo|@_5=~ zDDs!fIRYop-4NZK;($o$I|N7+7cvUU5ky;GI9L>daIn|Ay5|f*hRA5%#`V7 zu!$?v8eq8-F&=k5R#c7lLj|r8B=u#*%qZRmaI|0$9jW=}eBH+<)h3?$Y?gp7 zjsboL1CLP4$<~J>?=@vht1zf9Cu{OQSN!kC?0$Tg0nj(7eveK9y3iTr&r#lPi?XxD<2dV%`I zgJ$@rX*9A!1Z9mTUW*1BmSLi?vSi2_C-=v3U5dpZvMuZjtHAzPBh5Ke9|C+`pe`<{ z8b7pUMs60|P8elZabtgJw5l033a6pQD0EGg9La7TCL_!G#x|?a{c#|^HU^A!PDJLn z>aL-kM%2?lcvA}CdzQR%zyPmievrbNGCvrn?SFA%#Y$u(Uu(&ytAg=lGPkU2b4*YO zWssljIC701f#pnK*;rA3PM6u$q{efJ4Nj&-F=VGnIgX5T_wLVcPU5?7#-HuRHLvPH z(*Xm`t)5vM9{U0Rxzv(3ThLU~Kj{;#=m%r@02ER6pg-)BA&+dc@`KvoMA)X5I|zwWoq)|*m{TxF>ZM7g!vjUDN=(45dXuvcxCAxlz9 zyUnesdldfB){67zkcz9n-!v&9b3%uqU6Usn<^K&hB{PTX?Z|1=eX*bwptxV ztkAcePWxY^*9HQ(ZT~-R#(zK9zuo^gyZ_y2NR!h=x-|DTxODd%PGOa-czuMS%1&rF zf^1ovU!)thz7B=;;s9(}_~48kj=2hImYg6?>R z)*77<;QraKp^Js67G$vu#f*xyYDS9+bjq=cSh18__W$&T_W%8dkM{!m{}%t{X7~S< zqB^<CBJtwTA_n~1OV)|iG9TH8hPG)eiaZ?tccZ_XFQi^9WMKc(NH=kmL zkCb5;@?TZquUMVT`W_y@)sW+)fByv-D#8gdd_$2525vJE*;XB{EjKYfBD2mm6HeF~ z^X}4f{M;;^@l6JbYcft;*)U-nB^pbp_5J|}xua>|6J6cwqRm)C7ObmyS~LkDpm;ZF zedSSSK^)EnLScuNrzkS%Oj_Rlk}r4TCYRD)OVL__9#@!vhUe41HQAtB|qK$pNslt^nZ^6`G0Qp zf1eEgo5u&9IJbbKTr}|6dbX@?mv51;jgH|7Vw>4*2C&U2=V=4m3?FxgiwNlzET@nb zh~hv>!#j6ut2LQ*Tzo1U9PCnO0cqMox7GM4NENO7e^I17y8-;y`+Iv28u$+n_V;h` z|8H{tL-;=I3sF6r^U2w10Y>%erz91{kX6Z){|JsIUl#>BqF-(S;QvSn5nV6);EVHG zOwR0L>Y1%@P*_*(ST{xP&(ybE;5IRefEM)YE=UikIe861f3+314m>F&tw5Z5Uc0F> z{T5;>^ip|#1|a3XqoR&(z-q=-68M#mdA;)ijMJ*Vx$n21y)(^SvIF+-f1_=EUSugR z-$uSWK+6!E^i+*9gXo$EI*7ImwXFj!QG4HN#_NC5wX|_RmM%}Ltlnuf`W>&$byg$h z+lf4_vqx0l@w(>aG5%Kq_=6ua{ROE*@$M@-^V4pb5e6>MzkiSvu^t*>I5Pl%3;Hp? z!SE>S1E@O!?A36{FT@DLkCL~TA!1^_eWkVGtL%bHis;|)oQ^p&=#UbCr}%s zG81(0!w}#hJLQvP<)$IV-jb~3NxH_A5efC3vYwPBdZGR|E3CBo$Aub%$pGhTWSqqp zO`c^NK(+st=X5V2C1q|A1h533unOhSAxl_EXCe53$`f)&13I85DL^phYLTR$EZ{hR zN54UYfOkESFIRPsUea2eC#5WVut7Uaq=G}TZmRF!vy;9W6gV9b(TvS$AxX-q5;|0} z3f!lu090=u2j1VY-0U2{%~AqU(#qm=Xjve#oRU+k{1Oud&0L9m!nHSYFuaN` z%awr?Rk)avvMdooQJ_XARrWU%TOsm_mo>UDOY_?|uU^FL6%bBt4mAsBBL<$hpkzPCKm|)K81QE5XXKs(aDIdZre9Fo7AJ=KAQ(iEo5{LO zNSKN&>qn8pM^CKOE|8@ioYX8*vHEc6;Qf092bENYxS|bT#m4yT%AJT>^1sC@tHmP9_pJjNvDnh&B1*XNTB%naxol#7e>%Dx>X=i7rjj zR8UIYLZY~m;HTt~p`u^#SYwN1jg2!QSpvjEXB8&mI^%>Klz{8F$<-qe2{+{v%H1Q__jaCV=q z1ME*NS(~H)60)%#8)(L-nn(*?5hOCjh^kr;C7Q{h0a!tvvehz8YW?Mk+}vZTLiPl3 zPX)&q4~{ihu|n8{YMoDP>mrOMYRF))a6iEeEcS(b3d_UE0WbSQb}|m|DRiokLvp?d zF=1`zAk6`YU>~|UqsF=2B!<9j)V4Nz`6&RNfLt^ylf@#b#RUB>N`Z%bF;zP-wkVZm zb6`!JgkN9KM7h}v+DcVsv#dcQW1GXvd?9t{n5b|()1sUZx&H$R1SAC6XnQsaAg0k{x(T3jH+*bDi692-Du%CA25)|Vl37GX)9 zz29)FiSV5lm8zolkvmtbQlYmb*+sIhSZ~H_aQMMMD>-H0{eavxYyoab3)tA@Dksq- zVU?&?BnuH9iIlsQ9LbY1Tl=_i8b*`)6v!-QMGag`#y6FOF`kNw;u_=;Ks6mu7+@Rf zb6KQr_xVjhfD)+!m#6ZD#d?8^MBN9Rg$Z~rxbzhgTvj=pWUES?gA>H(pPPVCnw<0$ zh(&drEV#@}5VhHc{T*cQItgv)1faCbU?j{*JNG~Boh|u6`+a72m!b5e;N9{%PI;Y( zjHR>#Ax^NWR$PATqv!kkTJlBEda8wJKnZ)cs_J6#+}t2ka78jrO2Lv`t(TTC28wIc3p$Zod8XI&`<7b!4G7#|bdcPEB?n z+2zi4F#&(aX%2YZ+p9s#AJh}L8*J=Gwdx0Kcj4li1l!O}jf;~>O4P=&?9dHDr9Lnm z;ZWijWJOY2RYoYkI6e|4l#^P4Gg7uU((O4TYCGSMik`}Q;n$uRPcPYlG(~;=5yMIC zb{z}XdEk0Mti=|0zf4;IXSn9HwPX(F{IfQg_R?!2a7QmonMIWfPZC8ZNt_SS$(u&=Y_E9A? zsTCOL%%8G(yPSL%OvxRN!@zIaRJEby3_&#W1j)#?|DxKe#wZ&EW-cz+DL`yeCJUS0 zxLDCT<04sL6m)b_lSZ+af?jh~@#zX-?=H$@$^MF3$FDRxpojWub+(It5fH9XS4usb z&dw+&gfAWRXfh>mL}gV+W|Bd!4@&ECx^_%_pu7dO(4@$xD`RHsY$O|aP}{|-RwQm) zUTo!^E_U1~R`GhrvkzrFsrYlbl^5iVpmw%vc5Moc(nzB3LUL?_$ToWNq0 z`?aT&G_FhZ~cG&F#mtBK7rf8 zQoB}FDkxwG8Ei{1Z2b%PcGvumog9HXXP|8H%5?@ju*W&*|E*8c8mK6OA|Lh9&}@q< zMcy7kAk)%paPVytS?nNOQ{`}TL@pay5mqV-Mp0fQW!gAd0S6G$C}dTGuqF?dFbZuXsz4K<`OF8CuzCdY4^91j#Yv0(E{fZmZm<#RqT%#hpz{)?~7{0 zPWafuO4(_1JFq!vfvx-$0w%mu@!gW?t1Ag(pJw8 z^DO!FQ;PBYp#2Zw?l%(u`C$J+L;ia}Tj_TH-`xKHgJZS|@B+VV%5@VDbp^=s3gK2) zK#2<>qEPmhlFQ7Wbs-(->@1$HBd}bWZ0$P)lMBx>Tg^lc9;auV^_~@3mMkmYBXE~< zUS5=<=9Fj+6(jYWi;@)=kZ)xsCQZNGwD?}6JaT>o0)@7sqg3@eLj%B%7(`O9A%{n` z%#t-k6yzX&4}&oSI)xXeJ+OYVQOJeIjl*zfay&0CBInnYXCg&knhk-Aqr|%}{RZfT zoEgc&IJYQ_=10<=6=8z)`yK6Qx<6{Bxw5T^1EY@kDE3#kta}oOpn@d?_+|_sZUk+G z*VkVD4NYqA%S$^N1XO#Vf?HCAhP_SD*}UTQYq8+qv`h)sFq5k7FAae<6Amge={%1d zVV*3PJU5Bi-28u#!i^=Wg}+TQF*%Eqi)5{wG0z3Rz)e;04AKrJ70y04F5ELK!UO9+ zy-3z*Dy+q6#vNKTlNdlNmI7A#cO4)%8+ZsZ2Vb>8$qbt%-?e2cpzlB(J~%wbv@aKm<~v<5t_|B!_4+{wkF|n(nDLt62nIo1#}CI~ zgfOZ!g>;|1KfWpKMuhO%%^BU=#S?cZA5MpVxF>(wt zQx7w7yD~IxOZ?#m&jg0_uaN^gqxTn9BOf+T< zbz?RB47$=5?fq!S#n<#S@9&ziESBC}p&MhHFM~NFXuL^ERkY$-*J$X?b$@YH7fZOb zBs1K4gJ2Ftyi7rO7q&mZtb9OXl+>dr2OMM1hm1$jHgs}ozXRYWrbz~8h@%|%!~s*K zYKh39_iezDAqb~ZV&1EMD8PdP#x>1T9!5d|bt7d^Y$6|3gS-+`^{**=qchBCr=y!E z-hMg_4na<@V{9=*dLE0@OysjI?#h@)Tg*fr>Wqet>_p*>2C*^Pul43Tw|`_qm|+lB z?>gl|vRY&~a7{lh$NF)l*is0Fr3)k8uD`G*>vkTTb$I_cs_UI?y|#e825@4Xz9?)C zCoV_$tjOy`txg$70#qe4r;`Dj`LXWZR9vT%dPxTTyZzZ|G(Z4{^P?3 zP5k%Ak8klGKUM$FE97+nBKq&h>jE=*MuKxNlWLb-D}S#0zgAuSZZ5DH|MAh|M-Bh) zhxhN_`hVT*{+I5IFD1Z7HDusutbcC7QmlCWEK912S4|_{gkHF%kHIh!D2xV^>XR@v znjK(R*mf_lt0K!wK(b5$-cM@p<`nc^BcVtXI2oE-vH&?#%hLwF>Rx{ zXKIQ#u8T66@fXR`L5Jyc$Q;xk!5tLq%V+~BzZ*7+<>Hj`TpqBA+Al+|se9eMWjs0O9ooTio2Q9II!}`t+%!#UuiG@Kwcs@6{VDLlPmqqr1B*c$ z><(L?1F<_qBBbqLLCVo|!yUX@)m?kQAyXGbip?%Ig5jA3ak`5_X#v=QH3SKmFc31` zuuSU$`Ii6cjFi%k%eD309NMRJ&13qi+nC@}0B&RTGy^oH7BX2T6H%`>QBpNYv`2() z^A*)&2d0a*uc~@*8#snmJ5=|3m(3{?r8AgAw#P=(+ad(|tgY|VtdAx7L$)WY@0pRK3TR`r^8Z>MG+KWwxDYI-~(-cDAhVsh`4|0Z}j*oz+w z*ZCgp@ z!S;1WlNiZX4_YA}9HDYgZ4-7tg zXZFu!^!6&Fpu@Li4Ex(U-gi6m@s+*PWh04rqRO9xL|(1xk3=J`pmj~(XIpn0iQ$?E zQeGxD%4@FF^{vKemC={#oOpK`S$DcSjafyFC(i6}13>%<5#7jXUIthB4|$%tk3e3v zY!Asfzt$E-K9DvpgGoP>mL>Bf3T+phaB~d{(6r{L`(&-xGamh0Np_+zeD5i z+2T8BQt3)}(Q=jNO>a?JZLlDr%iJgDCu(s2>f{tb{$%Xr1!v1r6s4#EO1$L%S@EiV znu`VU?r%%5(O=BPWDcgjb)_21#e@TpI{17`2-iealJJiTn;ZZ@Ek9Ztf>eV~*X)e* zWu+HaVd1IBxCVC^v0Zpr?M~LH5!|IVEMvqycpuN} zh1+o3lEc@alN}zEf|4P$Ulbx0H1PgC>sAk!|1n+M<>+uVA$ zBtP-G`1qsn)6RGS1V4y#ejxyv7@cu2u$e{xN5_w4u@DuveaWoH8r&iQrE(;DI zbxe@~uP!+ObA{qz+-ZYMU_=2G35?AQ@L2O)qx=S7t7v?5=W$FY@-qO%&2)@0ilUIA z3KiV=F5{^=X-DW=hThcy1LR1}HFn0>3F$@p3PO0L3ADuU5+~a-us-=R3MOrlFV$B< z2cVMYQQHd&C-*(qLM16!97eN|x;>=&FjOwI`xHbCYZwHK+Kyv6Ny-xRENYFDEE}8z zO9u&c*jhA>yC+7Juiz3#Ia{tEL{_#%qYYcF0>H-UHbsUTW3NpwpEnB=^AC z8RTyh;%t_3ULKHVd|eH^Qy1jAJ>Zmf8TW(@7O_rKD&S?zdj2b)tRR4!l3anvPXRq7 zx8#MjZYHXSmShk;p_Q;svgYvx1ON%Xk7;G$&u`>n!{5(y=}o=lC1@>PyPwI*as%}n z*(P+$;QwYmDScvGo>2M;THIh`-zc4z-(b8q4?F03lh2JHa@ z*nnMXpN$ttCVOmV=C}-QobZQ1!%}74TAw1OzPatFG!Um8j^u33dPMMu_|=Qq3!cz@ zRA-FPH`vLfSV>Pn0Wx8^BD`Ui)a>aGKghmSCI!3GBv18K&yvs~bA(J%Q#Y%{7EYY( z4Kjj2)`vMyzm|#t`BT#?h1unznyawJD+c76zMLREmvK9Th~&&;wf{EMc%BD=jb#H! zp&_Jp*VSdP5iDA^rC5M}pLv=h)PIt*o~WJ`d5+N0J;I#@>l~XT6}gM++)?Chn>x2H zjW!3_$U-sAR_l6&^rmo!<($$EI}SLh?X(H3w%*c~QUNAsJPf`Xs3`)v8mgk4iX^(3 zGS+UVT{9vQGfE_A=VA_5#6h4rd4CG`Rn5h;9z*~G_e7E~u<}bwW}>IVZhq);$t8pK zAE!18Qmg8CPz|(GZ$MWOL|nA?P7rVLWl{5y%=po-0(Jvq7Q7HLMIk1PniPu#1Y-m0 zk*mJZracEVQKl>@*D7t5RY7$T%UIf3nVcdWV>l72@IWIWQ=74brFNPN+nUG@m_&`9 z@ft3XtD2|i{(w?ob9!;f(O-VBJB;t{qT7ys)UW#ZAYylo)zP=pcI*yHU#TzWE1Kz% zVA65ATK(6UZF_f{S+UPmEmmL&HWnjpFzjxm+lhR;Io>*a+>_FGwy<O7j@|P`KK(O-==8MY9K%3Ys~JhSf;01RwZQ;C(wvt{-KpTPoxDW4*Hmo zm-p;SvMXdgHi=mT_4EcWu%YsiXA$nn6RRHy|o zF4pqtnLB@B$#v%bj}IXDj`usr843?)rxb4mk5@~iV#gEQ{n(h8%X;GQSWNk5f&8l+aD$V*dw&^! z5iP1+7yJO<>#5+cll^h)RHQRZ%cv*wM391-+-jsxUy)ZK8m^0Fj8{W9Q)<61mY7c$ zUcnz3pVpT9%@Dk2>$+Iju4o--{r)&=Nhf%sR%^&QwKI-?DMUW#vwllhox-y=nGst2 z|Ks?>F<0$Pm-S_C~CiU>ew8svZf&J(&*{UVRzw zKZyULUZlL5lmaiT@DhQ#SF;)1C>H|cgN*$>IZuwU5SxOa06EH4^?9-2U`>U(^SWME zqupKAcbxKbRj%aAq7rpcu6rYE%k;n?4RvRt?iqQ$w<U#F?1zyu!h~IC`y~E)s$3l!~eb z(D7Bq?S;)2wu7C^|$jC-<7E$MUAuk l-!J3+c)zC&|F>8uxBqVc-Tu4%_y6hN{{fPhHaP$q2>|g`VcY-! literal 0 HcmV?d00001 diff --git a/Dockerfile b/Dockerfile index 907ae40..d9c5bc7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -51,15 +51,8 @@ RUN go mod download # the lint stage above. COPY . . -# Fetch the third-party browser assets the UI serves. They are not committed -# (REPO_POLICIES.md forbids minified bundles in version control) and -# .dockerignore keeps any host copy out of the build context, so this step is -# the only way they enter the image. Each download is checked against a -# hardcoded sha256 and the build fails on mismatch; make test re-checks the -# hashes against the bytes go:embed actually put in the binary. -RUN script/fetch-assets - -# Run tests and build +# Run tests and build. Both first run script/assets, which extracts Alpine.js +# from its tarball in 3p/. RUN make test # Version stamped into the binary. .dockerignore excludes .git/, so @@ -67,8 +60,8 @@ RUN make test # host and passes it in. The default is what a bare `docker build .` # with no --build-arg gets, and it names no tag the tree may not be at. # -# Declared here, below the test and asset steps, so a changed version -# does not invalidate their cached layers. +# Declared here, below the test step, so a changed version does not +# invalidate its cached layer. ARG VERSION=unknown RUN make build VERSION="$VERSION" diff --git a/Makefile b/Makefile index ceed419..b5438f8 100644 --- a/Makefile +++ b/Makefile @@ -28,7 +28,7 @@ setup: @script/setup assets: - @script/fetch-assets + @script/assets test: @script/test @@ -45,13 +45,13 @@ fmt-check: check: @script/check -build: +build: assets go build -ldflags '$(strip -X main.version=$(VERSION) $(GO_LDFLAGS))' -o bin/webhooker ./cmd/webhooker run: build ./bin/webhooker -dev: +dev: assets go run ./cmd/webhooker deps: diff --git a/README.md b/README.md index f6a682d..9af5688 100644 --- a/README.md +++ b/README.md @@ -21,9 +21,6 @@ before deploying one. - Go 1.26.1+ (the version in `go.mod`) - Docker (for linting, for the test stage of the CI gate, and for containerized deployment) -- `curl`, used by `script/fetch-assets` to download the third-party - browser assets, which are not committed (`make bootstrap` installs - it if missing) golangci-lint is not a prerequisite and must not be installed on the host: `script/bootstrap` does not install it, and `make lint` runs the @@ -36,9 +33,7 @@ digest-pinned linter image via `Dockerfile.lint`. git clone https://git.eeqj.de/sneak/webhooker.git cd webhooker -# Install Go dependencies and the third-party browser assets. -# `make deps` alone is not enough: it only runs go mod download/tidy, -# and the checks below need the fetched assets. +# Install the Go toolchain if missing, and the Go dependencies make bootstrap # Run all checks (test, lint, format check) @@ -58,7 +53,7 @@ make docker ```bash make bootstrap # Install all dependencies (idempotent) make setup # Bootstrap + install git pre-commit hook -make assets # Fetch + verify third-party browser assets +make assets # Extract Alpine.js from 3p/ (test, check, build, dev run it) make fmt # Format code (gofmt + goimports) make fmt-check # Fail if gofmt would change anything (writes nothing) make lint # Run golangci-lint in Docker (Dockerfile.lint) @@ -1221,14 +1216,15 @@ This repository adheres to the standard: normalized scripts in `script/` are the entrypoints for the development workflow. Ten of the Makefile's seventeen targets are thin shims that call them; `build`, `run`, `dev`, `deps`, `clean`, `css` and -`version` are inline commands with no script behind them, though -`build` and `version` both take their value from `script/version`. +`version` are inline commands with no script behind them, though `build`, +`run` and `dev` first run `script/assets`, and `build` and `version` both +take their value from `script/version`. -`make check` needs the third-party browser assets in `static/`, which -are not committed, so run `make bootstrap` (or just `make assets`) once -after cloning. Without them the tests fail with a message naming that -remedy. `make check` does not fetch them itself because it must not -change any files in the repo. +`script/test`, `make build` and `make dev` each run `script/assets` +first, which writes the ignored `static/js/alpine.min.js` (see +[Third-party browser assets](#third-party-browser-assets)), so +`make test`, `make check` and the pre-commit hook work on a fresh clone +without a separate step. We provide: @@ -1236,8 +1232,8 @@ We provide: - `script/setup` — make a fresh clone ready for development (bootstrap, then install-precommit) - `script/projectname` — output the project name ("webhooker") -- `script/fetch-assets` — download the third-party browser assets into - `static/`, verifying each against its pinned sha256 +- `script/assets` — extract Alpine.js from its tarball in `3p/` (see + [Third-party browser assets](#third-party-browser-assets)) - `script/test` — run the test suite - `script/lint` — run golangci-lint in Docker (see Linting below) - `script/fmt` — format all code (writes) @@ -1259,24 +1255,25 @@ We provide: ## Third-party browser assets -The web UI serves one third-party script, Alpine.js. It is **not** committed: -a minified bundle in the tree is unreviewable, and `REPO_POLICIES.md` bars -both committed build artifacts and unpinned external references. +The web UI serves one third-party script, Alpine.js. Its npm package tarball +is committed as `3p/alpinejs-3.14.9.tgz`, byte for byte as the npm registry +publishes it. It is a dependency, not this repo's build output, so +`REPO_POLICIES.md`'s rule against committed build artifacts does not apply. +The directory is `3p/` rather than `vendor/` because Go treats a root +`vendor/` directory as its module vendor directory. -Instead `script/fetch-assets` downloads it from a pinned URL, checks the -download against a hardcoded sha256, and installs it under `static/`. The -sha256 of every installed asset is recorded in `static/vendor.sha256`, and -`static/vendor_test.go` re-hashes the bytes `go:embed` put in the binary -against that manifest — so the pin is enforced on what actually ships, not -merely written down. Any mismatch fails the build. +`script/assets` (`make assets`) extracts the browser build, +`package/dist/cdn.min.js`, from the tarball to `static/js/alpine.min.js`, +where `go:embed` picks it up. `script/test`, `make build` and `make dev` run +it first, and the Dockerfile builds through `make test` and `make build`, so +nothing downloads Alpine.js. The extracted file is not committed, and +`.dockerignore` keeps any host copy out of the build context. -`make bootstrap` runs the fetch for local development, and the Dockerfile -runs it in the build stage; `.gitignore` and `.dockerignore` keep the -artifact out of both the repo and the build context. - -To move to a new version: update the version, URL, and tarball sha256 in -`script/fetch-assets` and the asset sha256 in `static/vendor.sha256`, then -run `make assets && make check`. +To move to a new version: download +`https://registry.npmjs.org/alpinejs/-/alpinejs-.tgz`, check it +against the `dist.integrity` hash listed at +`https://registry.npmjs.org/alpinejs/`, replace the tarball in `3p/` +with it, update its file name in `script/assets`, and run `make check`. ## Rationale @@ -2755,6 +2752,8 @@ imports. The entry point is `cmd/webhooker/main.go`. ``` webhooker/ +├── 3p/ +│ └── alpinejs-3.14.9.tgz # Alpine.js npm package, extracted by make assets ├── cmd/webhooker/ │ └── main.go # Entry point: subcommand dispatch; no args locks DATA_DIR and wires fx ├── internal/ @@ -2848,8 +2847,7 @@ webhooker/ │ ├── css/tailwind.css # Generated stylesheet the pages load │ ├── css/style.css # Older hand-written stylesheet, no longer loaded │ ├── js/app.js # Progressive-enhancement copy-to-clipboard -│ ├── js/alpine.min.js # Alpine.js, fetched by script/fetch-assets, not committed -│ └── vendor.sha256 # Pinned hashes the fetched assets are verified against +│ └── js/alpine.min.js # Alpine.js, extracted from 3p/ by make assets, not committed ├── templates/ # Go HTML templates (base, login, sources, etc.) ├── script/ # Scripts to Rule Them All entrypoints ├── Dockerfile # Three stages: lint, test+build, Alpine runtime @@ -3161,14 +3159,14 @@ version is fixed independently of the compiler's: `make fmt-check`, then `golangci-lint config verify` and `golangci-lint run`, both with `--network=none`. 2. **Builder stage** (`golang:1.26.1-bookworm`) — depends on the lint - stage passing (it copies a file from it), runs `script/fetch-assets` - to download and verify the third-party browser assets, then runs - `make test` and `make build`, and finally rebuilds the binary with - `CGO_ENABLED=1` and static linking so it runs on musl. Both builds - go through `make build`, the relink adding its `-extldflags` via - `GO_LDFLAGS`, so neither can drop the `-X` that stamps the version. - The version arrives as the `VERSION` build arg, since the context - has no `.git` (see [Version stamping](#version-stamping)). + stage passing (it copies a file from it), runs `make test` and + `make build` (both extract Alpine.js from `3p/` first), and finally + rebuilds the binary with `CGO_ENABLED=1` and static linking so it + runs on musl. Both builds go through `make build`, the relink adding + its `-extldflags` via `GO_LDFLAGS`, so neither can drop the `-X` that + stamps the version. The version arrives as the `VERSION` build arg, + since the context has no `.git` (see + [Version stamping](#version-stamping)). 3. **Runtime stage** (`alpine:3.21`) — copies the static binary and `deploy/docker-entrypoint.sh`, creates the `/var/lib/webhooker` directory for all SQLite databases, exposes port 8080, and includes diff --git a/internal/server/static_assets_test.go b/internal/server/static_assets_test.go index c7d389f..884977b 100644 --- a/internal/server/static_assets_test.go +++ b/internal/server/static_assets_test.go @@ -13,9 +13,9 @@ import ( // TestBaseTemplateScriptsAreServed walks every /s/ script the base // template loads on each page and fetches it through the real router. -// Alpine.js is fetched at build time rather than committed, so nothing -// in the repo guarantees it is present: this is the check that the page -// still gets the JavaScript it asks for. +// Alpine.js is extracted from its tarball in 3p/ at build time, so the +// file is not in the tree: this is the check that the page still gets +// the JavaScript it asks for. func TestBaseTemplateScriptsAreServed(t *testing.T) { t.Parallel() diff --git a/script/assets b/script/assets new file mode 100755 index 0000000..69db60d --- /dev/null +++ b/script/assets @@ -0,0 +1,16 @@ +#!/bin/sh +# script/assets: extract Alpine.js from its npm package tarball, committed +# in 3p/, to static/js/alpine.min.js, where go:embed reads it. The +# extracted file is not committed. script/test, make build and make dev run +# this first. +set -eu + +ROOT="$(cd "$(dirname "$0")/.." && pwd -P)" + +main() { + cd "$ROOT" + tar -xzOf 3p/alpinejs-3.14.9.tgz package/dist/cdn.min.js \ + >static/js/alpine.min.js +} + +main "$@" diff --git a/script/bootstrap b/script/bootstrap index 49001f8..1f014a1 100755 --- a/script/bootstrap +++ b/script/bootstrap @@ -4,9 +4,7 @@ # installed tools are skipped. Base tooling comes from nix, apt, brew, # or apk (detected in that order); assumes NOTHING is present (not git, # make, or go). golangci-lint is deliberately not installed: linting runs -# only in docker, via script/lint and Dockerfile.lint. Finishes by running -# script/fetch-assets, which installs the hash-pinned third-party browser -# assets the repo does not commit. +# only in docker, via script/lint and Dockerfile.lint. set -eu ROOT="$(cd "$(dirname "$0")/.." && pwd -P)" @@ -69,11 +67,6 @@ main() { go mod download - # Third-party browser assets are not committed; fetch and verify them - # so a fresh clone can build and test. - if missing curl; then pkg_install curl curl curl curl; fi - "$ROOT/script/fetch-assets" - echo "bootstrap complete" } diff --git a/script/check b/script/check index cc046f7..ad86da3 100755 --- a/script/check +++ b/script/check @@ -1,6 +1,7 @@ #!/bin/sh # script/check: run all checks (test, lint, fmt-check). Our own -# extension to scripts-to-rule-them-all. Must not modify any files. +# extension to scripts-to-rule-them-all. +# Writes only the ignored static/js/alpine.min.js, through script/test. # Generic: usually needs no adaptation. set -eu diff --git a/script/fetch-assets b/script/fetch-assets deleted file mode 100755 index 5148b4b..0000000 --- a/script/fetch-assets +++ /dev/null @@ -1,104 +0,0 @@ -#!/bin/sh -# script/fetch-assets: download the third-party browser assets the web UI -# ships and install them under static/. Minified bundles are not committed -# (REPO_POLICIES.md: no build artifacts in version control), so the build -# fetches them here. Every download is verified against a hardcoded sha256 -# before it is installed, and any mismatch aborts. Idempotent: an asset -# already present with its pinned hash is left alone. -set -eu - -ROOT="$(cd "$(dirname "$0")/.." && pwd -P)" - -# The sha256 of each installed asset lives in static/vendor.sha256, in -# sha256sum(1) format, with paths relative to static/. That file is the -# single source of truth: this script verifies against it, and -# static/vendor_test.go asserts the bytes embedded into the binary match -# it, so the hash cannot rot into a value nothing checks. -MANIFEST="static/vendor.sha256" - -# Alpine.js 3.14.9, 2026-08-17. Fetched from registry.npmjs.org, the -# publisher of record; the jsDelivr and unpkg copies are mirrors of this -# same tarball. dist/cdn.min.js is the browser build Alpine publishes for -# a