From 54a95f2fe055123e60f6379dc3c3e6ba85dd871a Mon Sep 17 00:00:00 2001
From: Maximilian Schneider Mango DAO Mango DAO
- 5% will be distributed to the team and early
- contributors. These tokens are unlocked.
+ 5% will be distributed to early contributors to award
+ them a large stake in the DAO. These tokens are
+ unlocked.
- 5% will be distributed to early contributors to award - them a large stake in the DAO. These tokens are - unlocked. + 5% will be allocated to a distributed group of early + contributors, who worked tirelessly on this project + over the last year. These tokens are unlocked.
diff --git a/components/NavBarBeta.tsx b/components/NavBarBeta.tsx index 21f55f3..b2ea028 100644 --- a/components/NavBarBeta.tsx +++ b/components/NavBarBeta.tsx @@ -1,7 +1,6 @@ import { useEffect, useState } from 'react' import MangoPill from '../components/MangoPill' -//import MangoSale from '../components/MangoSale' -import Button from './Button' +// import Button from './Button' const NavBarBeta = () => { const [mobileMenuVisible, setMobileMenuVisible] = useState(false) From 5639b10a3e512f0afcfb05ceaefafdd5c122d9f0 Mon Sep 17 00:00:00 2001 From: Maximilian Schneider{startIdo?.fromNow()}
++ {startIdo.format('dddd, MMMM Do YYYY')} +
From 6796d6458533f8e1cef30a59974f05d81a49d0c3 Mon Sep 17 00:00:00 2001 From: Maximilian Schneider- {startIdo.format('dddd, MMMM Do YYYY')} + {startIdo.format('dddd, MMMM Do YYYY, h:mm:ss a')}
From 2a3a07e7caa77a8f0b1df971538208b14065826e Mon Sep 17 00:00:00 2001 From: Maximilian Schneider- {startIdo.format('dddd, MMMM Do YYYY, h:mm:ss a')} + {startIdo?.format('dddd, MMMM Do YYYY, h:mm:ss a')}
- This is the first moment for non-developers to participate in - helping build the Mango protocol by supporting the inception of the - protocol's Insurance Fund. -
-- Mango is a decentralized autonomous organization. Its - purpose is to improve the Mango protocol for the greater defi - ecosystem. We aim to create commercially viable decentralized trading and lending - products. -
-- The Mango protocol is powered by lenders providing their - capital for the community to use for trading and borrowing - purposes. The insurance fund is the last line of defense - for protecting our mango lenders in case the system fails. -
-- The token is the foundation of the Mango DAO and will be a pivital building block in the future of the protocol. -
-- Mango Governance tokens ($MNGO) will serve as the - incentive for those who can prove their work is useful to - the DAO. -
-+ The MNGO token in its inception will serve 3 primary purposes. +
+- The introduction of the token gives contributing members of the DAO a chance to mold the future of the protocol. The token also helps bootstrap liquidity to the platform buy offering incentives to market makers and participants in the system. +
+ The Mango protocol relies on lenders to provide capital + for the others to use for trading and borrowing. The + capital in the Insurance Fund will be used to compensate + lenders in the unlikely event they incur losses. +
++ MNGO tokens represent a direct stake in the Mango DAO. The + future direction of the Mango Protocol will be decided by + voting on proposals using MNGO tokens as the voting + mechanism. +
++ Bootstrapping liquidity is important in a new trading + system. Incentivizing market makers to provide it on our + order books with MNGO tokens will benefit the protocol and + its participants.
-- Mango DAO -
-- A majority of the tokens will be locked in a smart contract only accessible through DAO governance votes. -
-- Liquidity Incentives -
-- Bootstraping liquidity is important, market makers and other participants should be incentivized to be active in the books. -
-- Insurance Fund -
-- MNGO will be exchange for funds commited to the insurance fund that helps protect Mango lenders. -
-- Contributor Tokens -
-- Tokens distributed to early contributors of the protocol are unlocked and not on a vesting schedule. -
-- The MNGO token in its inception will serve 3 primary purposes. -
-- The Mango protocol relies on lenders to provide capital - for the others to use for trading and borrowing. The - capital in the Insurance Fund will be used to compensate - lenders in the unlikely event they incur losses. -
+- MNGO tokens represent a direct stake in the Mango DAO. - The future direction of the Mango Protocol will be - decided by voting on proposals using MNGO tokens as the - voting mechanism. -
+- Bootstrapping liquidity is important in a new trading - system. Incentivizing market makers to provide it on our - order books with MNGO tokens will benefit the protocol - and its participants. -
++ Mango DAO +
++ 90% of MNGO tokens will be locked in a smart contract, + only accessible via DAO governance votes. +
- Mango DAO -
-- 90% of MNGO tokens will be locked in a smart contract, - only accessible via DAO governance votes. -
-- Liquidity incentives -
-- 10% will be used to incentivize market makers and - liquidity providers to be active in the system. -
-- Insurance Fund -
-- 5% of MNGO tokens will be used to capitalize the - Insurance Fund that will protect lenders in the Mango - Protocol. -
-- Contributor tokens -
-- 5% will be allocated to a distributed group of early - contributors, who worked tirelessly on this project - over the last year. These tokens are unlocked. -
-+ Insurance Fund +
++ 5% of MNGO tokens will be used to capitalize the + Insurance Fund that will protect lenders in the Mango + Protocol. +
++ Contributor tokens +
++ 5% will be allocated to a distributed group of early + contributors, who worked tirelessly on this project over + the last year. These tokens are unlocked. +
- {startIdo?.format('dddd, MMMM Do YYYY, h:mm:ss a')} + {startIdo + ?.tz(moment.tz.guess()) + ?.format('dddd, MMMM Do YYYY, h:mm:ss A z')}
Deposits are already closed
+The sale period has ended
> )} @@ -199,18 +204,22 @@ const ContributionModal = () => { {submitted && !submitting && ( <> -Thanks for contributing...
+Unlock to edit your contribution amount
> )} {editContribution && !submitting && ( <> -{endDeposits?.isBefore() && endIdo?.isAfter() - ? 'You may reduce your contribution during this phase. Reducing cannot be reversed.' - : 'Increase or reduce your contribution.'} + ? 'You can only reduce your contribution during the grace period. Reducing cannot be reversed.' + : 'Increase or reduce your contribution'}
> )} @@ -250,7 +259,7 @@ const ContributionModal = () => { className="font-display text-fgd-3 ml-1" title="Wallet USDC" > - {walletAmount.toFixed(2)} + {usdFormat.format(walletAmount)} ) ) : ( @@ -333,9 +342,11 @@ const ContributionModal = () => {{message}
} else { return ( -Deposits end in:
+Sale Period Ends
Grace Period ends in:
+Grace Period Ends
Total USDC Deposited:
+USDC Contributed
Estimated Token Price:
+Estimated Token Price
MNGO in vault:
+MNGO For Sale
- This is the first moment for non-developers to participate in - helping build the Mango protocol by supporting the inception of the - protocol's Insurance Fund. -
-- Mango is a decentralized autonomous organization. Its - purpose is to contribute maximum value for the defi - ecosystem and its developer community to create - commercially viable decentralized trading and lending - products for traders. -
- -- Mango protocol is powered by lenders providing their - capital for the community to use for trading and borrowing - purposes. The insurance fund is the last line of defense - for protecting our mango lenders. -
-- We believe that substantial rewards to a strong developer - community and liquidity incentives are the essential - drivers for growth and therefore the foundation of the - Mango DAO. -
-- Mango Governance tokens ($MNGO) will serve as the - incentive for those who can prove their work is useful to - the DAO. -
- - -- - $MNGO - {' '} - were only provided to contributors who helped build the - protocol. -
-+ The journey has just begun, here's what happens next +
- We take the view that token sales should be simple, transparent and - minimize randomness and luck in the distribution. -
-- Users deposit USDC into a vault during the event period to - set their contribution amount. -
-- The event will span over a 2 day period split into two - sections,{' '} - - Unrestricted - {' '} - and{' '} - Restricted. -
-- - Unrestricted - -
-
- During the unrestricted period users may deposit or
- withdraw their USDC from the vault. During the
- unrestricted period price can fluctuate.
+
+ Mango is the first DAO on Solana to use on-chain
+ governance, this is a big step towrds complete
+ decentralization. It means that founding members do
+ not control the DAO, the DAO is actually controlled by
+ all of us; the MNGO holders.
+
-
- Restricted
-
-
- After 24 hours deposits will be restricted and only
- withdrawals allowed. During the restricted period
- price can only go down.
+
+ We all want MNGO to be traded on Mango V3 at launch.
+ This means MNGO needs liquidity on-par with other top
+ traded tokens on serum. There are no backroom deals,
+ no one officially to make markets for us.
+
+ With power comes great responsibility
+
+
+
+ As MNGO holders our highest responsibility is to
+ command and protect the DAO and it's value.
+ Holders have the responsibility to make the rules and
+ decide on the protocols future. Together we will build
+ the constitution, together we will push for progress,
+ together we will grow the protocol.{' '}
+ MNGO in the pool?
+
+
+
+ We will be creating a Raydium pool with incentives to
+ help provide initial liquidity but we also need the
+ community to add liquidity to the pool and orderbooks.
- Simple mechanisms are easier to build, explain, understand - and are harder to exploit. A transparent mechanism - increases participation because buyers are more confident - there are no hidden tricks that could harm them. -
-- Elements of luck engineered into the mechanism distribute - value randomly to those who are most willing to do the - arbitrary, worthless tasks to get the free value. -
- {/*- We believe all "excess" value should be captured - by token holders in the DAO. -
*/} ++ Provide liquidity on the upcoming perp markets, the + DAO will vote on liquidity incentives for perp + markets, +
++ Starts off with the feeling (heres what we've + done to keep mango decentralized) ends with the CTA of + (heres how you can help, heres what we need) +
++ rough tech roadmap with link to trello +
++ if you can help us build it, send us proposals the DAO + will vote on grants +
+- At event conclusion $MNGO gets distributed in propotion to - a users USDC contribution.{' '} -
+ ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed + do eiusmod tempor incididunt ut labore et dolore magna + aliqua. Ut enim ad minim veniam, quis nostrud exercitation + ullamco laboris nisi ut aliquip ex ea commodo consequat.{' '} +
+When you're ready, deposit your USDC
+When you're ready, deposit your USDC.
> )} @@ -191,13 +191,13 @@ const ContributionModal = () => { toLateToDeposit && ( <>The sale period has ended
+The sale period has ended.
> )} {!submitted && submitting && ( <> -Almost there...
> )} @@ -205,21 +205,21 @@ const ContributionModal = () => { {submitted && !submitting && ( <>Unlock to edit your contribution amount
+Unlock to edit your contribution amount.
> )} {editContribution && !submitting && ( <>{endDeposits?.isBefore() && endIdo?.isAfter() ? 'You can only reduce your contribution during the grace period. Reducing cannot be reversed.' - : 'Increase or reduce your contribution'} + : 'Increase or reduce your contribution.'}
> )} diff --git a/components/FooterSection.tsx b/components/FooterSection.tsx index 5e3b045..c4dcaba 100644 --- a/components/FooterSection.tsx +++ b/components/FooterSection.tsx @@ -136,7 +136,7 @@ const FooterSection = () => { > Perpetual Futures {' '} -+
Thank you for your contributions, soon you will be able to help decide the future of Mango.
diff --git a/components/MangoPill.tsx b/components/MangoPill.tsx index 530aa3d..7abe6a3 100644 --- a/components/MangoPill.tsx +++ b/components/MangoPill.tsx @@ -1,11 +1,11 @@ -const MangoPill = () => { +const MangoPill = (props: any) => { return (- Soon + {props.children}
Cross-collateralized decentralized leveraged @@ -242,6 +242,37 @@ const NavBarBeta = () => {
+ Mango Market Caps +
++ The premier fashion choice for Mango lovers, + traders, and lenders. +
+Mango DAO
- - {/*Welcome to the DAO, let's build together.
*/} +Welcome to the DAO, let's build together.
> ) : null} {submitting ? ( <> -Almost there...
> ) : null} diff --git a/hooks/usePool.tsx b/hooks/usePool.tsx index c9206d4..0f4e38d 100644 --- a/hooks/usePool.tsx +++ b/hooks/usePool.tsx @@ -4,19 +4,19 @@ import useWalletStore from '../stores/useWalletStore' export default function usePool() { const pool = useWalletStore((s) => s.pool) - /* const startIdo = pool ? moment.unix(pool.startIdoTs.toNumber()) : undefined const endIdo = pool ? moment.unix(pool.endIdoTs.toNumber()) : undefined const endDeposits = pool ? moment.unix(pool.endDepositsTs.toNumber()) : undefined - */ + /* // override for announcement const unixTs = 1628553600 const startIdo = moment.unix(unixTs) const endDeposits = moment.unix(unixTs).add(1, 'days') const endIdo = moment.unix(unixTs).add(2, 'days') + */ return { pool, startIdo, endIdo, endDeposits } } diff --git a/idls/ido_pool.json b/idls/ido_pool.json index 6a4312a..3ad9ad2 100644 --- a/idls/ido_pool.json +++ b/idls/ido_pool.json @@ -397,6 +397,6 @@ } ], "metadata": { - "address": "CRU6hX2GgtdabESgkoMswMrUdRFxHhCVYmS292VN1Nnn" + "address": "6QXNNAPkPsWjd1j3qQJTvRFgSNPARMhF2tE8g1WeGyrM" } } diff --git a/public/img/redeem1.png b/public/img/redeem1.png new file mode 100644 index 0000000000000000000000000000000000000000..8e648af00a3f1e1fb46ea13bf32d115c48349051 GIT binary patch literal 258388 zcmeEtg;$$F({G)&Kxv^s(UxMxDGo&n6evz1xE0qB+@+-jid)ejEe^pYxVyWA5L|-< z2(CA^_xtX-=l%!pa}I}OpUv*lvm#7j%MI}XDp;G{w_^7V!hIn64J*Q6(|2D(=W!5a&F zh6&$1Tc~pXdLNxZ$OMm?Js%PuX>e~%x8!xREQPOotyjmTP^k-9iE~>APwG2gk@BPR z3CErMlrx3Rt@@K#hBAUdvUh&UN;3h7|2Y19EZy_8)mG)=omR3M@iaPiXLV8V6e2QogI;Cu&&8*%f)6DFXy?81$-cA@g3DSTwQEVq@ z9dF(9st1mv$0Gz`V8^4-q@Gal9U=1P4%Wh^)X6x%&aazZ5`VRt)VFeRF;PvQo3bW3 zI(_ba$;77706k|OEsZ5HtRPWig*3$7o5N+%?_ro@a%+gw-vClv3~fRMSKO|?7$&@F zXF&;jR~1)YAHgYZW?AGBuzOyzUCR*{7Zjz2{3ucD0L@5x{yaVFnywJCKPxz5z?&)z zV?k*-xd$-g_s@#=HTWsPVl!%E8jdf3;i?x4=VP<`X&swoB#=a1-e`GvRH=L}Ukaas zP6^{-c9~T6sY=S0an!MY50sxvzbsPWcS6F)CnNg&vI!x3xp8&I?Q?ZVi8t2h`VkPeR1`3re`gwH1n3=D7qjXIpwHp0~tS$OM=)RW!1UnB{%f8ytwn2kA zc+*|}`DR}4fMwNWKF8SSBl4RHtztNi2PH>4*lf%Rv`eGN<6iW5WQ44q{;S#wm}G^& z?Tj2Cl<4r8jUBC3TAGvEX~$; 08>oV$Kjh`3O{Sh*EIaH>0jgI4=(|JHtzYZ;t0vP3H61f HVcpvzNT2w^?0EjlS;uIMca7ySu7@aOJEyng zkx-w8GN_BVfOXtq{89Z`%enM;J;xv)rAL%}dM@a~fqZKrmx4ZqR=&yWzFK%FulGlt zPb%dRkZb|HOUpgbW!I!6#W@z^m8-#iP3!G+ g);4SSmtY6 )H$w!8@@l!Fq9;86Fj&fzuHwYGl z_yOb6mg96e=f)vp+c~bj@?4jV&e4Vl-0qO*rfF9zo)8Toi4Fl*iz4(LYxS13TRT%x ztkY&(cj=0*{b|fv4|sN8OtU&K+Xmhn=Om-8?Y{VBz!Keu`c6n;W&AmiE+IZr)9ken zc0I(f@l1TEs=^&`DY`}=&@7|pvfGtIPR872e7nr4(rlTV*E()?C+Q(#=9P>zWzJsR zowBwg=j3%ujCT4IaEOX={!X%Dwyk+hT{$=Vx)fF7LJB>6W6FrI$ObfJ)rKT4xF`+c znz@ABen?T{Hk^y M9omnGgARPm-FFR;W&)U{n_%H0q`cd)2rep6UR5?)v4} zyY$-N=QM71`yg(RNaA#aHSdPk7&{$L&*2$hI*Pb%H|oJ83uX(n=wdo}IsN%r5DuPS zyGech_6HNWQY}*`+{{}+M?7wPJL>M&lIhh+LlR;+^=jOivq;b~;}HdtzJ^XuL_qDk zR4REy1w (CqcPSBCC>nPcU7&7 zjFidAVtloN(%nfOC}0m;*t)%AOJ9hpV&$VykyX0OTL_IK&IaJ*%{kg;H*6faFM1Ab z3SOt9svR9FZ;WOfBd$+DbG*RFLvL=J!hW9VDsy7}QVI8SfkYe7X%MU1>7YLChNA{Z z=}|{$p70cTyR@X5#2l0H=Wk5#J7~Hm>wx14KhpJe5gZo%VIJhO{QzV(sjS{{bU;ev zuqXfPSnVa7HQ8yNl|I~h+?awg&-ujtF=KUF-xNzr#VMXjqL#hiNn6D?HrNuM3mzxQ z9nJRYf%sM% 9jYulwk zw=h=~q;D>K-3-XTCqMWGRPX5Qzf=((PHaM%voxwlhyB*RL!%~oAl#qb;De(omvf!w zR>=9MGyW_7>Z|p=*QebBx83V}Ki*2Mk$zfUMP`vyBB2T^qpUmK|2R6{56Szj(etp< zPORT1=T>^7`RuRb=EW>-5W(n0)kC;iyQsF4Cl3WQ_eFkMOT~QoQ-4c=XAVq+dph)q zegKw2VrQ06qQOao9E9_Go(iGIIuL1D{c(o39>HG4w1VC2cKK| hOq7>+W}Ls{jW)M6+mx6K-i6^%(lTsC|9XRv5u-peH8ve`Fn`{%f$J?*&oB9FS# zY?(FEdc7ZiZO80?3_s>uu+C_{Oe>l3l}H8QEaYuo%yW4r$voS-E2>BPq{^*%NW&7{ z7=d0^JgWrCV%y?(|H#g1nK>G!SFsdHwx2Yf FD8n(o2WV$dyp^|toPP&&h*&w9mG2C7Lm7p}ub?hShrzLBWL zy^gcbnV&N{^752(X#yTSG8ywOw_`kZVGJV|biK%^+}yFjR={o#+M4#tP$OBQr&o;U zmMqb*fGzzftchUFKpW=X5qN$A8$3WIX^+7a-z$}7`KX@SpNFU1r&GGmII}3jds(6+ z#GG!#eIgXCL6i92z;rvh{CE^e&1nj+v)ZRDzn~%f?Ve+|Vd-BO+TpC(I~@&<#r0V~ zHs2Ux;{W9NwD@$-I%E8BA(vRa{B$_#{$$II{@`0sKG)HkV5UMn#~-m8Q89LVMyj`k zMT8H5PW^9qh3YowZYG*f`0Z&o9$7Vj*)nnTv$$3hX4}G1-uVKb#Z=tY!e_&fMziRp z?7U9t3M!FcH!vg&VwS?6#qn+~BsTUzWfbbBDiCdytE%YKa5d>wnRKOlNT2?ke$r=0 z_PBd^!H_FOd!_(@Y_$`)prCc18S0R!Oh6MZO?%V30%{@$YW?ldTp+5tKj8=V+v_lj zsG^XR$kKWrc4kgOXELXD_I^u0us&|>;t!TWJy}4-sZCWOX<;=kX1mx9kyczVUC-4Z z?^Nr33EiBS#PUWq=4)LY;6ZKp^gn%lN1aD1uu;6Wa8q~1(5!7Yo6Ex2d42xJ)&(qu zU{*4G!8CC}oI-$u`OR~fJ|upx4rX4iPPk8dT@r9ih!0upsC}JErDHTj7w;fj0!gDB z1eO8u@=^~dEMbI2&j;g{Q$>6#L&D-Pr}S-|;!gW_L>|IPnGnWVVRNE~Q*)1aE30Zx zSnpt4^g$*6%wSW`k#nmY7{rN##utL*P^R{mZojYwKektGEqjII(8^e0Nvy=1`0A%S zELW{yJa5W!vt^#;NlSHqryDlo`h|Z` 9NMv8U1o9 zLC!W=pSW0_JiI@cX#&{-wN2g>AgB%G8PFm1bI^;ntU_wocyHIqt&flj%GOU=B4j%U zHLt~*qg+Z8*e4w+30f5jzN?g<=Zf1;QiLl^SCrRN)8{&}puOympHv@z7ODtJu&n4i zn0B!1LYRBzzjB$~%i-kUa2I?{B059MNcqWfR-BJ iy9l+Fa zKK3MHaudjuH&f^j+@pH2@F7kA=L=(p)^>+9TDuE{vfwH!la-U{wPXWm#r0;&7iyo& zlLn)>oblXU3tP{=%=V#}xJGtNN>zE)o9D$iy*YKV$-27aWL`A|wPs6SgP`x?6dp{I zRXon;d1KMa2hy7wI9~D()T3W;6S2t!+%9_u&wL%SOEB3vsoDx%?)QYVulO_?sSHy1 z)S8*UFQ!Rmw#E*L9rLz6e7BUF8U^xM5{9{UJmhykBOgpUIjv MXzZJlzU$cUzVC38<0>^s>EG>wD*@cD~xp*(0;CSy$zaW z3l}~pUlOqSxp(y;Zns90j8re(R57iF^+`>#{oVVRcy3S`4{j(Lq|EG&LNr{??eENU zRJ^&aC={!(z8s X{HBhlN zcI~;}w5zU~atyabsQB`iXoTVY%JTX|bW~E=pc;nq@(i{VtSeP!oQd1snt`Z+#wKaM zl=Jancd9^8s|@3oBt)%d^H>0ZiT)STyD7nPRkim-7UDEiWx z$rymu)>YMUj=H%XRt2?}&g@sCdckx14yBe(AcPYTSR-qZcXgB*bkVzp`mTTdd{Rac zR6E8!W3oR4yuLE}#j>v3$J
+Nnu&=^b8jOm>(294^{< g$*gB#VTyBk zF8~Z&s $wm5~%aIc=N{DI#KykSgsWZ*@myM@b7bFt?yUUr}QquhMBC5 z^W*-{d`yE% T7gp67BUNOQS1wZ&U`?`z8Kou;e{A2M`i z7RI~lB!TY7e)X3Gj0QnyAgxb0Q7)(UNJ1MeGcyJIEX(v2)rRqj55RO{Y!imK bf<01BlX>IZ4>` zub(i)FqN)th*lqpJpaDu3Ai-PfqM3^^x|Ol5xq}dc19}!KqIbk9Y8K;Y1&U qf(N<5_m{kLJec3dA**Q)`v=EwxkuV9a5WT6@kR~ zy7Ij+N)n`yzJIK4h8oQ9T{u6CK79HBmSy18fC>ro@V;38*$CSvzwD4-OBG4)JXEfj zYT*g}m817V0#Roau&kUrz8LpLr?*Dpvf_HF|5o|32CzBfp10A|s-Lb@CXc^1hYsYf z&G@wfc}j8+-O4-U6F5$ Z@vP zKvi5qaWa6BdJUw@5-#}qh0ENzW3htbqPE@W-2_@(LfaB!S{?f=k@RjLSheLzOMe8N z0a*+XzkxMVx%=6(SBJt5)(5B6gu0-9yyV(+hif6+XgaP_@d&*F$jssk7S^7LMzq|U zEoCI_tx8vI#%~bg8j~Cl80RR7EygkYnR})BbAderW12jzP^8bELo5%R-T4ISHfw6s zZie#O-IZdk{Wu=&YoVQw$p3vkL<=w(6a|n(paEYNRQy$JJzL$?oQOuuFDhPWV4J=? zMAC^5Z6Z4zgKNU>RYv|0#jj|CgiktpLUWI)lfTc}Xq>9RV{07U8Z93kDw+X2nV&@i zn3Ei{l|O?+5>3|}j~frIFo$Rrt q$HAp9wG#2MD)G~ak|Z`DSe&+&iMfDVWAlv z;fzdbj)5R8 |+Y;rOXlDXADc~?U9fJ=DN&*!x4*FGPP{Cz@YMu zy_r0-^aoED87t?7^| <>f}q4Z&Iiu$8T4PrH67eGDx4)DY=9VQgk$# 2~u(yWr3go(=S#qOC56l593`1KD@)c1L&^;g_2$ z^fQyYlQ KEAo-I$^ik4AQb~Rd<@$mrN-J{ zb?W8m0B4(QW$;F*zpnU~XLONI)O}KEST||of6^dj^7IWw`1yTFQjn~R4Ya`Y^EOsI zX?_It-jt197g6dRJ8i=_n Lg4@Xu9uzsXq_nso%-QqximA1XD%~Vgf7AeSIJ1 z+EhxM4twp&EZMNUU3tYMB_mgoY%Vh+A#M*mg)9TPDr6QZh>k# rQCiAEqBd2wdvX+u{41RDt=Gt8 zJd_V?96s@+MqV^}Nt_72XYlKunU?a<38JKx EN*w^u!{`q?2)J5*F_I-bFA;x-mU-l*XM-wp% z$TJctFj$YepfudZc)S{QvljAXd8JtiR8whNc qxX24;cNaAB?DVF>`rN>fQgI->LB-{7N(ch~e0>dGq536(%3I z9opm};Wv68(Tm-u6Jg(^|B&PJ9cibB4Il3 HJP&8-@3B5fQi=|ABwG3B_)L(W1Ze;V9ulS% cryQi34*`J=R8Jm1kYKM}d$;6<>)=X=+P_T9TBKpNfTbuIT`>xrOLFy;OCB zDY+rAr}g9~&!b?xE|E*P*ZxVglp-kr65kE6Cg*eWnHcr9aYBiH%$ofoEykxvch8m{ z*)YxgRU5E9;%}2-7dJ~wg1KR|(Hk9r#kR}orT+n|`C29QS{sKtA=IzYXK}YDG}bUr zDy* !LwOf&Ffq*=Vuy*6;7n(}g|U)9H*>ZjZchmG<{X+aH`%kqdLYY(-v7xqj$C z69hXs3)kqg*4d_8^LqfN-Un%`Ax}w>)w<}qg8eCi0Aur4MOsrK$K~;TE>l^p3uJ}x ztWLl~h=!$Nx_bj45k@t(h>XouD*Af7cW!Ko-zeSpPJLEo+}L@nqhvk`p$NWfwbzED z)_PWjG!gYu;36rLZ jc=}H~$2MJ#ir?=SR5e Tq>P-{jY;;3ew2v@Uzhx zn_OI@?h3~nlaHZyA+cH}+L*g87d=H6GB&7%1+(*%J>d!_9SVK*%>`X-*dp4_Pn*1M zBciurdbw#I0$6tj*!#5(s~yN<&L+J98YBT9>GL>nH*@fVSt}fARY;<8cj@bu24yna zORcFzIQFqu zM>FI3y5*$6<-nPMuMGt6FvrUz-#0NSKHl*8k>MHi^)ZgA;Pd`^(UC5OT zpgN6WJHN-YKQ n1S83xU0f&Rz?qGt20oUX!9WQ_&0`-LYf-{yGODB1ea>F5vhn4L#aoo6+K9KFVq z{_5Q@MIY%>Kk8u=U2^P3$yA!rjMX!R;*xj$@3#z_QM^J#I#b*g1&(s2T3H3+GJaxE zLE$5)PvbWI^+lc)TZ&d*_|7r8_@t?<*K3W6 zAbC kPXa ztI2%U=xn8tXc-9~&xz1TS6fTW?F$YKM-whoPl=s+SXiD!G9~Gr@pUni5v@KW65=3H z;USavWI0 l=w2;GPs6 @M;au z*_P_8C39loP7{$lJyeBN2+<@i00L~(4y0%aYhZe>>n?Fzcn6mcG;B7$Q@796uf%F! z{U4sb!ma7{jn@K|4(SpRkS-b0f^