From 8473debc5fa3d51dde4b27680a6e160bcf5d5fc6 Mon Sep 17 00:00:00 2001 From: Reece Williams <31943163+Reecepbcups@users.noreply.github.com> Date: Sat, 23 Sep 2023 13:54:14 -0500 Subject: [PATCH] [v18] Juno x/burn module (#801) --- .github/workflows/interchaintest-E2E.yml | 1 + Makefile | 3 + app/keepers/keepers.go | 8 +- go.mod | 3 +- interchaintest/contract_unity_submit_test.go | 77 ------------------- interchaintest/contracts/README.md | 1 + interchaintest/contracts/cw_testburn.wasm | Bin 0 -> 147255 bytes interchaintest/module_burn_test.go | 60 +++++++++++++++ x/burn/README.md | 7 ++ x/burn/burner.go | 50 ++++++++++++ x/burn/constants.go | 5 ++ x/mint/keeper/keeper.go | 26 +++++++ x/mint/types/expected_keepers.go | 1 + 13 files changed, 163 insertions(+), 79 deletions(-) delete mode 100644 interchaintest/contract_unity_submit_test.go create mode 100644 interchaintest/contracts/cw_testburn.wasm create mode 100644 interchaintest/module_burn_test.go create mode 100644 x/burn/README.md create mode 100644 x/burn/burner.go create mode 100644 x/burn/constants.go diff --git a/.github/workflows/interchaintest-E2E.yml b/.github/workflows/interchaintest-E2E.yml index 31deb0516..e91d18d75 100644 --- a/.github/workflows/interchaintest-E2E.yml +++ b/.github/workflows/interchaintest-E2E.yml @@ -69,6 +69,7 @@ jobs: - "ictest-unity-gov" - "ictest-pob" - "ictest-drip" + - "ictest-burn" - "ictest-clock" fail-fast: false diff --git a/Makefile b/Makefile index 6569baa2a..cd59783f2 100644 --- a/Makefile +++ b/Makefile @@ -160,6 +160,9 @@ ictest-pob: rm-testcache ictest-drip: rm-testcache cd interchaintest && go test -race -v -run TestJunoDrip . +ictest-burn: rm-testcache + cd interchaintest && go test -race -v -run TestJunoBurnModule . + ictest-clock: rm-testcache cd interchaintest && go test -race -v -run TestJunoClock . diff --git a/app/keepers/keepers.go b/app/keepers/keepers.go index a49f8cdc3..636dcb8ad 100644 --- a/app/keepers/keepers.go +++ b/app/keepers/keepers.go @@ -82,6 +82,7 @@ import ( upgradekeeper "github.com/cosmos/cosmos-sdk/x/upgrade/keeper" upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" + junoburn "github.com/CosmosContracts/juno/v18/x/burn" clockkeeper "github.com/CosmosContracts/juno/v18/x/clock/keeper" clocktypes "github.com/CosmosContracts/juno/v18/x/clock/types" dripkeeper "github.com/CosmosContracts/juno/v18/x/drip/keeper" @@ -121,10 +122,11 @@ var maccPerms = map[string][]string{ ibctransfertypes.ModuleName: {authtypes.Minter, authtypes.Burner}, icatypes.ModuleName: nil, ibcfeetypes.ModuleName: nil, - wasmtypes.ModuleName: {authtypes.Burner}, + wasmtypes.ModuleName: {}, tokenfactorytypes.ModuleName: {authtypes.Minter, authtypes.Burner}, globalfee.ModuleName: nil, buildertypes.ModuleName: nil, + junoburn.ModuleName: {authtypes.Burner}, } type AppKeepers struct { @@ -526,6 +528,10 @@ func NewAppKeepers( }) wasmOpts = append(wasmOpts, querierOpts) + junoBurnerPlugin := junoburn.NewBurnerPlugin(appKeepers.BankKeeper, appKeepers.MintKeeper) + burnOverride := wasmkeeper.WithMessageHandler(wasmkeeper.NewBurnCoinMessageHandler(junoBurnerPlugin)) + wasmOpts = append(wasmOpts, burnOverride) + appKeepers.WasmKeeper = wasmkeeper.NewKeeper( appCodec, appKeepers.keys[wasmtypes.StoreKey], diff --git a/go.mod b/go.mod index d927d7be3..1e16f1ae8 100644 --- a/go.mod +++ b/go.mod @@ -2,7 +2,8 @@ module github.com/CosmosContracts/juno/v18 go 1.21 -toolchain go1.21.0 +// heighliner does not like. +// toolchain go1.21.0 require ( cosmossdk.io/api v0.3.1 diff --git a/interchaintest/contract_unity_submit_test.go b/interchaintest/contract_unity_submit_test.go deleted file mode 100644 index c5416f1dc..000000000 --- a/interchaintest/contract_unity_submit_test.go +++ /dev/null @@ -1,77 +0,0 @@ -package interchaintest - -import ( - "fmt" - "testing" - - wasmtypes "github.com/CosmWasm/wasmd/x/wasm/types" - "github.com/strangelove-ventures/interchaintest/v7" - "github.com/strangelove-ventures/interchaintest/v7/chain/cosmos" - "github.com/strangelove-ventures/interchaintest/v7/ibc" - "github.com/stretchr/testify/require" - - cosmosproto "github.com/cosmos/gogoproto/proto" - - helpers "github.com/CosmosContracts/juno/tests/interchaintest/helpers" -) - -// TestJunoSubmitUnityContract test to ensure the store code properly works on the contract -// - https://github.com/CosmosContracts/cw-unity-prop -func TestJunoUnityContractGovSubmit(t *testing.T) { - t.Parallel() - - // Base setup - chains := CreateThisBranchChain(t, 1, 0) - ic, ctx, _, _ := BuildInitialChain(t, chains) - - // Chains - juno := chains[0].(*cosmos.CosmosChain) - - nativeDenom := juno.Config().Denom - - // Users - users := interchaintest.GetAndFundTestUsers(t, ctx, "default", int64(10000_000000), juno, juno) - user := users[0] - withdrawUser := users[1] - withdrawAddr := withdrawUser.FormattedAddress() - - // Upload & init unity contract with no admin in test mode - msg := fmt.Sprintf(`{"native_denom":"%s","withdraw_address":"%s","withdraw_delay_in_days":28}`, nativeDenom, withdrawAddr) - _, contractAddr := helpers.SetupContract(t, ctx, juno, user.KeyName(), "contracts/cw_unity_prop.wasm", msg) - t.Log("testing Unity contractAddr", contractAddr) - - // send 2JUNO funds to the contract from user - juno.SendFunds(ctx, user.KeyName(), ibc.WalletAmount{Address: contractAddr, Denom: nativeDenom, Amount: 2000000}) - - height, err := juno.Height(ctx) - require.NoError(t, err, "error fetching height") - - // Use cosmos messages, then build the proposal, and submit it. - proposalMsgs := []cosmosproto.Message{ - &wasmtypes.MsgSudoContract{ - Authority: "juno10d07y265gmmuvt4z0w9aw880jnsr700jvss730", - Contract: contractAddr, - Msg: []byte(fmt.Sprintf(`{"execute_send":{"amount":"1000000","recipient":"%s"}}`, withdrawAddr)), - }, - } - - proposal, err := juno.BuildProposal(proposalMsgs, "Prop Title", "description", "ipfs://CID", fmt.Sprintf(`1000000000%s`, nativeDenom)) - require.NoError(t, err, "error making proposal") - - txProp, err := juno.SubmitProposal(ctx, user.KeyName(), proposal) - t.Log("txProp", txProp) - t.Log("err", err) - - proposalID := "1" - - err = juno.VoteOnProposalAllValidators(ctx, proposalID, cosmos.ProposalVoteYes) - require.NoError(t, err, "failed to submit votes") - - // poll for proposal - _, err = cosmos.PollForProposalStatus(ctx, juno, height, height+50, proposalID, cosmos.ProposalStatusPassed) - require.NoError(t, err, "proposal status did not change to passed in expected number of blocks") - - t.Cleanup(func() { - _ = ic.Close() - }) -} diff --git a/interchaintest/contracts/README.md b/interchaintest/contracts/README.md index 6562155c4..e80fe67a3 100644 --- a/interchaintest/contracts/README.md +++ b/interchaintest/contracts/README.md @@ -6,4 +6,5 @@ A list of the contracts here which are pre-compiled in other repos. > cw_template -> > cw_unity_prop -> v0.3.4-alpha > ibchooks_counter.wasm -> +> cw_testburn.wasm -> > clock_example.wasm -> diff --git a/interchaintest/contracts/cw_testburn.wasm b/interchaintest/contracts/cw_testburn.wasm new file mode 100644 index 0000000000000000000000000000000000000000..4b47f362350ed56ff2391db6e516e19db72def39 GIT binary patch literal 147255 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 z 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

m>$D6S1{_FQAqi5Q zgk9!IhW{G<8qH8W%tkX9xRp5+4TE4u5xFwvB~rT~0P2A$vBIf9$li2FwkXK8)k!g{ zyZ$ohB#5!9U;VRm5_ztzJvUx0svLL7OqVD4 z#pYlRY<*U)d9c#kgbjjR0(|7c{i3plP>TL3K&PK{X1Y(!MXT~CAH$&vVk=CF#WhqG z!3iPQKo?CYW|DOW=*N*Ke~}>pI`&=48i&n_28-)I5wm+DzBvR-BV~<_SdAeXed@`Bo57-CDgJv6p}W(K)j$$$SHK!c{5a zxQK|h`YD*v?&1y9_4k}KY!`j4LF4mwVvE^>@bU~2&N-vS^?k9LZ{s7h50o;HrXInf z6yWJ^-m5oZW92tlmxAlXAk>AE?IQBx_bgLfnGaxIzS@bFdIt0Yv($ro-{88cIzw1xG*U>z*2X8kMQO{7%4RnVo>#vqf``5u6*= zF6+$T4Lborwk?{+i*^D6zE~l90Xxvj#9%m=*$l`6o_48xlKQVmPHULZZdOW& zy1L2x5!?u$Cd*RDr;0yGO^XFt(h9eLNd$&e#e@UAw}wjuzAtSLKUtp^>Jh~#?ocIe zv5KnG{sr{dt3g*q1(;_@WLi@weye{xTch1+1b(3KGA_uTw0~a2LbyxHH`1L1^$rxN zcvD4Tnd0l!GBzgsVMx4ljM9j8xoZ_GEL{N(08|<@^S8UUpzZ~AA#@LSpSl;-_r|rG zQyOA%`q^h!zOw}j%TH@J3rw!l+grUi^90=Kyzl0>x48NJZ}*Hfu#vRqhF@SB_T3C} zsyF-s&+M(+-u`wVsoeZ_HvaOt+=>kjGY4FVe$RoFrD3J}wmF&_)LGSrTB;Qns{kmdPh$iLh~y(;q(F&`np=sCm@s5fiI6Pb z32chd{*T`%;ua$cb@C<>l zq}}9LW?*>nfb9uH-X)m|t&lb0Ke8_^ox+jVIBY|7d1Oy} z+vM)4UCTYcY;wN)KI1YsG0U6zSZ((^TeiF@4BlI;#3kLY?HrpNnZ9YumaTStWB0@7 zS!eMYCkLh`XWCn~(6*huao5Pi1Vg@q8-TlI%iQFl>5&8L&)tzuO{OE0>5j{$r+1|D zBNKD&D5`+-lwTjeD!)y0Gt-+O){%)#yGEw>Ol_KO?-`q!oxW+)%=E5JMv5DEO@r~7 zjbl^iy>|Ec7mZ$U!Ooo{=f7t2=JR)N$~$)+h(7Q9jTdg*Z0|vbQ`56E8>eUPO&ZY- z+IbJZGx^o{>7VGghhHy0!P3uffM1H+8jt2K8*3o|~E7wdvyaX#3S8Bkc<=-ras}`@+%JT(I-i7oY!{i$*Wn zxx2l2^wm3ewcEQdxZpLLCdPJ7LoJ&a!>L_{JCM(;2X!PNXhc_0=c6D;{l9*0Cv-nH z$~4(CGP8YRZ2#Eobo;=>P1~m?-=gESlauZF_Vmo$u3gZ&K|3;WXym4usqxF^>5(SF z$Sn2mWSY!m`Pq2;CZmp=qW1elnW3)9*_qLi*^!*y-%8~r-leumm)pmfTEO`6!NI_M%h}4&m@7xYpDR zwd|Ri7k3-mxeJCkO*L(e?Do0o2^+`JQkxVQhn#jnl~en7j!ceUF*Q#O^Ha0!1JhFn zre;PakV{*6z+G`+mtPV`vs2qc!{0_@Jl-|Y9+~Fe{;@)OS&6v=K;HHT_H_T)9&rbgQ|upheZaPM%_q}{~GPEg^T`+5hKrly%chM+cVXnTR2(V5xK1+p@f$&YWP zSJxiUw4IzXByOK?&rXf(1PNo@x~V-Ab!3D(yM1FLb zZ`{al6Ti*;t{b^Y{LtComNfbl?}-*UDX?B1#AvF~Y*KFK}xThH{*6rg3)ouxWa zN%INhW>SYbF5s8r^3|MQ$nS;V@-@7#e=h|t@9FQx<=CVVZThWale6bvaB+IhIq7*R zZ4VB(F78j~ zK4+=w1~1{r=N!V{f1q=JtF+ST_WYQ*wvWVXfg#rgF5>)Rey`()Mje%(y*@m@^V$o2Xg)|8QSN;lH7;*PMV2z29+J|` zK+LA%%2J}!ARp6f-;(a1;^{2omY$!&lC9uISMbGO3e9QLu0!X|w$UtLi<>u|zj5;o zd&g#qibki}Gg8V&klP1lyf z_U2{Z#JTXL-=+L6<99i~mqxFg!MdSmQY_!ZT$!2$!jVy6wcF`Ldvee0-e~_&!*vgi zBfuiMmVU`pZ0~7Lr&H)HyClXnXgby<_{vC-zTH z9XL2WGdnkb=*FAAXY=_Ny!yh|y!N7tU-zm_vi?u<-y13S&Hmn&*I)96@KzKjm1?c0 zx37PoJ~*^uWn;KjWv8z>!wa0bcHPTgaaP)FeZ$$W{Kj+EpZiU(+Hl^+O#<+O3Im(OO%X*$XVaB}c?et`0(uZQ;}r}W-i`Q@_f+cS!U zQ@Ul>DA)S8*f})8ebL{4<|sIp^W)sXGuh60ncRO=_;GL&<)&>)xqCwSk8l*e7W-^nkhx&Mpv7f2V&@k&iaBZ)PqHX`BwI)2h$=ft~@$Ket9K}X#Fydz0V@?iHH3X$FyA_=K*vOKfPKF7gN!ue=~f(i?BM`t_H-WlQ>2 zd2-VI64H`@JKHIW#Vn4C$@F>*NL*Z7wqQjf%w}~DlW`UyH-n0C)6^Vilj+<{yHj+U z`Gts=d4??Am|i`FAjDe4g_T~>#(l}9H{e_=-90_E-wM!@F#&)$)Sj3~JIV!f(G;aA z*$ps0j_K6ybZQQ+A>J`LGT|q?NAOe#CiP@=OwyM(Mgiu3(UmNE8P^-q{br_9mDEBhl`~T~1ZcL6UP%|cl_~jfH||*7i29Nj zJg;)HUgW#O{}p_92VUmByD8>?^v&|T79ZZhPx{qPeq)mdAh+46sdPg0BeY0l=GHot zRl0CXvOS92Tz7iId~nBlAJUkb#34Pww6;3RH%j&Fpq{mYNA2vL+dncXK45at+PN*X z6P&;|OidY`7qe*Z$bkdxNhm=B!2csmpFPm14end7*?2eaOApL(G6$2D9+qGKaJXI~ zH9HgaL`_81H4UYcDC+!Bs1tz>I>qwR3((=2y{NnpT)Uv36r18T#|EA{-$vb8sqUX& z1ph;euKzGx8UO0liZhdx;E(73~$tThWl2$ z4_Fgp8cOjLxvWwZiPll(bdIm)2w6v77RAYyKVTSBUieC$OTOggjQ#Cqxn&f2hwRb6 z1EIY)1(t%I1Bl;>5)Yg>J;ipWn8xz4s_{E0FF#!vH|F+@#nbzFCY?WjCL7#rgDr)a zd;>Py?A*x28$Lx@*-%e$ls%olv(*&+qRMFSOz-Ozc*my4b`?n7z#e-CTMIPO#KO~2o(ay*Smh%y1Gn4N{!X6d@^}~LK5koY`VK~|{0uY} zV^_Z4=Kl3zwhc%0KuI9HnRGqd>h=_*&ce zL}ivosLZCLF~y?&{Or->==tGz!P0TG8Vq*fL1RfZkx9Os(0wlElQEiG*RVB%cXHG_ z|BqwgXUTCN948q9qnr#e3heS^op1J@f94UgMJf7tr?xqQ8te#D%fRW z{nnY>W($Djc2PcEqC0t4Z3LRZhw$8NwR?D9zOnp$<|=EZrkNo3FxGhXBxPg^YEob{lZs+s9S8My|jX^v`&rn{rX#U=N zIA6i6c5zJ{UhnfZoMwObz%es-sZaW5%k`X>1kI9_m3RdSiC4L z`Ow}mWE>u2Tz1nVV-u3I1uWEE)agpI@nl*=WkcbdgAr&g2}O7B7zDOUDz?;aHEYet zqTp_Bb+8IFiYkIUMZTVQ@y2U+?vn;Bxh3BK8a?9DS2OczFo!NDfoy-wk+3m;Bsr0v zPtNV%iK3fdI@)pb!Dvu>HeQy8IheX!bWo6(Gk|stUhie6G+Mr7Q`*Lp3vx%&9kbJO zZOqyoyGJHwbRxAi-66Nej^ni=o2#hfoDJu&)NU`H^S$Sk-VM!={x1P9q)wV^oU3`%JmH`x_;TBYwTa9-AeH0*Tb9(-u(LeI8RI0-_N;teEwYhlMK$Ue`?Y7yBA&m z7}vx6^722r==q)D`fG&`r!h3M-Mhzbgw!ti#zu4_Fi19;t%LPX*cpzGEpEB~pW?0r zxT@8q{pszC#1`8K$)-XW0|5kDkQ9RpqLCD1Q_Pi6>e%dd5_{}I zkV7y_0(PeLf(ayz!EsU>=y;3M2AkS-rgbrC>Sf|Z{m#95AWWK0r_;%ObLQN0&;I}C z{O8~9eZ6a;#DL6s$O);zHXZ4u(1tI4H}Ig#A1{K7kjpj?(FeaWD2}`iNKu?hmJ( z)Q@`Oc{}^??7MSKC#Vj{dryzhj0GU~p`4iSUc{oEgNU)TrP=92t$Y3Dv(BD3K*CdOnCCxzAp`-7G;BBHei%WVydq!hH9_~rml6GZ z13|1Waf$VFAHo&{QAdQW2-^_0BaDB(1L^c!uK2kLFQ~6|uf$xyQ+HqyK+8F%I70bk zm1CHpxcC+$Q%afvYtne5uJ^sMQ}I1ZpMfxAxh zWg@P)wjc&P#wApkeYf=vz%duR;I!$&reKzXTWRm;Z#UscD8?oHcxd`U+e{k!8Y$m z&p;^fY^AM`BJ6}<$Hz(ut#02MU``wWJ@(8@N4aC`<;IozbD{G2!==(^Lf5LVpaokj z0))oczOh~6aOdKf5N3K?3-9RZ9p>;dK2}0OZtptaZ44a&(Dc8oap;=`Sc|I;O04w# zPUH!Ar(|b9uW=T5_QCx?;sQ2H-e~k3SAb=x3+W!!~^fP zwMC?zf_MVIO|*qb`V_ICXYDxH(&H%&IAh(7=V=`7!Tom-_9B?#+F(>0)ricE=EicP zyc$L-Q9ixjMsUA8y+*Hs2~dLdJb*q5P-Yc^IO~GzgK*jnhJ%q{G#CrUgNa}=m@hLe$GG#N|AlZj+9nMz@ZDRiGg(e6m151B(BK)kd znjMMKK`Sg+_5yHngps2U=a+rZI=qf~w${P*1;mpsw;_CKoEEZzjy@}$@6>nlt{AfI z)r3m6Ra=Upju_8Phy{%xf8tB}(xD4@;UPl*=*7NpadAoZw{l!hWiJZ^0?TcNX$-R1 zF<0#_vCrCZHisPj)_TMO1}1PT_GBk~5!MRAD?nQ=ZYmsi9sy8sl%nnd)Db-6lZeHh zIfhtJhIAWOv=l;x;OuJnV%M93#0g75pD=HjT2@;l;FB?%-tUDDGDMEZr*)c6i?K)T~`UP8z&5UyWs5b>M$bfw&rqe=xi6cma z$+DtQRnb)4Zxp)n-1(jiuiM8nSZ3w~J)7k4T$0D~)dEsTOR`N?#cEsu5@aD7CXdmB z^bkL+{hodze?~uNqxuil-??Smqrt^r-m-OP;XiqOH_!d#(?IRa*5z#%hPQ3sb^pO9 zjy-$o^b0@#_1o`^O5C4W5sD`2>Zdo|w0w9wGXLh-v!{Rl(wVp4!H0jnc5Yq$?1rYB zR&;d_?|NkS3oo7V_$%x~&w(B6OoO+wWZR_-8kDbz8$fJbvQjE3aMp z?dGp<*|-11$y3jtdE-}&5B=!H(=VNAYM!@v$%?jnx9@o3$)`^KDlAiImIOnbDHOUd1>p4yEpyqsh3~*$4kHc;H!N* z`Uk!}HBkH5(Wg#6f9AFG56^n=q2P{^e|Y(&(dKzem#LaBqpbGg`)hj>(`Q~kd*`kN zUm5t>3un*0{>yhiAC=6uNkixP(2ZIFSNwzD_gaVL5`D0MaB zg(~BPhR!smGK!ty<}!0B#5+-LRtwa{DphjaE&K*n!wB~)K6f22n$l*j;j5=uKa+@}l?kx9e#ZdBUUeO=DTHURJP8$|6?~x z=!30U*3+8x3)#r6XNHp08Z@`k?vOqvpK^GgJBNox_~08;Rkti# z`!fbVP>EToAa@(LPOt*z^GFIIm>iW=m1>$!4cSG#JcIaYraZx)MJCc5n&&B$i?k9l znXKlw)1&MOdYqo2=jhAsSM*ouYxE8Bru-Itm;Z)dG%xXw>F?Pm#9dZDqj}zrJ$t^h zVao&Ge)NaO{^|)u)#KA=Ec)Hqb37|Io>;Va)1f0re-wK&^PYRR@437f#ae8h*VWzn zws$1&*)jT<9>f{+sTXXFYWx#Pe&Kr`tT!x+OqP6 zyZ4TKci&?NesJvgbBfD7v8Zn5?D_j2`}-I7s(Ja7rp%c6?tAZ#o;uCV>!wUCk0k3F zZ<^b(VBsRM_S#o=_uSsMe&eS5_8mI<_>a#XIl8v@!~-iPZIBtSVLgo02CShX7V;JH z$$GI|CEv)smDV9;GM~)LwWzE4hQWlMZD_gmvr}xPrU$d-QdS_7SxJ7gT+0nrS7(`J z+^xr1ot&@YFFjhC5)n^C4QR&T)LU+@(kip_rxs@A=*{ThMo*qK5Q_G z*qo*W^J<2YQjNiQo?6ce7ZG3Bv-y#p0hjgMeREfOhJzW|I}Q!a8F^+XrB?D*WvbC& zl*#d@A~&)^*P_3M2Thg(V%#d@Vmo>5BH)v$a{2WOS|>tr%`wsPoStdA<@ za)Z;&{u}2`xBhOLLij?tAW8?l)x68S$gqwii#*j_$Bs~}hc~~@{mjGe;B5-_m(R_U zm|VFwsd?~LcM--C*SsjItJW{37{khcOT))#d7CgEgN$Esz;v86uc>#%#2~FpI)1EC zkaoexv<_^z{Hzn{>kx!%jgWE2^Eltbb6ZBZEG$3~zN)KjU>)9fuw{!ja4T2yMf*`F ziT=tFw;+f(oo>awIC}+SyqTNQF1cM=K4GtvnPZl?&GwS_tM^t_2F>c;{cl#&1MM}% zpR@<0&&~Lr(f0UfdamgjJX{odh>WmsNKomdH z=n78EAl;yzloEa&DK1#%s?&9n%ZUzRBUiC$T4gRV6R5y7P)XIGMWjwt=NgI_G#?)* zNP#MG3aU(sDZ_VMkd{$^WYKKUER;su8c~@+i}Cj~1n=DIq#VtoRVIU^snlh+Du#qk zsYn;n6vmhCrHC{V4sTgPG%}x1)va|Bs=L%CT7dQlNq7l*lwD-9PI@>|FesWwIm^J` z^-`)39|7!H5iQ1V7G8PQ2zBWMX9XFclgQT?r#eyCuK)y$RuwH$O))45mV|f^X_=Jk zZoD9j0xXG4RAhA;r4KRUA*$$*(bKae^3zg@Z6ocbq^zP6C-@`_^a+A$lRPSu2Wft$ zhfLM-Tmcru+$b$0HvsY!U%$~vEs3C2eAEN;uA~~dD8NR*tYyGG6s=q!-;yPUS@Lqm z$@kE{L|a&cE5tXDxUT~9G*}32s$@EwjDN|Pfj5DpI<_lmV*-=_3fWDVHqnMGA=$*M zGWn;Pm`sj