From eb798a8da311c6a6736f2cc3eef6c816666327fa Mon Sep 17 00:00:00 2001 From: Vivek Arte Date: Tue, 22 Apr 2025 15:23:06 +0530 Subject: [PATCH 1/5] fixing some references to asset_desc that were not updated --- zips/zip-0227.rst | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/zips/zip-0227.rst b/zips/zip-0227.rst index 0947971ba..b3109f0dd 100644 --- a/zips/zip-0227.rst +++ b/zips/zip-0227.rst @@ -213,7 +213,7 @@ The relations between the Asset Identifier, Asset Digest, and Asset Base are sho Diagram relating the Asset Identifier, Asset Digest, and Asset Base in the OrchardZSA Protocol -**Note:** To keep notations light and concise, we may omit $\mathsf{AssetId}$ (resp. $\mathsf{Protocol}$) in the subscript (resp. superscript) when the Asset Identifier (resp. Protocol) is clear from the context. +**Note:** To keep notations light and concise, we may omit $\mathsf{AssetId}$ in the subscript when the Asset Identifier is clear from the context. ZIP 227 Asset Identifiers ------------------------- @@ -226,15 +226,15 @@ well-formed UTF-8 code unit sequence according to Unicode 15.0.0 or later. Define -.. math:: \mathsf{AssetDescHash} := \textsf{BLAKE2b-256}(\texttt{“ZSA-AssetDescCRH”},\; \mathsf{asset\_desc}), +.. math:: \mathsf{assetDescHash} := \textsf{BLAKE2b-256}(\texttt{“ZSA-AssetDescCRH”},\; \mathsf{asset\_desc}), We define Asset Identifiers for assets issued under this ZIP as -.. math:: \mathsf{AssetId} := (\mathsf{ik}, \mathsf{AssetDescHash}) +.. math:: \mathsf{AssetId} := (\mathsf{ik}, \mathsf{assetDescHash}) and define their canonical encoding as -.. math:: \mathsf{EncodeAssetId}(\mathsf{AssetId}) = \mathsf{EncodeAssetId}((\mathsf{ik}, \mathsf{AssetDescHash})) := \mathtt{0x00} || \mathsf{ik} || \mathsf{AssetDescHash} +.. math:: \mathsf{EncodeAssetId}(\mathsf{AssetId}) = \mathsf{EncodeAssetId}((\mathsf{ik}, \mathsf{assetDescHash})) := \mathtt{0x00} || \mathsf{ik} || \mathsf{assetDescHash} Note that the initial $\mathtt{0x00}$ byte is a version byte, enabling future ZIPs to specify alternative issuance protocols and Asset Identifiers. @@ -287,8 +287,7 @@ Issuance Action An issuance action, ``IssueAction``, is the instance of issuing a specific Custom Asset, and contains the following fields: -- ``assetDescSize``: the size of the Asset description, a non-zero number that is at most $512$. -- ``asset_desc``: the Asset description, a byte string of up to 512 bytes as defined in the `Specification: Asset Identifier, Asset Digest, and Asset Base`_ section. +- ``assetDescHash``: the hash of the Asset description, as defined in the `ZIP 227 Asset Identifiers`_ section. - ``vNotes``: an array of Issue Notes containing the unencrypted output notes to the recipients of the Asset. - ``flagsIssuance``: a byte that stores the $\mathsf{finalize}$ boolean that defines whether the issuance of that specific Custom Asset is finalized or not. @@ -337,8 +336,8 @@ The issuer program performs the following operations: For all actions ``IssueAction``: - encode $\mathsf{asset\_desc}$ as a UTF-8 byte string. -- compute $\mathsf{AssetDescHash}$ -- compute $\mathsf{AssetDigest}$ from the issuance validating key $\mathsf{ik}$ and $\mathsf{AssetDescHash}$ as decribed in the `Specification: Asset Identifier, Asset Digest, and Asset Base`_ section. +- compute $\mathsf{assetDescHash}$ +- compute $\mathsf{AssetDigest}$ from the issuance validating key $\mathsf{ik}$ and $\mathsf{assetDescHash}$ as decribed in the `Specification: Asset Identifier, Asset Digest, and Asset Base`_ section. - compute $\mathsf{AssetBase}$ from $\mathsf{AssetDigest}$ as decribed in the `Specification: Asset Identifier, Asset Digest, and Asset Base`_ section. - set the $\mathsf{finalize}$ boolean as desired (if more issuance actions are to be created for this $\mathsf{AssetBase}$, set $\mathsf{finalize} = 0$, otherwise set $\mathsf{finalize} = 1$). - for each recipient $i$: @@ -541,7 +540,7 @@ A new issuance transaction digest algorithm is defined that constructs the subtr issuance_digest ├── issue_actions_digest │   ├── issue_notes_digest - │   ├── assetDescription + │   ├── assetDescHash │   └── flagsIssuance └── issuanceValidatingKey @@ -567,7 +566,7 @@ T.5a: issue_actions_digest A BLAKE2b-256 hash of Issue Action information for all Issuance Actions belonging to the transaction. For each Action, the following elements are included in the hash:: T.5a.i : notes_digest (32-byte hash output) - T.5a.ii : assetDescription (field encoding bytes) + T.5a.ii : assetDescHash (32-byte hash output) T.5a.iii: flagsIssuance (1 byte) The personalization field of this hash is set to:: From 10af615f69784af31c29026c0e0018e06ce55cd5 Mon Sep 17 00:00:00 2001 From: Vivek Arte Date: Tue, 22 Apr 2025 16:44:52 +0530 Subject: [PATCH 2/5] adding RST and SVG files for rearrangement changes --- ...-asset-identifier-relation-orchard-zsa.svg | 424 ++++++++++++++++++ zips/zip-0227.rst | 67 +-- 2 files changed, 466 insertions(+), 25 deletions(-) create mode 100644 zips/zip-0227-asset-identifier-relation-orchard-zsa.svg diff --git a/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg b/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg new file mode 100644 index 000000000..5abe40155 --- /dev/null +++ b/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg @@ -0,0 +1,424 @@ + + + +image/svg+xmlassetDescHashAssetDigestAssetIdasset_descAssetBaseAssetIdikAssetId diff --git a/zips/zip-0227.rst b/zips/zip-0227.rst index b3109f0dd..36315685a 100644 --- a/zips/zip-0227.rst +++ b/zips/zip-0227.rst @@ -185,38 +185,28 @@ where the $\mathsf{Verify}$ algorithm is defined in BIP 340 [#bip-0340]_. Specification: Asset Identifier, Asset Digest, and Asset Base ============================================================= -Every Asset has a globally-unique Asset Identifier, denoted $\mathsf{AssetId}$. A given -Asset Identifier is used across all Zcash protocols that support ZSAs -- that is, the -OrchardZSA protocol and potentially future Zcash shielded protocols. - -From the Asset Identifier, we derive an Asset Digest - -.. math:: \mathsf{AssetDigest_{AssetId}} := \textsf{BLAKE2b-512}(\texttt{“ZSA-Asset-Digest”},\; \mathsf{EncodeAssetId}(\mathsf{AssetId})), - -where $\mathsf{EncodeAssetId}(\mathsf{AssetId})$ is a canonical encoding scheme for the -Asset Identifier. - -From the Asset Digest, we derive a specific Asset Base that represents the Custom Asset -within each shielded protocol: - -.. math:: \mathsf{AssetBase_{AssetId}} := \mathsf{ZSAValueBase}(\mathsf{AssetDigest_{AssetId}}) - -This Asset Base is included in shielded notes within the shielded protocol. - -The relations between the Asset Identifier, Asset Digest, and Asset Base are shown in the following diagram: +The definition of the Asset Identifier, and that of the Asset Digest and Asset Base for a given Asset Identifier, will be described in this section. +For context, the relations between the Asset Identifier, Asset Digest, and Asset Base are shown in the following diagram: .. figure:: ../rendered/assets/images/zip-0227-asset-identifier-relation.png :width: 600px :align: center :figclass: align-center - Diagram relating the Asset Identifier, Asset Digest, and Asset Base in the OrchardZSA Protocol + Diagram relating the Asset Identifier, Asset Digest, and Asset Base. **Note:** To keep notations light and concise, we may omit $\mathsf{AssetId}$ in the subscript when the Asset Identifier is clear from the context. +Asset Identifiers +----------------- + +Every Asset has a globally-unique Asset Identifier, denoted $\mathsf{AssetId}$. A given +Asset Identifier is used across all Zcash protocols that support ZSAs -- that is, the +OrchardZSA protocol and potentially future Zcash shielded protocols. + ZIP 227 Asset Identifiers -------------------------- +````````````````````````` Assets issued using the protocol specified in this ZIP are scoped to the $\mathsf{ik}$ that issued them. Within that scope, Asset Identifier uniqueness is obtained by way of an @@ -228,7 +218,7 @@ Define .. math:: \mathsf{assetDescHash} := \textsf{BLAKE2b-256}(\texttt{“ZSA-AssetDescCRH”},\; \mathsf{asset\_desc}), -We define Asset Identifiers for assets issued under this ZIP as +We define Asset Identifiers for Assets issued under this ZIP as .. math:: \mathsf{AssetId} := (\mathsf{ik}, \mathsf{assetDescHash}) @@ -244,15 +234,42 @@ Wallets MUST NOT display just the $\mathsf{asset\_desc}$ string to their users a - Wallets could allow clients to provide an additional configuration file that stores a one-to-one mapping of names to Asset Identifiers via a petname system. This allows clients to rename the Assets in a way they find useful. Default versions of this file with well-known Assets listed can be made available online as a starting point for clients. - The Asset Digest could be used as a more compact bytestring to uniquely determine an Asset, and wallets could support clients scanning QR codes to load Asset information into their wallets. -OrchardZSA Custom Assets ------------------------- +Asset Digests +------------- + +From the Asset Identifier, we derive an Asset Digest + +.. math:: \mathsf{AssetDigest_{AssetId}} := \textsf{BLAKE2b-512}(\texttt{“ZSA-Asset-Digest”},\; \mathsf{EncodeAssetId}(\mathsf{AssetId})), + +where $\mathsf{EncodeAssetId}(\mathsf{AssetId})$ is the canonical encoding scheme for the +Asset Identifier. + +Asset Bases +----------- + +From the Asset Digest, we derive a specific Asset Base that represents the Custom Asset +within each shielded protocol: + +.. math:: \mathsf{AssetBase_{AssetId}} := \mathsf{ZSAValueBase}(\mathsf{AssetDigest_{AssetId}}) + +This Asset Base is included in shielded notes within the shielded protocol. + +OrchardZSA Asset Bases +`````````````````````` In the case of the OrchardZSA protocol, we define -.. math:: \mathsf{ZSAValueBase}(\mathsf{AssetDigest_{AssetId}}) := \mathsf{GroupHash}^\mathbb{P}(\texttt{"z.cash:OrchardZSA"}, \mathsf{AssetDigest_{AssetId}}) +.. math:: \mathsf{ZSAValueBase}(\mathsf{AssetDigest}) := \mathsf{GroupHash}^\mathbb{P}(\texttt{"z.cash:OrchardZSA"}, \mathsf{AssetDigest}) where $\mathsf{GroupHash}^\mathbb{P}$ is defined as in [#protocol-concretegrouphashpallasandvesta]_. +.. figure:: ../rendered/assets/images/zip-0227-asset-identifier-relation-orchard-zsa.png + :width: 800px + :align: center + :figclass: align-center + + Diagram relating the Issuance validating key, asset description, asset description hash, Asset Identifier, Asset Digest, and Asset Base for the OrchardZSA Protocol. + Specification: Issue Note, Issuance Action, Issuance Bundle and Issuance Protocol ================================================================================= From a6790b31e816ec63920f63df017191b943cb8492 Mon Sep 17 00:00:00 2001 From: Vivek Arte Date: Mon, 5 May 2025 14:01:10 +0530 Subject: [PATCH 3/5] adding sizes to the diagram in SVG --- ...-asset-identifier-relation-orchard-zsa.svg | 147 ++++++++++++------ 1 file changed, 97 insertions(+), 50 deletions(-) diff --git a/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg b/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg index 5abe40155..200c2be19 100644 --- a/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg +++ b/zips/zip-0227-asset-identifier-relation-orchard-zsa.svg @@ -25,13 +25,13 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="0.84532725" - inkscape:cx="427.05355" - inkscape:cy="242.50963" + inkscape:zoom="0.5" + inkscape:cx="631" + inkscape:cy="218" inkscape:document-units="px" - inkscape:current-layer="g481-3" + inkscape:current-layer="layer1" showgrid="false" - inkscape:window-width="1276" + inkscape:window-width="1068" inkscape:window-height="916" inkscape:window-x="222" inkscape:window-y="38" @@ -218,7 +218,7 @@ inkscape:label="Layer 1" transform="translate(256.28448,-836.58665)">assetDescHashAssetDigestAssetIdAssetIdAssetBaseAssetIdAssetIdik[32 bytes] + style="fill:none;stroke:#000000;stroke-width:1.39878px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend-3-5)" />[32 bytes][64 bytes][32 bytes][65 bytes] From e060a234966aaed35699e9c677d93eedc5c68d70 Mon Sep 17 00:00:00 2001 From: Vivek Arte Date: Mon, 5 May 2025 14:02:36 +0530 Subject: [PATCH 4/5] adding PNG file --- ...7-asset-identifier-relation-orchard-zsa.png | Bin 0 -> 105803 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 rendered/assets/images/zip-0227-asset-identifier-relation-orchard-zsa.png diff --git a/rendered/assets/images/zip-0227-asset-identifier-relation-orchard-zsa.png b/rendered/assets/images/zip-0227-asset-identifier-relation-orchard-zsa.png new file mode 100644 index 0000000000000000000000000000000000000000..aa12e678fbc9d45e38883b45fd1ba8c3e23db080 GIT binary patch literal 105803 zcmeFYgsARW@FAV`CB528bZN;gPJ zm(p?efUolX&iND0TrYS5``ORlEAMr$^}beDmAgQ2g#ZG9Tu_jg(SSe*ZbKl@K0F-o z8|A^StKc7eTX|gv2!y5p{RIs+aM%UEq;`~j;HYV1=IHXs-W1~E;=*lVZRr4iWNXT8 zV{e|gDs}||xe8H`xvk}zv^?hG7(07}+Ss8Zmmbv2e9=N`msY8Mn@sC7KEaC*4<6e6 z%6hQ$VWhe&R8KCyY&FDbGKcBvq?GKd56^6&+}p}mtGvBU;#w%kQ-XJvl4u*c=XG`L zH|4|($6W$oObU_A=l;{`&tRsL`k!AhTPQtv@#g#@W(Cto7Ws2efj?@o>i++W{@)_d zc={cRmQJ}Z=~E0V#GDje8i)FY57=6`-y@ZDGV?L+V<;g^-BK?@OAypBR0mecKe1|L zQ#=k0agyY|XigBmf zp~Pb>g%V>DL#rVpR?GW2)C*dc^+>5S8g=#){peq}wnu9C z4M?7LGvbz+pVU2k=*(q$iAT3FjwI`*eaC$5!Evne{voHmec+)%1BNTM>vfdS&G>W2w|GTKAc8YYPL^;jb-?6z{z|DOYa3 zDxNl5&u!R{#IT0GLQxIqN&pG`ch0t(O5xxqN-4azm)7Nsd5a8=JsLvuh4YOrt1dc0 zelPaRbEO7$=Lt)$_lCp7wwJG)dH=pMrD=pwfuYt+HNYCB`fszqShVUg?74hN5t=?D zh*x`Cm^+s3?_Y+^$I;VWY|o60j=Jb}w6dXpQgM0LUH6|7~MMceaf(-dmA%L1WTzjIULiqN{Z)MD1aeqhAG^H?lbCIcrt6?I*8HuE9`A zGm-xZg<0WyO!2AqLVZcMnOyuD`XM1S{ZlcPs&le|(&L8WJW+384I6dmmZPiJ`Pitn_=T!! zx_+SY$1C%eHa$X8Aa%~i!9%T?QGbt-p>lSLSAL`k5F3a)#BpUbg^gY)EHh+@l}6dL zE$gCr&l-uh`P}l_mRup^2p*hE9{kUe6%tKOeI}TIahaeN{}v&mZQmC*+fEiwc?En0 zIZf(P#~}`!6n7q;hGT`}pW>61RMVgS=MHyILkq`CX}n~Fj?eRGj`y}FE8fOmk*f;L z8q~4L$xV~(^i%cz<82Ho(9mF*SF$nJKM@RHJyoQsGTxN>q*IzAaDK6q7QbI&&$=_< z(FC!E2NXfEdDn&LJ)G5?Ek?K+WlVcIUFtql3W_O>H*k6o(o(<=S*ITSv(r-IvmNE} z9x)gTsi%9@U8y}DHC?XJ$pt$GM8NAO=lzrjLwhtdg^xdY3OrXU**52MIp(PmZ1_FF zDO9^e&k|EC=6*PI@9_8#_d$&Sjq#PQ!l+%%PsM-5&YT_4n}I1G$!xLZOF9fGgz`V_ zZ<+MIQ;-Jtk5Opmfay#e(yoOh>)Gnp+~*IKT#UfFsLhr2TQu&?8w#{Ig@uc6tgGTp zO;Sz&$T%Na>))L1+ary4qs0JfU&FCrLFBpr-QED9wP33_(KTv!WU=R8gURDZn!`-> zPm+;=MWSJ+o;S^TSY{}&*^BE%?^bq*z?Df#%oZz z8TNMz=2;~b5d`>AfXmnR=DItAPi^UbWx)N_x{X6q1vz!bov~wFR+uv}wsr}J6y@X|sdT>Y zIS0y_JUhEIqp#K^d)m|d1Z}sCji8nf8o~IH5t^?vf zy`{e_#~HXUkxGx%V;gy@Hk8Or>>SJWe5h(dGOazU-MR|0iNWjo3a;wC#VCv6N^U6# zJsx8Q3++F>X<(b4?)$3>_d`lb3QD{pIl?i9VCrR9mYqpz;)8Mz?Z#*RX1}SoP)^I= z%XMG0DrQ~j==mcNV zvyDHz#{k&T8XCri?Y!vwHb^-gt)Ur@~D z4w2>l7vBnvZxkZ%6K=$Z4KiH_;!0S=r;SX#6$>skMmelDcEL^@{DTIh7Yj4X% z#>{bqvpo7fZ`4ya@SE#FWu9^QPKqdO`AhBxodJxQ{wG847@K!S*-mVY@fex^$66nu zt%}_(3nLob%x?2FE(?&<{&G;^!uV1(6Lt$ad9TM7W?CmN0+~zVY)cBAz?C-3on!w~ zUSvk(sX2j7ptM7Em?7o4$&NAh=8M5qwBrXjUWV&R(2woV6<3FrSpeK3j6ZI^m#biE zXuyo>_y^vzf1JjpH)*7wyre`CK1U=90?NX__TJbm*!S`uuJ=STZGm6Dz3W66{)L^t zjQmJVi1(yO4e#yKNVmU7Vb&&!xeC%&WFKxCI5Dl~uAzcCy9;;KoPyWB+k(he36Dqk zTbod&tM~Tqe`tAlQHZIE`L7v9auA#*h1Nyls)zVlSy@09qpe+C&@{ubE3)PFh9#_t zQC*cmQ|YX1l==F@@PWBo6ZN-`A5}1yoKrH@nSPjk)ky{~On&9AVNJ?Bd|GN?b+^`@ z--fs<>8W-P;ao1?fbDW?1#GT~9Y2%PyV}`0_2e7cZ2uf5gWUX7HNyUpJ3E7KlW*LP z@x3H^%eaGPpxFIjj<(3=VT#*NjPKt$D3gq;IHKVD6K%T+4&=(Z^^Qv)A09U+-@)sQ zJTKwHQw;DX$r{pGVS^0qtWXkBs&br|IF`zd2_Xm#Tlf|sw<;d{=8Zb0-6_D)G;rcz2rv z&xoNg$s2D+>;_=-OAHm-rS`dYO(M&q)e6Ut=Fba^qr#`-4j*+`XB&nJJYs5ZvGvdsRYn_z+P8cJt8#sw}) zJpg&dHjr+#L!RACTO<-GcMCO-@0!ge_(nz>Sn2Vzvb>+%8U7!Gfu9--^>64E!MrF( zVyJ~hwChwc;lgOPLBw8>i)8vqyi19*m9unfTV^mvG{}}uj~^ZVk18fKqKL18lI3#qYw3`8}$OpKc$l>D$&C93>>y&d2-XM8%htPr7!G={?&%$T7>i*h8Mn$!d8_Z|RdEAdPnNB0qzjX?cZOo?z^WO@vG+X&28dm*(ENXp#S!AZ-{9QPMJR-VG;AA?1+2LQX z;Fvf&HC!0ENtqkf#TXr6+D_)Bo?w{#szn z?TB}AS_S9Xj?x>aKPkRqk&m`iialT8Yi<6g>>JPrl~3G?C4TkS7(Lq7k<8l}U0`F7 z&hi|7*6;8**q5|iM9ofoexO_I;FCAz*D?q9{ofKr4^oZj>yEcwU)2j+*UgJKKWR<# z84LRD2|%kYzP&=R#5w3jaGFTp1nWZh%sh?qNIYjl)OOdS7M8>ZEK&uQZrm<-5Z}6F z6E+|6Xqx(N;gpQa3UK%x_WQt$aPr2e4Bjc|AEYZ#Tp^P2!F zP8~2@j!I6x1Cr*TOW}Q@Wp6w-`Wi`g_J=xw!DRFv%XAO`Cd#m?s8MPOn(KTAW%WuT zls7$#dd{w|9K5_4Cj& z%aQ@%ovjz9wXkOxHbjZYNB+xQ;c`3~_d9bQ?j}cbd)MwtDyIsEmFFkgu30sxiFDzt zlr@JgQP53L3HYqd-MAjHqmm3OYucSl{FA9T|>wi=8+XGNI-aW%DR$0vErje!Jq{Jg{q_Im`Zynln{ z8vueP;5u!;sydPzND+_Lyil#?^@Hd3@g;V4pZaD7bQN55GHw<4Oh+8# z2WrR023PZ5laD11mD@3lwZb!-za_HFLWsJAr)|4Lj(DA))f+U5p<1?hyj#|eT_tnx zn{S|s@N4-WlgrUo%f0rt;gBG_#C`2r`b}-V?}BbCrAGH(B+dED z14B_F^;-;NVeI+N&px}`7k5KZx(k~)L&&|E7(e+ z9}`)h9jvLGO@PW0ghLpy(DaC)L0^OM_9srb(qzp&h1al~>!SxhU0aOe)`yZ*42^!e zJRe3CoU6q1PjNiEFau`r^ON?^7>>eebjjNmCEqL;dkawYbPu87@l~%_lynLlIuR1d zpc+`co9b|Q@8FULclM9@9Z7Dp!wlh$<3-%Z`W1P)2{SV?^?R%463Ie|*?e=6@l|tz zV-3z$0u!ANk$|!(GM@TKt{A^`d{Wy9{0oiB97TR8u6j*|TsZd7DQGhp{XDei&k+5D z_h0y;Oc{Bk6v@nDj`j7RN1;Tw)&v_=cS<7NIQhC!7o-4!=g-j@dS|};HBSOm^5MXo zzMJL-^3iuU95Pmn9|5;K`l$E_zzVdil59J?WD5)`p9mj$owz&>UM|teW#ZH-=zjNw zQ)nT$CIDtHQ$ei%%e#4f628VeGfNUL!RInE53XbXpm1rRYNr*qJL}O)Jz2AMoxHhB zQKKKl=HsU0J3$0ZY^z4NjfwQ>0?6iaS7ol?zzDt(NlD|`3=A6ylJs=) zy(o);OpC^n32OeTw2msktc+9hyCoND=Y9+nv+Np>{3tgcRJB(S8%S|=t07h{)ho8H z=Gc!X%d=vf>%_}LC^@t;lCjVO)L;0#F2~aJ-p&-_szHI{d*4Bs-H z2+fyQP1dB7Wi^IHGW$- zzbDHr)fmOaL#EORpNBQUgN47)pR=Mr88D9wX<>6A^^GI(RTutGKxfS^4wrcWp-k_& zZ;;uYpw<`cnBw+?_h7lI=aS^XRMuSz4~fICV?m5JK2r^WieuERNs4&oqh+JV%J8$U z{hpU%hrRMZ2liVAJR7O*UF<>=AoUO(w_nTa(r=pX4jneew@2medF-}2LR1$*Ww{au@;^ZDLywaXM&jh_E_9J=tWcv4?(5|Fk-bw|Yd zj(rzBBxWC`xG!L;if1b|^1F=hTp1b?&dADwEtWNWFTT^x)ZMTjd2!G2$20Eg{nwob zQ&w-cMQys})<%P;rrK+67&rO+v%6}|rosHjOyMREU2#P7KR~2WY%BT< z5XdHV1Zb&%bi=p66`Xp@|ESui3m-Vt=2GgT{k*-TgM({vLi^?UdfA)p789_U=wiq% z3oU=RJ4JU+tiSV6ba9h4+VkX9@;@I{ocN$FEJ4xUyTz;Jp&yGRlN}rz1Eag^cfBGU_HxBm%ML(Z zzPjbK{55il$Eb5dd}ruKUgEWMMbp*#J(t?uUD@7zO}Z9?g%bC|rL79FZm1#8H`0Ge z$oI5v%D8}i2?EUfgKv7?1lsYdVkL}+Hnkr*df)HYQx#sKzsWZMu^lmTs8Hc1t|_&; z8+}2H6WCYOa|Q_V2MgyesM3RyB=e1|vtg)~sO~V``D3bUYGSc9l-m;St1<`46%#*_ zcp5hFL9T?_Zm$uKOge$&dx!WLNs%hMK%ssM*hOH!;LRJP^M$8YcKs9Y2EHBKwEH#j z(;n2|pJaPdeWFL0egDRR41%*#=f&e-UE~&|`*7#z#XDmSy|vx|fH(r&t;Jt*9*-t+ zmu8Q2$+%B|9mPTdAo@{T7&T{=J@%w#7!XOe=>w}EJwv<2+ z&EC-6U5t&k#OU#D5M-Lr0Ja0&FVXC-k6kF4b3mPpb)OhkJ}yahS!+0H7AL94ms(1` zvb8QgPhmN(!d}btBTSNq-JTmT5^Sliq%KEWPG%hm-Gg>~KTFjTUu^AhI^0)KOE+4> ztl((w5T3wXKMD)NcRH}%_Ed@~U7uf|ey!O9iVSh7Z8if6hf6Yy;g38kh>(k?42B;=< z^`sjR8M*@iNT6A4h^ysiW{K3z6|=D&fSvSh_tGJ~*#;pxsa0>PopNHeI(|P@FEneM zH*N19>k{==dX{FqWQmB*z3B$xCnQwdel5SN&SW8Gg{aQis&V`KFUcvX{nT|OY6np2 zi5-1%PjdfuXW8qk>~hhFu)h0JI8&~iH7BThH+LPdN2(+*h(+&Ik=wHKvig3t_uTnc z-hJ=4J#~ujQxcOYAO+2%c}--!RaBRzOn1}v%=-ZeoXNUk&7rcfZJIhSkU+lA{}Kh< z%v-%aM?=p!o>HqmlZP@l-mSLBEA_&4=zeLl338)}DP>-L z%jh2A-ctS@SJ1j5^4@z2i2T9D(ZnSmx$(Jq>~;v#`VQ4}7Nc)P>rq_+@v_|N_Tc3_#(%aK?S5KdD*F2)+7YaRqsL4(V&1yn-2$)cqYgH*SZJ!qC3an}pwkHud3Iz9 zic`(tlg|N*=AwS7t8C-ENLg$Xpx49SDV=2^4i`Xl*E^n~fuYo(kAuVfNm1c7942gOtm~j7hihvcY_}(XfBi3D z%+_}}4cZ!4QI%IJF(*4+Sl0m`00`x$Ln7ELYyZsxZ1!QN^4;XHS+5Rj?#?iuNCaIo ze!x;tZT|Fg9BKPL(H|!Qw{DyVxB=V~>M0VHpofoOOJV4&UAw#iQ~^Qf=V%VAeYH7$ zzw&&;RKSQqCKK1Zx{P3Ux!RrbS>V2QzggHeH`WvPCJ1ArVqy+FYj+przHEkeZWPMB zf~_6M?)eK|mbeU0!gPcl6U@wns9~f0NVkX082|AF(GSm56^4sofELuO`1z(&@H>zG zdeOb-S8sGMIc9@36GkyJai z-bm`&+ixa!Yc9;!Oa3ykN}b@n>m0msWMp&^u1^E6y(B~%7b|E@7<_?IpGJCpLgAmG zS;0PCXJ^YK()}g-+d%pM#axx4$w_FFyv%pL2a8>PG+-GW37Kx!R{J*yL&`T%cWeY z`sNPlpUaomO}~p`ExbW2IKIK;FwfH=S?dKKKvDT)(jj!V?ph%Ekq;StSy?XqYgcPj zosuEhj#V^qIJT>@B*l+S&0g0pyPUX4;?ml&@YL_$yX{j@1fZ2%cfDW#6)WLXV>rwO=B$HlX%p@kL^r?~ML*2wkco zDSLV!`}zZHd*hRrf_ukf&O^|a8)_0DYctLF7j$y(#tVEfin^WUf@{2b=ttXs@I13K zsd>Lv(3!)Z-h~ciF#U)<>iMInX`E5iyk@<@nrEtNQYV19m}yJ5R|MldEmczaQ%BZ1 z*Z4M-gE#6_#xBAS@r8(m2p_}?t`aK~G16)?-9BfSme~rpV4~tX&*R{DM&B(&MFXHp ztgE+Vt!qDezpi&!uB1-lT_*r(E|YI;laifMC&Zm0YQz+t+j&&EEaOl+s(J)uJXGt#24ZO zy+LG8`XmQ{*`UPXT&|iK0D^lSZ53eJ!O~fLvYU3;O$YEu3SdN{KDh=#2A41gY!swu zfL^pSTZQU4eN_>*q*d-0R{uFPDeln5@-dgT`PO>y-E+0=dT}1kcPwHf3 z%`+Orpc17KGnUN)x`aM-cO3el`k8jbjW|L}&{HWCKe$|Osh%ri|17(=S20gFs*|RP zHP7W>J;i^eRnq39$xPf5Ok`lQv`jx=y^}oLC*amS?!NjN;0(9*VwaY#u17x;rv+TC z0O}w2{H?ctxT<RZRA^!&Kp6c8 zq0J1tk|51_L=9D-E_R2Y1-eDT69y~r)@=_7fO%0%50X?;3Nhfhoh)CH{>cDO(tmbt zLgl|Omn8|6Gc(Q4A3Gs&;d34g0h2ZQ%RKSNtz*H*#sq3&f(b4YCogmzysq1O4LFbR zrKy=8uXWG^zT32}8xX|=o}o*>5+}wURa|;V9#4AR)o8*nSsveKUDfS4dKNNT5TZXt(5=P?W*2!1PqXruqLj~y zlM6xf1)XsX-Qcugl7fNgK=nzs9r{6w-49(~-1A@i0@{Gzb4=5vCmf6yo4x1r$)a|< zFJ5!CS=OpQv9oL31Io*qf8@S7FG;UCQy;kw-i;ppXqTkL6)Sq*9SAGH!SN@(i$MbY zjo3!YG5WSY4tBAzGW?t26lNc`jD?`*T;8kTJ-WJn9T}hHG~L*cTGr}LEc8PW-8VHS z`q}2aDm*XP;IJ3ihn~IxWY&}3qHUa@u=n49ukB7XvuG6>`hlcy+_~c-ym$rWA%t!i zZ2mUi(ahFR#Lv(lSnS}>(~Fh`J!-+4BK)GKPM6wa^4~rG&7svPf6}=o{==6BZ5sRZ z6R+p#k9*9_#fzGwL4ky8Oj%@Pmp@1){RBr0pH~0LA^EyLn8NtsdY&jYA32OQ0Jl0a zgQ1!ca**SrU0Za0{<@*$c^L;fTIiKM)5-+w7JrWUS0K_G98#)@!eKioRqRPH_wuX+ zgINl=C*Z2K6TvFr{Uru3^&V;=Mm1iZY|48<$tT0URGB&jZ-}OG+Cqz1ZAJ;>sHA^t z=&$`7CeW%sWd%9Lj`2Kj)|-PEegtJtu+nCE?C-#vT8$Vz(b3k<>C3N~Ex0T2lT8wa z*Dwi<(Y1i8RUBe0v$>E8+`F$xSBV)jD0f89xv4PAYM1O`L*E2 zc;dh}j{_Wpd ze`5Yi#M)G6F{O%Xx`XtS)MNu-<4@}T^_X$c?$nJQF*aNoaqk{&$XOuhVn1A*iM~8GZQ>a#_l$H0ZwiRH42K7^ssi zupFtz*R|{~*rEQtXkB?rH$wc^E*|7&j@BHyd!CeOa?4sP@f6eOgNBWu>qN)UghQ{w zX?{hRN_A6B2b1GhL18FHMqf2V76KEIfQ$m|e1ro$xV^%Z{+}nkR|Hb zINMr@Um{dJaRaoK$q~=eyo2rJKNUmp7-Vd2;=_2L{ zH1x(Tdg7!@@T6Gfb5o8AXOlR0{YbkokBKvG0U&`c!~mdD6^Usp0w}3f_p(Gw0{;+1 z31J9BMc_9NgZ8)uQqm{KEj<;%_c*waCH7nmRem;&K}5(%OCol`B;&pIk4-{%hu>e= zA|uHoLo;uh0BVi9Zd>7aqfl^5Zp$YHhI);U8s=j3H9(jn#ngFw`26>Mtb|~L*y9F8pQxnF@xE$PXN};0-Ey&pkZdiSfS0IsTx#x`)$ajKVXa! zB;n2oA{rq3%~Wh`=f(M2N#S%Bs9ZJJ?p6^lFZm=$?eFiz22sQIw}3#kf?%7-YfXa{ zBc^_Y;U`$zJWAN|zA-mDH6;=-t;{(@7E- z3VW#mkl%j zch}ij_1KljRxx-Z5i6ZCSK4oK1kvU;z1DIhA;)rF0L6di0{uvDf@(0xhXVpA9+VN! zlG0lG&NUVm<^;8o{=n#XvE4z@QOEh9!&+nA<6YcIjmeD%sweNS`WBI_-}=g7L*e6& z2znfBNlwW6S7+ISXYsWeOo#bAL`dwF#N4=If1Gwrc*({89%z78*>czc3iU@s)?NGd z38OjCLYog8z}UgmX{L&0jetp9G$1;tS!ap z>**8Z1NUj$+XBsS;ddkSj^a;rz#K+*!Ad!sZ}SG+s6`+RZ3>6J-Q~(KfEa>|f)FEHyoQnK7epwG@Lf#FkV& zV`C8T@70b^o1q6~??L5MI+TsySy8C=^y&NG;;Jm5C3%6*%)9$n{MN4hunQW00h%%d z5CQ{L6s}RDo6}1$RNs=AG6W1IVW>e=w(eT`(D*Dp4i$kmIqZN1Y( zZ6QVDp2eIXq?&HMDjm-z19i=NknwwSbfdwT*oXW4$vN6R6{gGfa6mzF8Pz9Ha`Ned zZa#YQx$)Diaw>nAP5r^%K(5%OatM`*_1=ab)$}{7OV#M9R2+JUD#tB)C_2O?o;Q^S zKXe#o&cEgxPP|O$h)oRLhAgtiD`3w-Qz6%UTzpy!^edgD@v@*NSUGbcUN~I=u=)i3 zb3rn(>2$IZ->^ZTPZWOZPE25vIt<+HNHTHS$+&As9k8 zea*rJOn(Jo-g4t`&K*NY6jgaMUhAJ)1WqkDk{QbA%Yn>Cx=FRrc;o*HgL%a~IM)TE zc@yafK^qRog~!3U@Zgs|^vE5zX#+%5!ks>gho;ef_RL#a8s~|fkH8e0%6>$tkHj0X~F)y@(2fp zD)cEp8u={O+A$bQ<4qyY=M2j5KNr13z(|WB2EEmOmQ=%FW;Q=1{t4vEnRc12{79v5 zOhVI)-fqZG_EJrcnrQr6MEUZx8>#U9egKU7HEbIf2ZM7HW#IFg(H9=2^e^f~d;byJ z7iQlgzICFnZ@=#1PcDOWc7C_n*t4T)z+S^tvA1!pvF$feSs2sOc<$$Qz>#&@@luFX zl){_howQ54H~xfw{qiKkH*d0kUKV&}-wGT6^{gP|e6A6OOkk)2LrRrDrzcuFG&=_D z2(-@_e9{qwh`ibjGUR7c>9F%coAv!8GyxD<@x(5aw$jK>(og=Ng7@Rt{G)hFZ~wXG z2mn2rX_)I_wf7)hxZ@;@rK((U|5WwrY}O;giWybOffAw;B75*gaGYlMmM`!1)2#XZ zq{L-lLp#QXwpnrqH8_Yf@{@Q0CnB6UnwOOF9$7K(y<*HQ|A2RR9Oc&)U;1FYc!7bL zLG$_>-L?L_wFw5oZe5b{S&suH=ju#ZCYuT~DL^<*@l8$(a1$otS zg)EktUtEv7zxK7TVA z0&1uKj{7+nHUN=?L`UBFhEzf}-#7Yse&x)~ET%IVL`Zj0Y0~c!|C}a0zDV^fUwkSd z@BB&`eKpx|*(6vd?N`VLl3pdRJ`B49>`$`*o$;mmsChSW=( z%)tW3o%uu!Ct4?3Csr2|_6W|9Zjt>zTKMdzg{AwM3jP#27HKr*(^k+aFB2FiZ!BCS zv{z;*8v&#$8wAV5=e_VGlJ+B#4Y}1n{2-Qv^}Nh~U~s(P!U%?iAZ{ZeX)!@PWD!bA z*Lg3;VR32P&IkyQ|7IM#fh~ct>Vj8@y;|D8>ZEf2{PRrM;BJ0zV62FYPtCWH+VNI8 z!vnE*wR1HZ>`fQ7b7bn;qO)h#!op%NOQfXi9_&so&HDM*xckgpW_G1L~c<;yj#$Ea$Tvy z#(b|UId8Bm=)%EHRO37X2>y?5BD=M)79OLhNC3{ckd`rB&1u>9BU{3= z^1anVkGfj@$kYIR`n)o%)xpMC!pk=uW);cFFDBoQx}~xWG(BC=st&Bs{u5PCXh!#n zUh7*|V`kn@z`FjA#c#e2ylT)w)q}rF@nn%|O}#;aXWWBNP~Yu+X7!~A4411yam5bv zn|<$OWtzVT7X)J6g~0R5HVRr*!S)~F!5f(MkX2he9vmE9%dl!z&QlNm^DW}=EtC9Z zUX&}w8s;6JUXJGbI{J-+jV~8^i{7@|UnEnoo9Uo7OcjoLtrQbJSMvCRt$&$wLy*Qr zGO`F-UeqY22hJ|DzbfX=L(BO}?*HAo_B~SzhFNenR2g^p{pUkZ57!cJ?^oN4el>}S zOOY4JT9MUt?rzJ8HV?auRwYbmx!knkk|T$uMe2~k0nLA z082sy!z!Q?5HI#(=*q~}H_x4Wjomz3AhzjqNih1TUE(s{EwxAr3vtr_jStLGKp@Hh zIPK>z!7xLlJM!Y;z-up2+pIF@pmuU_n}45HOyF@>QE^!a5~v`AhlFIDPAEKU|CgQB zVyc&K*UnkL#xE+k zB8CKlM?ocA5#x(~!W-Z%1kye&Agqv@<*V3QDayVKyt)++LqXOscrrd;(aQc5{HW>4 z{q$E$;B-||WZ%AtZT=om)-CUV)zbfj=Znw2D+TIh#tnv1B3?`J_^&^kyluHceJ*5c z;8BCn6XJs-RX3x9nf8Kni<~T?U6q3L&EYWivhuN8klD&%7<%hT>p647!Dw@(z|OmBvEB6rDPn0=YpH2ZM|pcLY6dsxBH}>fF{Y@~kD6xs zrlzqmr`N9oX5MDE$2zQKrIN>n4}0$Mer?oq7YZ5!+hmaPqV%zqF&CNr$$d7E4*kPI zXTBRr5)7O5DPR`wu)d=)m0rl{fR;%hfZQWK?~&w@^ct2=?~s9<*^7w-by=VAya^2b z-F4bHLS>xe%FzOTZLD~;U>F0WJCjTDTaDoKYTac)xPDx8fc*G@<?#`Hrmv0Ke$ zBgVFMdh?|G%YR#_R}lPO)Ou&QqS%|ONzJ21DHa$Y-&ovl|Fgy7#Wp?LlWsfbRf#s# zjRW11MUK5-snik3mpa)R-*fFv zIra{wr)T}bvVcb3AiGB%@*RNK6)N-PGb#1OJG*;ZzB008)O4N4npuNR%T%|U!`SLV z=^UOhhezWXUs|s(bCx?clg{Y0=UvEdT1MHN~4kr9tbVOD1=(KP8l$(gw-{gzMj1Z zSH_PFl&FCk_z0NTUDKDr!->HN^7-=oDkoDx%;;M;UWEakzK_G(fdrI4K_;T3xs~S9 z9;3ynnJHxtP^3accw9>+ChmiJ2R2UUl^@-miTELbZBH)~c3|FpU^zgc9K#fQ39gJi zDIS?w=iL4zF|wYeauy{p%9loHAS!_BRC#F({P&57?e#bXK8$!VzVNiV=8|DYn)Qq_ zXFKTo`&YHF!2g?LQ<)FZgWk%~i{?+iJ2kzqF#K6YhG4Kn@(}6oFrUeF7jq@AEYTn? z5*>UZVVR-|nzq^s#9tzAiL86edO8~0zcuHHwDy|7ay2dUoJBx5SY7-!RlN4x-E&78 z^fey;_z@5g%6f|&7X~`2vC8>RsZ}3oR;WdQ? zipph@Y|;uTnQm2JZ4lN>|5KrXW_Xx2Tm8RTfXV56^L^mo7P@8Df)gsb9V9)m`CeHcVd`w@ zzx&$WJW`+UB3c}c$I;F)DMhFBw-@OyHzzqQ#ZgeT9I7M+sL8iHDUq49oTRi|8G6yF zp7E0xRf;WvSxsU;4s z=r?mE)6@EZcaww)E`s5MfX1!=Odp-dPqd68C$oFoWZw04)9xqJ_~X zS&h$d_P>KDM!4ATQrM=JZSRPQ$h|-0%DIIq#WI9iGj^8Bh2&~a#|T*c9M8aCS?p_S zzr*(^$Yg%7%7JUVJjCx|`FeW-zi+Z+s&kaFG3|PGnLz0zA4P;xG%WMxI=8}DQct$Q zTMV9GEA2;P)%QBa>WrfR#%R5R`|{*ARd>=G$tLSrjuTO95^RV0 z3eyI%z>RmHKN2ZuxU81Q$w#Yn4X9s1)IlIAto|^WL^4^)L`(T@A{K@VKy#ODpSsx>!t?hn6JZ{7inKpzz|w{~7OW5Uu#$ZN5yjYCe=3 zI~7!u@{A6@c6AMpC$v~Q@j9OTwlKCelq_Vw&hesF9u+sQPz{wsgpr6ghosl0rUsRe zld;q8hthZ2EcL(VDu5RBw`ifWHxLeXEw0!C={RK6BL6~lz_b_ED9)|o{*;eN(M`i@a^i_Y5Tf#!CWDqxiq_q}h7wSB!@Z#uu~7{Z{LU@T^yAHuoY z!JQO%mFER4lcNZ89ea1V5!dZk^^$(#8z3BeUZJ?V-C}ooz0JqK2sWL5z4QQF2 zO*Zm+1Q0!YkQ`#Tnhbb_MkzHs2O8zmMLd;?V60l1dlEeK$-C#-#N+&6Bgw^Q%W;kbA!(*OB_v;kdtdBHa0_e44-@}4bYbehTTDINZB>J z1|{(Ctrj;wxmS{@v-fov;CKRmP^GVLY3=~TGrx>YKRiL+hYwYY7mSf~ zw~qMA*ZA&cqQ>Tt9)5sL11Ml6^ZB#KY!cJJ;)k^@eU|de8oA{;2eh!^lH))sUGRmf;*s2!&S={K2#-UH}o1LY-XL&IIYatjX3Py z6}-6yi`=lNTQ|0c^k=?ZiX-mDx<0qs1s^bI4iH^U(|S!VEFK&%6BTl>v$gAspGQPs zPjn)!5xc8TsS?yO%eePwyT)SrrHIR15aXTo?cOFp>_n8g@7y$Aez2V?67AgQl@?nj zaQ)?&3^#sjiBBzw*b)`bly*|sL`@hj?r&R_#{fjg4mLJ5j&2}@?&psrJNFr;fqJTt z@Ov921LBve=HVML+B`cbDr zh4KpJmzPE!jbXX>-y1lQgKBDQ@1qqKLuevBFKtn*hOfYv?7(kEPk@ z_GQ_Ow7ij;Sm-pWcx|TjjXJY!VwtlKVGlW=-l#N_GW>@sL{UpR1s$WYhVN9r1QsZO zJed(*(!aU7JVcZ#k$kJ$qY2^FKipvOCPBWQ7v+H^wm_Auoi65mD3nxP##wb8RO=B+ za?;XFcZ}kYmnUv0*DRivP=nYOvjGpc6XkJMS*jo(omPf95ENvsuVVdi)qXEbQ(ali z(FZ=vyryf}lvm~ged!Z0W2Td)=TOhJx8qSIQv(nNp0rnCgIF#brCktr4z9!$d{U|@}W&OL<78q z5JhFUIuN$T;7v>7;?k`B9#MsgQ{`4vVeY1ek29%2O`=})J&^GBB|uY%n*lX7G^t_K zpK5G~lxuRXtk=L;k?8w~+%|;3J8;rikZ;&hX9_~;43Z)O{CBS1b<{-&XKxxEn{Rnb= z_VsGv_sdlo$;2e)AVR4Y1GeDpy}lgm1i5!*M2SKXYIEIc7oci-mXbHV0xhYxd`MK= zVO80k-J56Ee&-wXk-SxsO86$?$4{QUn8s1>M&?X0VY63d2yPG7`ys` zrC`nV8xdlUg5BO^=-$>a==&((-RYIA!Q#{j@Ma{#UGGCqo_b*xD&(o_^6QC;g(w4 zkB9xkf(CJ+XzY9u9*oON>l$)mc6AU6^5u)h zAt3*9V%YDb=V)geRow(g{jFQbmCMP^H6`X-;BBhKA?b3LhnDon*!7Qx%7VrLh#uVA z3Y|)4Rxxn>3P>q^3V6qFWTDj4nx5xnoW&l;cx}-)W~20^!~1=^Adbe; zT3XSrXTr>c*D=-cpWx-)MAc%wVLrf+M|20ne2^B#BCXirWt>{Z-Yy#NYpUEf~h#qPW@i>BhrKuig*(Ydifb6nQ12iy*WqHsp?R=d9B{hy50X507fF(}s zkY40HEF85v1`&8if452hFU%^Sw~ z2F^}rPq}3MspBPWol@NwW^d{C1ut=4qM^etAFk-FJe`mIA{7h_iP$-NiA}yIH05L@ z1Ee)}ygX`(TOjii-psO1H@H~)cwEhWP=UOZ{288*&}{k&NPssU?zsA&;?g+Q*5qJ| zMnpG{Gi-JFFo*~1+|ThrXNBc=F`m?MRiGnpGr5(R9u^bjc{ol+Lvb|VqJYoy{7pTG z&lRfG6Ka2NGXaS=4y_jndzqcj+KmI78|mbW1Zh=VX1uZI;Vi^kf_^9|vs|*VArheO zbhdgT>{4N}!m|VKT}^b2Mff_VVKLi)lRox(!dZEcyVdTd^sDTc6l}& z5z#r%i?|(iw~xob(nbT(E6L(Ph#1h*}HFGIlivbmGj{;uXQ`p8VIA30E&pp=fOsynn}+K2VLa!Z@1wiVin@8~ zbzorj{z3z1n$YR{c{{RI0=#TWhm21U5)#-IpMSKnL@KTdd}1@%1PSPe2?EmB8OR;K zS$qbnA3kNbJfbbCuJTe*QB@e6`}nsCh9wS>?PRg|h&!KAL}8PX9?PV$hH7#qrw+Nj z;0R;;nak<8MyRTF<1BxhVU_i%&ccHoGgA9tI{PJ{F!2pYO$QxLpj>4`s9Y0nz(6CY z+xif`rcs37+HwjrWQp_8kbf9VY<7Q+ZiI-=?37YQwFAzp4HOQ(F4Ge2y>}^=LF--a z6|S~<)_jwtdgQmbpD0i2zAI&9$lO3}zmB)PGm^oxvexEm43@w&3}tJpeP0|M-x`4q z>bo3#Ysbt_Kybp^k(ZYsliLd>e*&6Cmf476j?>=r>n5=I|1s(RTrERjW3!ZKf4w|#Egi@HZzqk{ z>CS22RfveMc?70R|iC+PNg^oHPqF=1sGV^zxg1k$Y@&; zt=#q>M^sCs6qq|?n@iV^7x;5R0)BkL#KsmkRz@`&_OEn?zIoKG37egD%R5>o;Z8be z;LNh>>4uM~0PNdZYszHu!1Zj=>Nj!c_fR(M;%eVU`cj-kH2#1naXMF7jpIKBz*T3K zs8`G}S1i`-&*UDZ4jBRfF*}e$av5&9K7QkiklQcGZwc~CO3GfXP6ZPV?!v-Co~I&G zI4s9FtvJht5;pF2jT~EjG-uamk}n0#LiaWRlz#^De|~R!=z~_rOHb(dbE5A%mLk4U zU7?Y~LeyKO4M0oYCNYmVSe#y*u4Y)37%arI?KSvnS`i5N2=IrKIxDzPP!KTa z7U5T>y8Dl}w1lq_ws|s3Nm9|IA`)gZ-rTvJouiMeZ54>X;Tew0?0Cw2M9}*fhc;Y| z_S@V%ZxlbP_3zFYvny zF+eAL+l#LRb3?kDhS%e{-*~b+Rz(*B3-fQ?4xV{TGnZNK7^kuFBcc@a&f#OB>Y&3e zJ*U}&$MBB;eq4<}Z8XammXYj?kM$N8=0(*AH{@%`R%)n zD7M^bdkm@=aliPQvDIb@#g8__V;&Z&H$r}*D9y+sqi+6e@jl;d0>knPzgK)`p1dO$ z1q{lKyQdN_`Pc5LKS2C-SLhMOCG4;14B#apm6I^00`)oi>M}<+M@pGRi%WjF6Mz-f zlev#}>iBt`9pIv*f9Z>Qm#_FUw%T&dR34LW8g*;^LZx%K^VBZ`I{&52Yk-?s<|?$X(O5gV2;iKk-y!*K(zbs z>dBF;n6K~rbg{IU?~?%UNXA6ooc#r@86`zvXn6O?Lef7UpJy@)ez`lKMGi<_R+uE* z+-zLPHgwCq6b2H=ux8RNaXkg|F9Ex4lb+cmmdiYs;*L4qrZRp{Wm2VauTc@v5%aq7Sf02;nngvE35;&m zI|IyTUGO6n3b1{+;8MH0p4n`IkPn~{l3+7ab06g%b0&cK~K1IJakGGRIV<&Z43{03Undgn9jLvHmeCZAUw(2cNRd+ zXIv5T-2wX9C93xMxB@?=7e z{;p;t+i{#$JU-0lbB@n5rjmQHtxYb)!CSE6d{?1Gz3vy8TJiesTxEid8ki6zVMG(a z#kH}Spw=-sUH5(3x|Nhvs>~4_X0e(sGkAJrJiod8iTAF#Sv$(+%T#b9pNrF>?%^lJ zo>Z>s`5%lfxOC=nux5$xin@QJTljrN;dH!`GBjLQj9aMrBfT^qL#sC&(US)C-`#ZH z$uhbJ2H!L5PB7`mHB$M1w94rwI!Y2M|X^k;)Pux>% z_laz#iPcx1O`%)dz`4-2#54wdPA5S;_t|9uvlz(ChU*(=*H_)Z%>eV`_KKXAnmN1@ z6Eis^^si<}S}nJUbWFzp<%tlv(fT?Vk_qqr@um$&uFJUbJhNyL((vloiX170u@zx8 z?t5l#HhcT$dAsrE&EM`GB|w50`r}-aTNqc8kzZ{ot3S_KATug-&%{Z+cya6So#P!n z{pI!O$O8Y~HEWs=3s&)49>&noeA=cEJeszd>rC-mJT8kzlH#;EP{t{q-F-`t)BJX8 ze-EqyR{K7zO8vKd_Xvht!5A;QZ&zH+}!r>fPn6<3Rmy5BJ{Y}l;G>< z$78pTvqM1{6dd%XZ6>Y)a4nF{(VQ%j>_K={_s8W35K;)anpPd(D`xZxi-_E}7{L14E_APPm?5E|P;v>SD!!G`)4H9i>)gK?>Q-70S!#D+7j==hj|+Oy^l_9c)C#!4*{Xn2SW;< z<>kpjSeS52u?}~_Kd^KMU7x43ifOTlXm*S=M{U%YW>nQ$@5ze8n z4kiLjIW6mGvks5=TtYcLudlz(Bp;rY1B>OXYru7cQNROqS{n>48DD-{;UfZbX zUXQ#ewZ>2K+L_hQ;O0m?oE1oWAfoiwZ>_UHrNzsCLCfma?a@m&fh#OOJ|4B!-ieFC zZ_a9l-SbG(UpBe-2?2HWHp!;nr4_f)Dk^2+})kLiRX2!VDt+O4YK#Jt>3#R zad{ND_Prtiwo1xTO%fXMYLIQ~R#*ZDFOj{$s~GI!tzwNz{D*^55W_KPe2D#yNN~TG z=Oy6l6CUysj8r%8ZJF-Dgx?;5u`xzF!)(sC4xopI1AMF}bb(Q;=k2_I2P{GvUst(+ z0LS??5B^FoQDzmRcp#z zaanvy{3iJD8{z6E=HIq|YVi%2opKA?VwjsPurwMChWv%oN813`?tGx2Jyt*kbZ;_W zHT<=#)p)K7xGa6%LtVGK>aiuW!~NAFhx6W{j&CAGd;Ti^$>uhZf{s@yIBRkhcTHLE zD|8%mAZWh@)Wo!tbo-(H8`Bf%=0$>?T-qy|wvhn#9BBuWbIpt0#b{;{!nN(#%jV)v z@ewt3@t(k6g}1OAvd&C0}_nK@@eAJ6w9ulah@XlPP@dkCKgsjE1L8im-&hP zwC%k3=<>#)uv_qiSw~=a5T%gN3zm`fXu6{TTuz2jz(Grn=0n+YSdJ4sB+RL#)xPYc zaf&=Yzw!;{-yWJ(wf>}kCJ)c7RE?`tEQ#UZbJ6V22Tx2QBKg&RlKaOUgy+b?jT8RP z2TD5ZRq6VQ9P@=g%rh=lpTLu~Cp|IiqXo`qU){5M)A9Q$p1|KgN@39J>1qC}U6FEv zcz7bzRMZt976e%9z`UU6Y?-exR4#S!V!#v7C5z8F$j>IZ9+*4Ule?J>xrYKC(I8D# z<^*-&I$TM!$u4M2B60>AgxFA`lkNBqT_(*qSf8>iU{Ni)Eh3l@d?$6r9d}ytB_CovNAAMX?APuGu|6yL=YPMuzS5i zr}sxWwx_Pu(-q98=nz+h(`P5IZy@#z+8su)ELyBqfW@ujjC<|07iFfj2Pv9wPNM7E zS#ten+;9mRYm=$02hG#c8S)hiV1NU=Kw=ou%-!+%W9!)Z#KG6NgIzFh;j3urBrT5yYOd^ zgN|3V##r(>4cOy(HK>9)m|3jlZqXktGlC1|xWUc{w$nY&Zx~p2n{g`Ly_pCakL%%z zU5C+|vxL_H&xK@#SvT24w{+QqK^6hE_YB&LlA)jwdb39(lprkJiS`-%C3*eo>Ue8H z_%R*m5ecsoaX#gEdq2}T(wloni97Bs%Jf|o;Si)YM?jK)(&tD&D|Pj(DTlI;rP8l| zy;Eo1@Ex>JaFTfpHX*@5Yb6oF+uFud z5xTBR@LTHm%5*x30E;-@dFm42{5{_2DM;$Mc8y5k7e8@bHW+CCUO#{G0fjtkW4#W# z5y8P!#|Q-7uEiyeL+u98(&k^04GY`0rffZ20N2b0dirsj&uL;X>{qYEqo5Z)aWJ_U zl_LL58>)WqE=4K>b;&ph3k`~YRM}p9cIrI)J(`|#T8bK4wG@QMGl4+@Ii6E0n?b~Pe@u4CRvHIw^w*td5@YH!utNdKe?3B3hrhCl`fp!p9^$=ddgx8y5V#uR9$YGWGk_BJ z2lbRhjuMW8FBE7T&M<<)vUwC&{TXzhlgJVz- zkQro{$Yrzc3T7MuTjMRPbw2Yoki%RBkyw299ugeKksHH3Q3<4zhdZm>9w>8CfEi>d z@f}^2*e^gk4R?RMgfr#Xk{LbQ@M1MXGuj@`0Wubz_j3A1kGuUpV;}-0ZMg(Z=RUSX zKp$Ln8*WW?o3~=MaUbPCgm;HVc3o6rdgbnp$- zU`?WgC7)-gXI>9`)~2gZG)mlC>mCH&%58Um<=OZUGu1qt14T-ZT#hc)F51OX){5yj zEUbH$?~`^K3kakJwBFG#tT%@yqoMB%{6tAOyw3A za(lpn6_wX8DCPA5CPF^G4P>{r_671jd?etqrx1f<5`l}^zd-2M|*uhtV2UUtTaDReVhf!ZukV0 z+Ajuev*mJ1dTK0Mu?91GBbVT!IQcq`1Yr*@lzl_r9$b_7$6NHDUp8HB<*1VAsm<9R zo8#+XumA#Ovq!99uKlYwMVmd09}?<;_UGg~j?;1|QTf{vFlxza`{guUBR6uESEKr@-c8*?A zIm>BRnxU^SX>j3!|A+?iwqPM&G#bIMFs|et_51u@{RyS?C#H7`UVmTiOux zWCtXn#|-PSZG&oPmmFN3`0e*6(I&30+`7IkcIe4;htwmeP96vVi;Mm;$T#&s$t`MvrAAy#u{9_;3(vHB5dU{c9dIt zV?Nm|aP@wK_=LuxV1F!!4&(q$`~LYVedv-TMCBjEy#)!c9mO4MAi13M3oy?o3VQC| zcN58wafK#nnF+DCj|n%rjG0Z+e#mmT&WJSxan?G5-zJ!w{psYuXWE+e7gmFDJ#54O zokh_LMAOBKWzRV|??_b{ZQ?B7hZrVA^nV+bBf1VsIA%K_u~_dsh@ZEoQ(;tWa@P7} z+G_Cnwar`yNK#?Mw&$-GfqdubT`0j9L8m~;j{&9&Ic#H^r1$F~#JGP^l3!en^Zn26e0nlcN-|?5HcL(zS{b%o`3^uoI$He6SZ#7E^SsUrK5k^R|h z=Owq$UjZj{3gF+~bPSzF6qs^(XdjT#P>hCB1^0%pK^Tfkb3lGXNXr=6jHB{$^i2r? z8^wafdlvX^{O3e`VF0@P%U6iXaCC}Q0?64lHZ2Xh&6Dfd9hP&$DROCDIa1N9xrHTC zwK~9bwa_SxooJf|%$JwhFB$X{BI2vdtBcKAJl%BhiCluzLZH_OxNd|2LU}f%=ga2P z?uTlY@huxF$0DDykJH$wMAPE48R^vZjdLI-3%D-NqPeKmE${|}QiaptlekP0p3XqV z3}75N_+PHhhrQep0#R$}-+`I)PdQEKxrTAKK$$@(6()-Bh0yJi>;3uFg4}|uZU zd)oLsd4ud9Oc_v#0R0;l)EO5(L_-)as>e#-@(>&ZM(!63?7BX7X&{Y`XazD8H%B8*B_}hmehmhAA7pbzgnOlsw>weJd^wYH~ zxL&E*QiEO%wM}!NZ}l@8DH=61^TTSy-@iq9?n3tTKdhi(`U~Nma`qsxK3`iP4`9>j z<=Ofd2{@u!V*P`wk8->bk2h)pf+1(EaVReSzfh{(7eoLJO>NLFiU<3i*iVR&OiWC` zJ}EBOH8$E`X~T`N?IBus_0ZU@jE>NftR`98ub-fBk3Y4bPdr>R0#sD}Cob=UyYTut z7LU(A;(&c`X8i%GTWk)?cWM*8gu=;-@R3jPVA7Fi3np z3sXx&VL&Px{v>L*I$7Y9B?y>5KC25Ok$6Nd$b@K+y6%i+UHI&zIKi8D<7>{8$Q~i% z=I@@!gS-KdB1{G{J`xX#aU)CY8;)6R_R5Udi~U4a{&!6yz?b;@%^Og4Xw^tqh?#)= z*^(umw;U*`kmF?G!DTB~NyteHbV~s9fRXcV!1b8Q4(gIe=v{j#a`v^rvAs>illx%Ep25I@P zrEz#bU3*sFsy(lad8XuDz!IqE`sy>3U1;)r<~rpRZ=0Kd*wp`Rb#)T+UtCnwaMmAb z)0z~ZJ>v*Y&+F^IW*xvkryY&T_UpC!%KSdHYTMmoU9^GQ!a-p|4DZJ?b}=tJm-yGn zu}d2>HktVUx$og4+$M7sPVm1}q~c70WAj`FfQ6Afo$?ZWr__2uz03l;Qnh4oEIrSH zK^4GAkunjUBv^?oUD>BFSMAfrurScb%DmWc2#Z! z(8p^Q)lk5*Hfmgs%(biOw;t{TgF-f(+<1UJWO7zxecxmnri53VnF)%Wlf@)$4v{gp zkqn}hbvJGcgwMVtYT6~b*g{FmYTqACJBFRsL$yXX1VM|6_~lCdFtkJ>Mi zC$UTk04Otj_hVnWdRDmhPTifP7iwfY)`OhV1}xxjZcZm0N5*av%y@nay!STwi~;Im zF8HV#$6D$HM&_!`4HK8kSCsDD=QF?qya5_SieYWFRnLV%XGMxnGjLfJXNt8-g2|sT zG@#y-Ca&DvrUDO6;fd(lGfliF=!AbqUt%j78SM-Wlp*~Co@nwhCwGBr7$$553n?wI z&YlH&60r0O`0abg=OGeTAcF^7p96j&X*v`ExJ@rYkT)?7EkIdJtT@~@b+ecqVjj%j z)vD(T6okrUGehs(#%ks7wk2Spt`78mi}g@iEAHbQ=YixQ(d(J<;yq;Y(!KF$vw-E^ zYMrFD<72PlXGZ#{-IPFA8Cz~xeSW@Jg@uLXzS=heu<}4ObDwmljp^vuVP(5r%a<4g zxSiv;3kj9_Bmk_@2v9(``Ch&ZTIAfM%!BDwd@Iem9>b5%UWfR$Xi z&iYV6xvS9qPhfb;bBp~mLciGT)|G_)lj?P*?gg%Jh8D~V6X_2*G&nFj>%egmQ&X%&kovE?0Klw*t*<#cl*sCC`v9UlG za_cicKAEXt#U$T!!vyrM*gYr;itxyHd7m|9h(@IcudYu6nd{>CH^sLptyU>0L7Sy* z#e=D}v1GnlVloKu@fKoWrO`k-dNMM3p)&mtNZf4>Yw>48n}23M<@vX;etVVl1bw`| zImh00a{g#JMVofSE5>Xx<76S#Sh!zdsk7fEXuC=mg}{SD3)Hk^+kW()IY<>?XlVOx z#Q>!_KKvEo=R&VrRDMlhivpYf_5Th(@-sOe|7htsWIp6)p z0Zzp8de&#nnvV6(;cP^hH!&D#^^$;N z9QS=gV?A58IC^UH*{6MFnHAbS5YoPVE?5s65nuB5nCYc>pN4P#U$wQKo)^{k{&yf~ zBtwwSF9{#%{k2Hk#N-V-wSPd%eUw;fvub`L^jUp^3mEGmJw9GsZt?bC$W772j%xAT z%tc~9dJOxcYH}Nh33qd2T;~nU@cM`S!sj1=saUb&7!4*_TJ5Mqj>9N@ALlIULD-Rz zjLmPng+OnbH`Qpd`8qe1veCw$Yuq;?ZIFQ6Tzq)H zFDy4?HQDPB8{a|B#~iLvsLI>Lo`}rfl|sV*uVb^Xpz9p)VoLrW`QYct2bvnEi%0<`pi-4DaaDQ^Ep{kTcPx#)h2L2Zv{mt#!Dd!B2 zPUU@tsca;Z-;eB8BcPR`rwFB(_4qv1t|TAxtD+&T9t4mL*FgS#@UFMZm}tI3Y;YY> zcwrp;M$m&51UQ~XmNf!YA|DLyNfaAIG2j$FC}6;fh>4UpVmlXePV4As&FJVD4OKhq z7+sn%%+k7G_E4PBF1sm?0g`j7@6DlI2I4*-fde5o#!jF(xY&d(c^Wq-mG!Ktu z_#Olfy=Lt@UzWAiT=yqpWjUR6gsV{EbqJ@*wp*EJ+%&88G=9)YVK;Lg^Nj?P-{J!c z=VznEz!ILPl~RhGy+JK}ecceBcY(@2p2KCWf=0M3sHd>a|0vFG2TR3utiMBIRF6q^U$Y^s`sH1n1e#xzsOBfq4;}0H zTTQ{pn_GBqT30EflpO4!BKXHb!5BzbQ&WTnBe8q&Ytte2MYKM8e8|ly)&^sWUgKn( zDkc}ZmSLni#bdQ*{B=Xi3^$B#=&;e7DB0@Bpf~?IaDB6L)q=2-2=?CGw7-5gZFD^` zHm2GcZ=l0!s*ZQK$b;*N=5EmQjmQvMtG{J0+FF2|Y%^2Cd#tVbs*^gCqr>Is3w&DA z!5ZHe62H{*rCwp2nAMYqRGu>L+}SH0o)$zOEdk_CYHM8P#7`K138Sc57kOn7EO(f0 z7qa_bM(yjW?#w18t`F}|N$@%$_4wYsRMOEN9dCQTssBMt@+Bn+F-DyQHZdb3ZQ4>q zAO=IeM@sUbgvtHP-=NvcPIQW{Ac+1{6K&^-PZ8ujhoE5lPNt8jSlkR=D>2A-$s@QP2CDJ9t|Q{%`9rW) z(-75&hz?VPNX8mn2Nq4?B@H`{muPVk?X1SKU;1&|c8k)`l>h#dGBk8%+=)#CoM0~vcySk89-7FLdLfYc? zZAh(DvHzX2vfWdJu-$17nFjnXh%d$c^;i~Wt*`KvOd8q{0!8;D77vXC+Vc^9f*nN# zZcBJUF6n?K8AS~le6d()ciymk~*s$`GJuA-kw{6s4Qlc=^%b2j09gIJ^k|o zx+n8Le||>@S}aZO$*RM6(WZ=tcX+>sSn&FxdTP?{ct($I<2Ll(EBXBV_n)*^VLt|C zh%;V(7NXk0x8qo`zql3_m7sebjqq>#B=H2 zUqjl?=QyOuOC!U>)w%U4Nk}d#G8$?})1aBO8TB(=Ie7!4N^|=@aglGhhSH0Y&n|O} z#S@nDA|^M!O6}5h?YWHnSQO}|$vB(_hcxvi-E@TsuBJO4KyBiWmkIojV4EXcOZ0fPcW(ri5b7=JX0j|<0TEZZ^7Whqb2?ls-l> zx1SYrWc!N8*QW0_hPH8c<}2}FW?$sP+{ZoMz0L=FA$$_%=ckpx&>B-vQSELa;Gi|Z zr3&)I#H0v^d`zYl$G9S;cO0GF_sI#dG~AC(L%Z9 zrbHz4w#i2p)2V-;Z>_(=M3L$Bi+iVyr=cWqIuv<{uO|mHir1G`RP?+Acox{!SKHfl zRmMS+n46iRKi2CW4+-9;e5Mo=b1PB*wtaV}NK#r@67K7JAE|hCvnAbaX#Muu!WVI) z(fRwg*w+UwUv{l54GWWqKGa%cd&(D|pQg+3fhIH{9haH+$s|!L5p5$N;LAHMHJ#np%Q(NoaapbtvG1cnf(h6e6u~A~)@m`` zzBA_OChuz_>~RKjQd#-7 z#$>*Z%>>#SfS$uAN4V>}gNtjx&6M&lj(l?%1%f}8kf5o6^=>V!m$$JL{_frkUQ#NB z^AmCDaw{GWy()W<%g7W}L47?=K(|Y7ZuEOci^%P}@skNNd;7ZEnD7bk{d_|5YYSfM z-0M1I`9@4!9fAV+h9c{T?F|~3PQ=pf-B|-(aPs1xLsEa)sxCgXarmeN4fwiqRvAP7 zdUr8e<_rYRvYd$6AGG3a(N)BjOY{{pOOx*rQ|4=p9}ag50(u8Zk-sK#cHv$r^6A5P zoh6rj1sgUAT)4k+Bs=&%SOnvASP%2P+d7xWVEQ#I^fSr!?YpT5Q5>L+K0@c@_ z%HG-b-_4bL=WgFnF*(#|HpY<&z059InD56g5&Q$QCiFTEIS;bEdSmkj3FdbX??g!6 zq_gnz*zbLDpK#?*TF!`uh=S4$BN-Ln$9eZR$*)Nu8pn7fvm`tH>mvo6)`??2Iy*dX zy=Bn$-|80-U%ghjxzw@3xIsEqzN93M@lipqGiOxOKLabNsnPi+ynbzwypDgI!;CHC zT$*2_5mGs7ru(?KpyDak9H@vyN#yYA{OOCQ$d9U_rluf~N$c+J2%t_(+1d{ls;SUQ zN#e2zC1OxhEsS^t&$~|nb1ksG`h48@*uNNsSw+l5J)Xt%%$4tHghf1cSrH;m6eKcg zbjd;d{F(Ol;^o8BUE!xi7t6$nmX>I1SzKKIbIg>WrAChAksRk3L#;0nIXQ&)ic%Wd zbXEVuxg3WS+FHLv(69LGtojbFk=Xj zql1nMn3=0%8)|cV8EM;&SoaNCbXI%2cbRoYCCpQc{HW|zk!K7%?5q@BxaOI4Lxlwe zFk+G!O-kqXmK!)J-Q3TDu<=i4^y)CNJ^ov3>w`RS{LJ@<%c`;F+cVVpQlv^m}_ zxfJ1e*7=wJ{$=*8b4^p1Rc0Wtj!sxqW)ux-Gn7cO#aCceKem~bbMD*tY<e*@VO36FTmm)ofWQ_GbrQ5lnEP0;rq>&3+SI*cz-op zRUOy2Z{cOqsFH}N+Z>j@x1=5nw<{#c5bVgzOoV}MDmPSStX667b&0>XOHL`QSC*nd ze)s01Ytp^4ZaAK#q`9rBs?mc&y6o53Gq*q)nWC|GI%HD6RP1Q}FAE@L7s3_9tA`*i zZJ=%a1%o`gWus56?khDDDC33g?a>v>H8q?b4|5WILpjN6e&npBX@{`#klm>oCX@9W z@XdExD2J2dhYXJV)TXrx9{Bbxv_cQy<1?54O67C4WQY5`q?B9`>Bsa6m35&FQVG2f zIm?rG!y*ZTVq(^j5d{6JWwT=(Nv-d49frU9;e@pgRmi6;8y7T9RFT z+@6@2*cn{}0~ykdVlC|?VuPf8dY#8}T*JvGf=IVb!>OXoI=M_r`a*>cQU3NupLaqh zq$8r)(`YA*D7t>mZ{4uy{Irb^9X)>UptHRLCWVPnf2HCrU(J`7U~aK-s%8}D`lsDp zc0N!3fBb7}b=ah6oF*o-NlBf{i^M6yPgcwn`Ehav_G}+VxeTE$1>v~j@RFJ7b@+VM z@!R!Weawv6UuGsxMA8~-zi2kjXa6l??7!NGV>!Foife=&>tTcFTUiEYr0}(KP>Fv2 z6h$Qmy;}!7(P?s$))yAEPuA(FhxHaaFRj6+6X9eiqX7C+jqJXRBC!`C9lc>y7UiSo zO<9EmX`3j7|DaTjcm*3ygccT`Nt?@EyOWHY%hIS}j)HnI>;u93p_}7WitWb7rrtv4^9=z0)mB|5JLKco*HL|CR zimE&l5J0PUpDdpXa$I&xi-IjhDNN6%YWzXVpNA1yiWPYygfdr8_A5r`D`*JDTR0R9 zjTkQ_6QUowaX3<+$DL_}vDn5ynx z)Y~iYJ51yjPcj{{%(nTDApjImis?tb`63kNhAzpo%7)275BKfci}GsRI`h_n-nQmI zBx3JVNTj6XbJ;H(PVH*DI| zCUK0<3W|TGp=w|tXEE+{29!#{N&3b?AUj;v>R0zQ3G0X2bbfGO?IApvREXl8#t_K2 z%o5LoX^KkIcT~IKjox3Zb9|0@w6v5&f3ZYGVcZ?3sAJ}&`XdZK-7)xEF9lO1hLA)4 znwe4vabO>(9mG%~wU`eslU8c$yd91yCKDzFNUV2@0e_C;+OK|n=kW9B!~Mjn^3B_ zxLy+>RYSLBi(1_jzIeaUs#Rq;;%jp?D8`xN`a1~GgH=jS`6>1bBK$cLTf|`!R|jIQ zYQy7H^_~GG%j0l(CIUJIiH=n*eyFW^7fauD{&!4Hz5W=Lp8jSf=WUJ&*lm~2RL%uJ z`X35%vlY-k`ut%0f298M?V~tKDB*sf5Oa+=VEH(>TV0bK!@CCI>J8geVyv#4o3Pp~ zm_HOg60>Ie(m0jZieh`uUBZExqd?)5N>48ln$#k_?SYIetXT7N;@1prcnV{=Va5%F z(V)NItrm{2=5%FDYMM_kxR`G$H{8Z|1wdhlQ@`5o4S>iYV>%6OEhYmjSV5PymES8eDa1ne$Vgrl!lSU(>IsLs zIEk7$p0ikXrfrjF<`#u^UZ1EHmYn{8>*vzKIjDsZe0T}r>5u==#5YrjriNNw`;;j*9#z5a-)L-x5@I=X&Gf#qXvZ}F ze>-A}JRi&`!q>GF{(*Pfwm?xZz25si=Y6-T~JYR!b&K(0zWHm2KoNkXEv>gc?5x|z7iOS8xy}OjVmnpRmj~%2x06hy#A-k$F zj5=XXBYPK|0AdmS=Vu))@=CdXFs05V;rTijfOfV}R)te1U0yF9ydkSeXwv9MHD)?S zk+6>;ZjH=i`MtL4Jfk4fFLp|s_Azm9qJ(6Ui1QClZ+~iO;P>xYCFws`7DF@^381vq=iL{LM+s8U==!!oBB>Cv6#pZxUl+}yzC9P#M6Z-DK= zaM}Dl*%{e5eSl&qRkw}|cY_`G)&cn$TNy?Z-x-c^XN2Z7NlJHS#j(&iCOvuH-!x*0 z9JhKCX_fqgXL%&z&Mb_H>Gci~_KvFa@5m7<)k`ie9?O)(ZW`##XS9^Z_(32Ub#^(+ z6n=sj++m}?f_6C-VT<5FXjNN2p0MzaWBhxF5|O~aVu!Cn&h6rvNDjAtYdp^FhtaRry6lfmd80H8_fObu_fLKKY5>KGI%Er%0U#hUlq9lx}30?r-F8bUQF@ zA@2c|nys~c2}Rr9ou5Mny-CuEBRkJ%c!0&Pry7FkDLoR9iPgtH#St9*4_~-~=&o)y z6WYcZ7+l<+Uk6=DQs;5S2t{>Pk9aGIWhQW6=5@43h%1CVF_eKz9qQ0=J0MTHb)r;J z4qcT!6mkQdzpcNC?vOvev&CE5$+_&q4%+Kqzp;hMWLl5G)2ucd0KtVV%h{6ECj3BI zxcs(gFznBk)Sck36s5p`7M8!q6MZFbH4{}%9wwoE3^GZ+5Xk9Di+eIsMIx%9(7=Hc zS{$~Bl>AFb4sz7rynha~bdyg7jktutOlqYaEcAb-DHc(ytJ!L8^$wezLlje=&M0ei z8~uxCN<_qE!=j=-Ov9H@Yih>Nl#;ouG)dC2&@y+|Sk06j&2yR;7GzX@_IRzakltAO ze3_Fw19F6PiN9d`t{`8W=hCu_*r^tUxKLtYSsr=>C7$X4IOV`IN4 zk*e6)GZznzh6br}*^8(O)4yU4Jr>u!kD>~C+31?3Rj8`YWBzNh$2+@$SlQR9xBb84 z4Dgm0v8u$q{!xA~9@W-RG3Uv5VmUc=#P||)Nwdw3lOfPA1)Q*khNoPDI))AXCY}Ck zHf}s#x~-;Os+y|)h>?*vagspTbmHO`UvW8NZIH&p-z$@MLaub0WnByl)R&F8DQF^o z*8e*3RDLTWXlm|$F=)5#98)l)@0@>4hm3gV{mOV^IG`ohG>muJSC+Pa;JG%`k-SDY z#WQo3h$>3aa0Q@&MdZ{gjuI)<$u57SMWV|>Z-ub*eDOEUESEbw4prc^CIP`3&~*WW z_~H2;a_k>Kd9lPVWoh#awQF=5{bx>AHo$5oitoZWTU%!fy^+tdk2V@|$EDfGDju$w zeW>ZiZKJE*-3GdVb|u2qw(<`7<)<)wXn^g?u;yd)D)f%CbI9>M^omol7U8I=qTYX+ z>f(SWTZtxFqbyx@Ve+#=d+OdqxyK}}n}ByP(VI6&fkBZxCq6U+#5%rDBrk}#rwcIt zW!KiehZF#C-IPfo5Edr(#nSS-eYUNH%;B<*K0;aNM5P09fGjo*a(|Bd(`vpT&?y3k zQ_4dcKFy%Coq6nI^<2Y?;g1!1b|%c+61ro@`G3{_GbRI6`Z!ASsY&Hdp~uq5 zU(rF^)R`o`&Q(*VtMi1YNp-kvwn`e;bWBVi^(7c#J{rQC99a*Y9xS%UvoC8D*;z03 z+tbq1w;%g9?{3qB{g&CEUqd?e-knGG6|M~FPN+)Ar}P9&D1Jr_F_GA1`J2qV!f!^< zoeZs~6?l_0p_q-TM)X(~eLm^e-i%#!d;A1@(?5YY0VI^M$K+^V3QG;RSxLgc$( z7yi%F#c~B}gw&>>hjfaGB`XSUIE^xZNB_O;*oi{9y#-bZKl(|kk~Jok_|WL0D4A*Q zU7-A65hME>q>f~&zS{NhLb`puzU#}+fg>)9KfAg{3wx?G$fTv&&R2ZxAN#QT_$Njc zRm3DU5@vB`ow(!^fAszp6)@CTgt-~^aP91*8|&|GXuuzBX`Zy8~x z6RX3+{02ltKXxDwix3GG6?aYRC83xD7v&e#tt|8Vv58{yf(bC{WY=;--izpxhQEG|zqa~yPtY^?L02D|Ql(;2yJr)4 z*yv4k{NjZjI?~tcLNy*fS7xWFskfwR>K}sq>2a#b5dS-RxMf+sp4^=m=Ug=t;)qJ_ zpq`Rsl)%AD>L3b!1-Ji6zB+54FE{EU&C5=Ql&<)6u4B{KZMMS(VV7CByPu-I{AMPB z6q_s%L^nJREE+NF8ur-*cK-S>A~yaPIr{?^wzH zj*Sa|Mn)=ztbLJ{H2{?G)kaU&%>>Plzg=r{3$;i=A)Om)rKdvtN%o=OL!m7g^sDT#;TdskIzSVcBu+VWPQ(fzQ)p{7S2^ zFZ0!dXS?@48TR+G8@KLi-?Wslxd8M|tEoSHdz6wR3fcQT39cW6 zIB#@MNeZ`64_;gv=>D^}GwAq&MJP3gEx}sXAKN#ATrrqw8M}p_mfHKymw9|v zX+jC6f0oPd(fm>Ec&~>tL46rLYb&|CFQH3jE#U+Vwh7ZPz)Yn-Z(qL)R)OPnUiR^a zD9VMuCyR5z=g&kT=GW)|y*4@qm!L=YA8NED+?<34=5Y^R`*{sV%}FC#Yo0>X4k^cZ zxy26dz3cuP<`ivYnjY0q?;l`q`g^CdPQ*FsB^CwsL^YQGq3J4ss*1KYC`fmAcXxwG zw{&-RgEZ2ObPEX5-6~x&f4p%wNa^Ax?sOH=PC~Y z$?=r_UTCr5o_i#jG9fuTwwLA>PjpoNsvrDlbPVuNaU@Z)UlM)?@J!CCU_2gK+muYZ z#Pb#QG=?L^<#>tHz3Gl5CBO}8e)^f1=#3$onwnzVU8Hbo?tBRmI6E-lR8#XFz)+)a z#V}I?vH8XMkV5Y6du8Qf;86p+#*y7tUf!gY)v-HN8^n%kR;@cKDGhueCiuadrHb&Thnp7qSbi!uP3uaa8^?+XRyA1^u56&R5(9c?__;nl8U<%j25%QhnbSnrj z0+*puNGWYzR?~A=2acBEd81ipQxgT`F9RWTyJt{}35SA$H4e+XjQE1->ZrOOM>zQ_ z$}hB+l2d_k*MN9OkQh9%WZO;Fc_mU2-XZt>SZa3WV@1t?hBk?Zyd6_{J?WfN zr)7gqd~U$l-lzk4q)X)am*dtf6Id7%4{jK?&YT`6D3;+6dXHwxwN>pWgR8f9ww-*g zY$Dy|t_+&cixhzX7mk-OB0`do}NAlv~=j;2UbLcH_r#T9)|z z&a$-1{rh@L>EU4vyWI1$(o~8(&{(%MJ1D?0qbNytugz6&#pIHhLprTh>Y_`0aT`HG zG;%Nsj8s&FxD`DnhJ?JG>U~?t+W($2w^=$0`Nne>S}pK74puMG4k@55!nZC zyqi+)Dapwok0I5I2f&_Bcvu6H3MBN3dDj&zTWZZBonH8+#d|A*j4*MbA$C3V- z?SryckcSG02dcsC+ScH_?-jkd!I_2?Ezl)aFX)dB;h{&s$4_3yb*YE-pWVZdW(2ch^hE+8{q-+wnGipddR_6E$W7 zy#3FbNDsfuqw-)Dt%|#DVr%g)5P6f*aB=~}QB)VHl}+?d82nmHf{)_9E;dLL?veebNqTNPe|2@HrU8e2kvNav^=_k6fn`snO# z5kcw$$*Y26?@BJcUy3eT7m;xg#dUm)=!`9jn!bM!^{VUY=iQ?xV`A2L{L^B@<%BI3 zX-~Ty?33Q1y(48u*Vm{X=;gBgqaptSTDn@G3^U^Lq89u4z24=JY;3d%-(tgA3{ID{ z+EcFxOXwL?n{p~EH#!}1`nCFkBykqy4@ibGJ%9EPx<>lAw9f;nTm^jUj zqwwU447SH0Mh^PX()A=J(V%6dM{I%lP`B9%r&>$3+RWb3d|xOQ2nxVkzUh73QYol`R*ffL=M z-r=*gH3K}=75`!v!{$z1ko>o@v{U_}AXK)tVV>ng$E64N11ST4#DC*v985Wi4_)!fj;?Z>J z;?Zyv=S9E!E0dny79i3up$cjzkoC)Ix%nIIWEPm27=j(uFufZqbKLSTD-`KkTS5CS z-u}0-xrK>I!QHI}sII(?4zUIS&oX$X!jW;QvQT&5Z^o<*4SQZzyf5ElFfjq*upb-{ z5Nw+=ZVhS~we-^HH{|3_;2s!X>%>S$1G+=^>@=p(Qj3?d)s-1nvx)_Y-#Zk7_D!h}_*9csP3Jne|z# zba{SF#G&{^na~dYcV-tpobR~() z>42ezPiH*z$ub6S6}pUm`bsR0{!NhS>9xLh>>L4BR?PaJ=Dp<}z4Nj4c&sA;e+{f& zwx+n7kkCY3OFix;<>jFAN9`R&{#0mZ#dzb zkHdQa?v0{N1oohyl)KA0Gcbce%3}C{$Ir)W^LE!Ero!-O{<<9L zRn&z2$GB%*auAh`LIQ-9XqBR(3dEcKXtoluaQ^+^xJ-P1JYLi;M8XKAot;n5$3$NT z`d<4%GH2%qSs7zLBg^ew(|=<*5ny^#q;lD!jm@oBH^if$QD9zd_q>+qJ&v-y88)WT z>s!pM3xuaW`HoJ{eb5zaG0?B9_%kyE|6nol-o}CX>%agxD|c#c6fLu2q3+HLu}GL| zxkma-7XL>}Ih352Gt>1r1 zf30u7`KF~$fENGgx{It4hkMp<|4AqyZdg<_M(ryg{CS;rk^Kqy5>*rfXdnWUvk9&6 z2{?vqv%*;E6asi2RHP=V@x1u>v~cms1<4>$?}<0o*R5E2HJ+uwF@*|I-_FobnVYxV zUebNHGr2jQsd5B=W1?*jPO9j^Blb0X6)M-K$=UDpRt9TVfI$QGWLz^RYoJ^fcgx)) z-**T8DsFD@c54!n3Id+0S(V)Ki8nSQ{4&*3KQ#AD=V}t5S}76Hrk3q?c-pDf*4VqLw8;qd`Jzd+f-$_-_nCA665zYR-AXkQxT3 z;h6W1?0Wf5CQC3?)i;+%@dFqMR4dyC#^*zUC1H1@6hT-enskBHp$uWGs0~-RgyY&F z`!ieKznGi@%?n@j|&eUO}C%Gq^nZ>5IraJYm^}< z&ST|;`2?N)wa!4iGWiWwt59#fn+Lh7jVO!%c7wXp!at0yc1z8SWR2%V%djP?q)7xE z5SZcm&dJHCWc=LF3w)tg)6!^wNq{ab{!YbF4xwE8`_~Y2NNN#1<7n2;zLvkMu{KdL zBfcF`{_)w%D1RI)B0cQ0#N?8MZX*i3({T?)RmGs8L*J+}A^`PCCb8nG0XZ91#d}r# znTDGQNyyeZQIxP5Bu~epb!n8UIDj1rc(L4S8^m$sf_~KV}eP|D$Hs^j{Mz1+jR} z(U)7aI}(wonD>=*dvoRN{nCCDYEm#jCT5-NfrNO$f7j_13`A{k+Yk+yO%yR`;*v`P zpn?h|s{KAzRo_=-*~TvS#T{J;{g<fBEjd9l?TJPpv?^1imIYfJTxH$ti0Hl`%2&5;O{ML4Uv|^e$Degq}_~DXav< zo29nYckljaly`-)S)ck|$Dr?(l~u%`KsOcS zzX0_DyqrVJ?{xD5k>WsAzhB{;AQSOWJoB;b%NjaC7;YiGTxD8j27VUAuW{{dfcY zp%n-+xQ7RI{*qvPLK?ZPoIQG0W|WN2%_g2YV+eCB%ahGa-TF)D+vrx@gAYW4@&l(9Tiqaxbq37&SFBf}QB;Xqn$ZS`=l!`Wcph9xBdw z8R**dfC;fBApJ?6i2+a~P-{3zIXTcf6#SmpEo$u#52oV{)*rFSMi_uZ>&I<}I)dTL_7n&1Rc<{7eoS8xS~@zTc?h39 zo>@#+&hQGYOdbhoExny0b_iA2{bL)1F%fldsEs#35xbiF3>dAUrjBgFBG^tl9;jFS zqCk@c%5FJgO)B2P*I$$N!>!!X=~@e#?Eou<7U0x5hW?F~PSAn-5!^$)^VQ6^iB?l> zVfJkI?nJORdvgrnfoDmyu{hPm_%-}HzdQx2sjZdFdz_eaZm!t(nVI4(+lPc-5CP~p z{=(MEDQk$p;3cuwWFHhc0URmvtIa5?Hzzo-lGbYlBQ=))^$WzEK=uR;HB$xwcyHFx z-g>q78B~m!=X?Q`9pBsc&Q@h`YRSnpGowgxA0VwDP7j_Q@NEkczLCGuw^bU`jhs!~ zi=4KS&N+~`bP|VefcZ>KM(k7gp^?P^?S-W?%Dq9JpQTpRVmx3d$E@Mr=RMxxe?4)7 zsW-m92ED>w^g;ICw)leofr^qoyu*Xu9h{mWI_2;?c~A3up6 zM$?Mcaxn!`1A4?!>z*7bWeo>P)F|=KtzM@xMa(UsV6LuO2!YAKe)!264lJo95Ps7; zeQJTNy#iO5@NghDcyO~{8l0;o4zt-M5rjszFp_};Gyv&NC%_^O{?zzCetLaxfKo;f z4FNalMs7e2&_u!zsJl_<@3$Vk09(7u=5uW{hazGWRnIZteiVh(8@{!W%9K9U%mT3v zNMGLb_0Q|KU=euzUrghhTCa;!yJ761@tm3R??ROo$;l}__9q6PAzXlHEG_s66$hK? zXAen0$ip`Y*p()vTA!PrrJ0+0$kdGE_Q%^U)7(M7A^G^;U~`5y$y&Vp30KAjy-?SS zJF$g_Nd7~&h|_JKpD%4$mYoMuLY8N)YBqtodNP}d)74ua>bRmfkP3$f5eTiuL(>8u zoHADz8SBx=MUZ3Y8A)#Q7}f|_GnoEY@qoNmls%X!sTzzwKZSa{P>=KUB};15pVuu= z$UJLwJ(AhY78ckTz_yv{g_{Qp3A_~4gR~QdN zuEF6&H)wlSBb~+U2fb8{yG|4lj36GENWcPx1lq2H*xeeyu@3ACAb1zNUnE{*cXz~j&@D{^~}q>?GCUuKa;wxdi?UMG_DkhK<8)bKmS?%a9kyhiD8S3 zSvV&#QIO{5?dIkbo`^XYYM%e|IR@{gcIXnyPukZ5zWV`O9LU7&5B*0@Y7;}>{0CBB zyCEKr}UuValurL`h7SCb%WI0(>S~Z_6Thp&=4C}nRWTo+FA@|dVrB2pa#|-WB$08ds$ z-ngh5A3&nSU~&q7b0Myrj(ll{>nC#x#&w;k}2=Z zFucBe&#a=tdsHY2KSLR9?bxDV3)_O^@2}SXrPKp0Cmz9UE_)+|0vXpV`b6by6#_St zwz_rMj~|6D3yqEXLBq~#Lli{H2^&=NrGo}~D8xeyN7Mov6INwj;?cPQ0{~3mxpvw06&0EE)S4!ld8VEQhs|gfZ0cYg1ZS7lwV&O)e zR%jL2%zXe1mG2}L7Zim73sG|2NYESJ=W7CwPu{YG1X$QOTQSuvucZ+*7Byo@8ZIp4 zZ)T&hjTb+^Rf%L2Nlo1he|n(vv$D5C^hvEn?D#jvaWH1BOHmvVPn|%(6wcl|-A!Dlnx*kSF z+|}z&BK`S71o3lnLr6$J+oUAIlve!xGE!`byBKFJ6x5*6M%h*}yO2K8XVPkPbu9Ce zQk7r^vwa^KYdnW#xCHN)wHJOvCN>*wFTSnC+7->{U6g#g!48G~Nv>iuhw4NDlwPz8 zZuRrH4^Ux!@Nswo9Sq6Iw_7uSmBGDQV5`lm!JX^)8d*^Qnx%rG=h*2>J&5iG8KDh7 zQ=&veq7ReN!KbaQ$hMj>So?Xm^CwiPm3*;L@aW!c`17^S^ai&l?`N}KP_Y^ah+lML z_8mI&%6=kNl$y=l*Ux+2VngI*i7_m9J_^XHjOVfLQwn#8gv!yR=1I8vdt@=SS8r}! z6$hDKxpCE)R}xsXT%ji;?X3{&&bG1nUtawf$)6CR#aI1%j8m9L0{H5&mm7w!s}Be_ zRgXZC{%bt_Q3_0saFv$wizIDzo1dikWHO@(uj`db&<`k#FO=GqZfNeGLF-eI$t@x2 zpK{Pq^gz!-6RsgCDV_Ew4486W8Oq2%LeG0>AngTTuH!3XAxDt&kbg}sZIj78nkfoE z5?E4$*g<~jk=wuNEMZFAb|oI(Gr&pt>fHRIm?M5%P+q0z z6<-;5sH`w0uY?kpnhF~eid zMhy`VMZJemgydC7ETlXXikfk>A8Va~0!Asi4}ALW?qHJ1bM&EoRW(YnMkR1vP|*tP zYz2eWzy3HkAveD9_;~))K6;y$_A4`8!^IT}eh9Ucl!U~j;OP!Q!HAf?@7?dC-VaMl zg>w-oQ2_(^;rQ1Lpeb2ZRmXz_S3Yo#SQV8=15889$Ses!J2^VK)A4VNFtJq)9v(^f zE!h}%cW1ACl}nxGxJjDvFR06(o(UBzb$Y%l5CAspgOmai_*JDxNBa-A&6bf7FbXGA z!hmrHce$3LN~Bx|>JlC)bab;HNb{tqBm>`zDFA;4_-|=pw+J*rrNP}RThy%qnH3c7 zcOH9zFHe^ky@+{5+QPoPZ%j=$@IL6jkCRa_H!IBFnk?N zn)L;Eb#%UEd?jvBQ%}%T3rSwqdsWXtMc!Ej{tLidqTUJTe=m!gh>PRB*^bQnH!+-M z1!nsJ|9Kwx7|`^9!G{RYRj1KWA1;qqtYiob;Q|a>CiE5|pF11@&2F~6y9Ly+Is^o& zq7cR3qoJW>?Ikel(PRV&Gh~FE$qBhA;N~|NGh)2G2!#BD#_?4{Lrr|V z$=(@ADrj(Uw6x4ss$y|l@g#584cA7KsAsg>*97QgWr5pULM3IY3R)D^g;GXC38}A# zj2HtVh{f>&`&$)&H=Ps-*_jmc8rFq8k`K_2~h}IQ!QW4*GpxT{0&mpMNw0t~<;RgTiW?_iiP;a=*uy_`@LX}by z?oMrV0H9Osfb$>C_`}BmIbd$7c+(BMvraB{p){Y>UCn%+uYy2HdlmZHIsw5~>otd! zeRkSgaA<2x)$191>bK6F%HQNhFhw*tE{Oh*=HTS+I+(T3A6sQCXB7v=^HKV)BO`&> z+pTdR)7*63nF-=7a=N<^ELjL+X}hgh$z5n*y?F)lAhKIy+N)Nv^cPYhbJ*g&Q_Q-6 zN#FXIlSos#%ki{Y3Y$#{1>q6XMAd`J_O^fb;^^@!BLF4(UP>2<0ULSn2*#NA`tHX4 z*di7SVPP$+93fuwGoAo|Q_RXU}W4qL)Xd*rpeuUi5Aw6`Ug% zAQ(oz{Rs8`$ljZu{rtk#&mti}_upS9rC_I^9AKGo(sjs_R~rY+B9m;(bCbr2G~H%C?Ss#fGJ|7Tob*yDwP@F`7}Ok zv}JGZH0gr{o?Gb}eKnmZHUW?Io=mO^<=japCSF`nxDs-wlGM<1Ga}uIiEn*|Fe8&x z?P??r>Q};h{~b+Cb_XVI?sVq}I2}&B&9SEIrb^J)iZF~L>Rkv$Fh6$G-vU+xkV|CS z$_-e@Ll1Hxj;}+7$h$t0_;3D?7oQv-LY%oGAXd=(4jq^nlIt>^lFKTjv|==MG~R(V zYvd`rtSS)@R$9(~5wVeoV*ut)-PbRU84T8>b>GbX+J+BdKuu-5us;Q?gQ&AHcoeDx zptq$+;n5|4Shuo{1omY%b#Z2%)Do7RR#(9x_qk{qcl~ zdMJ=kHaR%XfX0mBaWc^6yj6(&=LT%pm`Q*yD=%iir(^&^dqYDXbd&hC>%~F-;lt)8 z1jLcN0&or|@mr?_zltixXoc_)rVuh$a};roxI;eKajCawF-fKj8I#FBlztC@kpngE z<6LgQm!~?wXL{a3{AcRv+JJ;b?+m9U3o1t*>D~6P3aRjNH?C@({sV};; z_(y=*t=^@$fv1x-)qNTKiHlA;4elRDLB&zl@UUk0V z0v@D@quF}f@_@5odpq4UdfR;MW!{kXHWP;X@3!L;i@nVK~-Y9EOFN9`)^>1(4#t3V-@7)(eFtRsiq^&L? zMFak-;&GGHDfz#jf)p>aFhA*;dTNZb+(v*N7i2-DhkuD_nF#_LrS^k>a|1?^!ohEy zagcBT_qLudKj0Gko7|HomKMS`OSC^~#SnOYIPI#BcRq0r>3gnE08Wa1k(Xc*ZvE~@ z?I*xAST;0qTC6mK6G0~G8kBAp448#TFkMZ82?!I*T?01d#(}PjTmle5B^>t03ri3q z)H=xkJ^3e)5HcTszuZQmQTdP0-24%+&Y4+z94fsx2gYxKJ|wL;+S56RCOtk9{#n=+ zne$#D<*!sWgf`$+ZxcosC6sF)w{~`R*8eEGp~Di{bNyT8j8*>ONAf}>DyNF|a+E`( zB51R$hT~d%(_fUM`Rda8W}-@a<74kS%An;`C5hy227=+|mAG7-m<<`@9_~#~Hu#EA zbX1fwU_izON*;?$;;H{t)RlQNx3f)u48E4%F=17;78&;@3dE|pnGq<`r(eG4geU@D z`PHfm@bsLeS=pz55)K@RHaZnP*GogS+ks2RB&Ra7+Hrs(E5l0Eg z$W~yE66p1y%s~^gSMM*x%&0>-HSA_)LjG#QuJ`xXqM_E&0+vD0;U{05b`8eYn%th+ zL>?UklXzbPLky(R*ha6Fy;+FIXjZh)^+q&~miGbXhqd1hyHCN<2;BNVz@@odBL9Xv=#L_1LFLe9mp7ki6Q=|{cI1ZZ{#vpegS>z^7V25%+9cOD7AKI=r4NO_qJP$Io(+Y zn?b-i56>b?PD=ewXttt9q~4;ZCy3AZj-L;Y2E=DZ{~GE|@`0 zSee9HC{aSlQw|7o2r=Q8LUbr+>~6S3%Fwq2bcQvC2O)Y{;>Cred!q!h+6vIj5Wb>2 z)h`bu{nqCV@hB2dt;Ua^2s?bz$cd9vL249uUz((O)}8g+Hzicik0r!^b+8tfSH)F= zjMPk4Yxigv_!?gwm%_f&C~bChi42*`i&cWW2?)kS6QMx72f4Bq7M&0opX-lxv(r@k zHa58P`ELin)g5d$Ytgh5x zAPB9qA%d8goH_2)qRydp8p;gR|Q}1hoEfWW(BDo zG9VWMM+>XVg9iwfc7y2WHIpvxGmw#Alc5un=pcy+ypw^z z02W58<$xEviXU0-qUd#4&thiTuV3`ORsmy+5bGO^uVq7}c z_WPZbX_oA6oct*oCdb7)=>GGbKtkesgwl{W@Ue`@UwuaxHR!rRoO6s+%wj~ETJhfa zb<9UDVKhZ^)%P`^^OU{pAOZD^9rEqKV<@0oSUK$9n43cvT5eMaapayMe=GYI6W{;+ z(uV3>n2Ml$Hn+d*%F@`R0!Dy<1DAUuEXxnCeGn0X_B!_Ug15J6qt{Pif{laVL&WmLYHe?h?8%>1H1 z4WKBFF}}6P8Ms$6xg$H=73b;nu%jo&J4997@Ctrl+j*>F(@0q@%Ezk%UJrabV7!;+ z{TB5aru#wiE|7(BdIqi9{%~RjzZ(mpyZ%qJJ3|oW{gM{1)TL05@`V*^?vXot_;4ht z`4(E>4~Vsmf+~qGox;V+7>YORfWYX<;xPr}T}?6H?=yP(Q!o@G`{rg4RKE6PiP+JRMANH{zXhnPPJ?l;?*xf) z@g|^{8rc`L{tym}v=WOWb$XsNoN&Lg8ItokU23k;Z9;T?xbDyX;U}R;Ol@x2dwA#i zYI1q{C0$D51cY$fXkTEO#r;q9!KN!njh(4BEbFaFzgIEN~C)A znOj^PBLQEsc6_{?Qn;oSt>BwC>lEfte&A4mA`KB4%N1x;gRg%-j z;@ZjBX8NH)GjH+yQ0;W49YpF4sU@ChwlZ4s|I5oX&p~(d7L+!CE+8+TTnCJ{ALJS> zHidwvePVPdDshY#)NRMfN%5iy2HIy4pBo~Bt-E(lj}I0nOvA_~Crq_c%DT3yWn#KH zi<1X`u8Y-h+V+@rB<#y%?M?dQq<@hnMEvW#czl+2$xd=*r{aSf-)+;=T)kVS;T!w3 z_RxCbCcM;|H12U+sNU&~XubB;0||fK?i`Wn_J3Xg+vv(rXtv+K#ryi5nJGhzMdo zIaND4yXFTSVYE>{u7X6LYRa8vWrM+HW}jzK}6&Cb{QayoyrdAR_) zWiB)+Y;}anq=zPQu&1Byq~RY@U;g`TD&)NvGdwgB!(ur$z2^k6PCzJs)4W!ckwsvC zFgG}{m{}46RV5+r)R}yp-k2gElw4?Y#dP|{<_I2=$B39!NjbTETQmGIh5UuY_T1+& z^v}oG1LxVle=i*t>L$kw2M5Ah#lmeUV40CQG(^F>z* za`>I^F2?Wdb`_hl`M;}wUV5*5>gHKo9}bgRw0MNBJ6)-Ja5C224WWyGARil3!_HCg zBMAfiMAm-~WV7BO(eHR?$F{ag5_0c6cJS8N>%IfC&-G;CHG6wolfDF^zM&x?z~|+& z)?Z`hNBdSG^CdLQ^WU!;WTM-LM=$RCTc_;<_1MV6gBTV)8dmPR+nSqA3Ffe{#DvQ7KX(4*tH-06Yz0ar)Yk{0p>bW#&hHxShf`R7 ztY72^ENpKTu$4lc=L&$+-2by+n#Hs1|*47Q+Frl<}+6&7!(weZpR~0861uD2_jrhq>EHGBtkkAcy;7(d7(oOUibbbO8#XPCn_jO$uWqEW$N)PEJSeC zZ!sk%{H7{GSRqzk5^SqD^Bx!Y?o(v^muILnVH4Eu9n6dFT5FS=dfUqKQZywkxC0#c z#&UJzw*H!oZ<%_ty1Iz)H!=KB@l^1nxJ9NJw|UOZ6y|Y9nJOiFV3!%>D9hSsKClATi(cHknvVq<=8#j6Mmq*Y1>04c{>cQ1f z1UdVKhV?+i6g$u)c2L*mgcitZh%Z{9^fMe-a&MtVZ+0RC&cv7L zUbagf)Vr!E3|X>9ON{$>ogi@W@apVW2rlvOktf(PS)lPU7Vv-99bifrk5%+s{yX>` zv-^WtRlfgerPpB)-9tcQm)rfRL%06vhKH+6^=O zqJ&HB#JZ+GVc#li+&u|$?pt_r1Ck6Q-H!$+_>)KoIZI=;%~}d=X@V;dqqXMY)F39SfDe2PUz8#W2Up@?kh4mW*(#w2B{m1K* zN@O{1Vqzv9Z!vo6AsAe*bV-(a;b) z8~gkFGNzW62mHK7c4p#gAKsvyon^zq{^1)?a{Ze;|E|J(rS0)~QZDA@(UpCMxrnm3 z_+mef$hXZD=8BNWTD40USwmwRuIH$Qmwa=R(?T|N&{Zt#^h)IAOO~f2_ph@+h|G># z^3j!*Qd3hgMF-{{&l49Owt%qTA_zFM>6FreSR9rvzs8leg0#Iguu1F|`(U!TjZGcm zl46l2WMuH|CE&5_;S4nNvp6@3cfXnr%o*A)pT@|^Y!rau@m3cW_%o$q!`@d;HFe|y zG~p4qpMIK}Mt7oWVk<{Rc7R#GCyvVz?VUp4(g01EFu!(Em$A+u4i@e>uWgb>hC@sYNXmNNrEzHwZ0t!egg2I-md-7-;_9A zq;C23&-L7~Q1I<1x+wNmX)HLIL`s=N;`g%8F=(z3(JG6#v)H;yxwCCOf(z~E%z`*y zm4x6_V0+pMq_i(@x4skma0%*_NBPU#H#&^IUTuaS=W!Fw>J0w=&vz;}1YnKvS@qAN zW6-do`qEciRQ97-16x2&PB@b@a?bxj!PHOQh5ay|gk_4490OhUsP9WgPGzH#Oi~T0 zh_&15uLOSG0E74#Mz;Nl>G|}ua1_gh>m#Z-WdckYJ32#Z5DeTQ4>{Gu+@bwboUX3} zDfhWQa3I=EK`|(Mz8nX`$GRD+T;5RdOuX~~7Z0DkMPJ}u^RQ!VTK3nmSOL!nIT|?KwQ+iSTCTO9tloGLR#coiOnjSuilTmOq?Mv6 z`VjT))T&sqY$)0j9X&!;o|2g=boX{Ev8 z_@Jc9V;M=HsvdRI_q0zdZhKf1$HMgQKbo zPX7Q>4qxp}fP7|WcC_Zub2@!eK`@t4yZ3qD_Kz6+#qT32Vp-lTE;eg}g2IOgzAR8_ zZ2|Gjqgp@As8h};D$POnA?z)j4egq=K?{g(LtGn2gj!}L@Q7d zDcgFsFZNJ0A-f$nXswY|rx|P)Hs6xZLBg2cy+l$e1>4gaO_tq$i}5Abced2e^xnJC z1gw`im3@X^IkGF;m0YiVQCnNRDwaMayA#B}`IGk*18f0e+((gvC-5yxgWP#~#YbHg zg`{g}W6PW+CM8v)(-j%s)ZMeOI+?yzWno`BC^?1HmelZ^S+>VVv$jfpEsc-Y zhK1$eHWmYCSspfh_P&lf`R3MwZ|8M^0YtBML?r0+Z0#%11JJ|q7#O)wGJ&6MZpJXHOf-@!ta(ECGHLqdPuOAOUF~Z^SW$4i-9hUNi)r3 zM?zXpI~-*@)UkT>T+csUOY3Wl7;wC9Yu*?}OzVK&obY)N3Id=QgKiF1%| z0%kh;ugKW9yLi`Q6WH*$hYcUH^m53JKAOVBK9`?{?m4V{RQf5| zw;Od`ugCDMy@iV{G?GJ5jeC9~%Vk^}P&!1mQd{W2BJQm`#pON`?CACiAk9n?KRB|chWTI})UoYqYiIwrwM*WO; z{cGfC-haN*KI|6r`5SA!p-8HHMo@hvQ||G+^4~Ksh)fbxpjkq`4=vi} z^uVz&Tt4l$MkMlexkK=|*~_)E@-I)G0>QKYgT00S1rm51WLMVybO&ZU-PgJuOg}ha zOjWzvj)5&J6DxJ^_PZfto7~LvY2iBsg}hw4A&BQDbjEu7Ly@X~49&ef_JU`7$d6)f zxi2JiYv634L^&Nd<;Z+yboJ}oldkb%0goEr8;8oFA}Tg6ZVQuY11^)l-d_5!Na~Kz zDboIp5sshN0;M20j9S0ZJ_Qzspr)iHF#f0MRFl|LRfYTEgM-pI8(h%tM(1ifSXX9h z+Dpm8GHUas8$jJf?q6N=(^bY|&)Q&jfD+nQ=({sb#~c!t>di3>mmu!*nOhatg%`rvmdw?wtPpz&W2bR>pEL#tS>4}VHyM$?j| zB33muZR4>YDq+^gU8>9)SSz87`c~unSN^pg$2U9dh`$dUJ8=oE#E4e>(!k0_ccFDK zNuwqrxa4kpj4V-@s-R8 zocvi{$&oQI5S(aciOtDj5MY)`luZClX>~ZVb;Y6PmX;8s8USiabMK(DAH@VqQhEyqJvQ~OJW_F#!gN84=)ww|4c~Mt~y-W^A(tZB} zf~V)|N)2Qnhp1>7rS#SIoY3w#N517adyX#7m3aJ!$zqzOnyRLzI!}F_#!B+>D;RR_ zdQ{oi(mY=19nKsSp$jRwg)2}0M*DYrO|?Wp{&VK!;mQ{q8wKs|pvOTJR{V6`7USy% zNO^q2$EVqbOGZhhyF!&KP81!n#<(#nz!g+A4iVWdI%#38oW_ zgZVXN2)`;UmmQrH(t?>w-1)YH)FVE|W+}03zD`nMD9kS>w#&bc)lrof@Nj9%;3FWk zwfShHR7~EOfNCUo(U<2EKU3{T!Vg1noh%m%9`P=_^!CKvvyTC zYQFeSg&Y*b`||TgT5~ogyo>QB#*<)v3e|SNAxp@&&5(`WKpTI;-f6VqP0SBk(S!eYsEISJD{C>@S`wu0NTi z^0>cuxgS8PT5kJ(@hGx4<_WebTrJ4WXHlclO&KFhq%ydE*Vn$<3VYXV)4`>`P)!W3f(H~?MsdIuG_ zG~_8`h5{^a1fJ#!kVd^W{2}j@aJ?8eJKJFUCs2`?xS?WGdlGA=%iXpLY!sb)wEUZ7 zFwS{vjHuF2@8}=yN+SbkR?6CHGrp$ua|CmW%yYWCGtJFcd3aQ$b4A|}`@~!g#=HI+ zk1v?3D%FX=nW<4E;`jN)3g8+bx%4(GoW$O~edQiQz6!NsVe|ry55R4dwe@wATomrV zf8EYcjqI8oQF^-KFAcUe3+qZXXVP<-q~n08=;t&Et4P z&zq&XHfy6Hy+|7(4Ks-)f%mQhit(*{AlrK!3FRU zZxPm+g2lAFVm+1D1AL44v$Yhx{2s6P&y|b}G(-t0Nx^{a9cyX=@NrO5s(sGCQWxWL zMiYy;neo2C?)N^GT#NHA@&k(@^|w5#60q7FUtc3yO-Ua5X!=PF(#Ojs7Q#%blcqj0 zBk!Q2qV)jM;%ve&U}9=23D56=y?=>-p?)#7npEbVDrDV4UcR+T#&Tzy)n|sD9OP>~ zK)zAKim4#xpB;COAY5Q{rF}-*M@adzYYhbzZJ+Ikfv2>P>1mbfLvJwj#>93Q&@1TE zQ9Om_7A9s^S_hQAS6z<2vQYlR?c^9XecygSnc6Xyk?&9jN)^0?5#EJamnK3 z_TYFz4Z2yFmz>-n@kxb($WTqde36=hIV5<%EW{*!^rv_eWenVXiT&#Z!0O$_8oy=x z3;I!*9U?%Mfs}QO}q#q=#za>8MAFEGY2p*wGO;Ueh`UDPL%C$3w`LL;Ea8(aosA#%lVdfjZW`L>YG1`i zhDIZ~+1aO|ie{7=NVK$?ub923M1mo&bC%`-&GH!hraE3fV+hVjNg4P0BeL`9hq1{9 z%1wq_0e!L}FAsS3_L13_xfoQclOF-#U+zFZQ!;((fqS*ip+XmE?S0FxChg_i@c*-cKjEpETM_mqfrrX=l zeQ|@z6xW6DtZix^+`vqAlxw9^5+?ymp4XnM2nYje<-SJ?^(R8j?x#N{3TA2JCFOra zrzAsqwCp9@bpW2yZr!Bqyr5X;@n*gdoc%l1s>hIs+SJh`dKEr?l-0&GI6?9=AVTiGXv}(m2Ns~WrTfD? z6jZQSg^ub^6~>@&`y!fovvOvR?ymWUJ}3j%KMI7>L$1s8%79tt>yOo|D;PwAe@A2_ z(X2$|qGeh*T5La4Gz;kCfYSkkqHhujOn?@T%z6oXoj^(YLAJkd)PXaSO35p{-T|Fq z6d|Kbh?**oiJKu%{ytUWYSeS!CM<7K9D%G#+(7m7dTc=fkGO#U?AI=ax-yyQ$cR=8 zKb#YQ^2cp#^$V&wWU-0Ano)*QiC?H=;cS{Xa)PVlL%lNp4h&)usj2P4ihBBbDcHFZ z7(7bX8RlVIE!^!reE`oD!qHtm8Mzx`jD%Msfj|#A+isiOb!P?yu^SnY0oy^ zbC;uHrUMnyI3Xb!4O2fV3@5-OhJ{+(`454zEMpjmHfB9}Ed!Z0?6mV#z(i0lQXvHHHGsCLQ=C!wMB9z5O(^4 zR$AQmGv*PtCliO|rsPwYt?40o4_JwpK`y!}wx@PI{=&Rha3;Mz-_;e5&mb1J*FU_7ez zpR$#Oqg5xDJ7-AKLVcXY#lF%HhstsV>M!QJZqUlKI#8Y|-MPB0ON8h?1*eah>zNXY z`y~YsJAf8>QXD!QvyjN%*)^|zRv$~1uROBllo+RCUHKr`ecNX{igK15&z`|CMsu2x zZMYC9`uL;+WUe%6KhWWMf;vUlLZu2j3y=;xEa^z~=huy0Kc|CLDIrKK5@PW`%I*j2;XGC37hPMK8_ z4oq!)6R4cJieJ50m}D&vw+I$hZ)s_VHB0^yN18i1LH7n3o8h(Cpjtun!JWbvo=hheR z0Y7nRxgrExBNdPAD=95!ecBzOckYRBjh(GL<8j4u_Ov*HpV#PXZPY}!-A>o&kGY<~ z{x`2Fy@8lqG%&zfVf4%+g{K!})79t1d3JYjaM}gwvolcRafiWec^lt6DA5+C19opw7zq{uoMg z_k2H9E;cGmG;sjMxj!$x6n%i@Ef{owuV-R1uy&+*dwcU`l(lS&Z|ldkQ*~SCOei2K zA9=i}8^ST5rr#o2oQ&S4A@~Q^O;H=PPd>lY>?v8f+&+0j%y+pcMEOZgGPa5T7gx!8 zHGzl6Kar+u9h{U|r`JA9fgZ#Waz~K(gqKkfSAW=K^112rp`A_gxB(e zL|B77tv;j>k7SU&f3{SLEG4n9)2b)zE}$i?2ov{RPv3dyK})w&!Za|_{%qsmun|T! z2(FpeH9!8qCrzDi`zTj8S^Z??Ft?#6V?{JI$$)+hia@3lI3p;c{?;gR0ut^vnyvpJlYqgu8$YnEa?#zOSm{E)-o11JZNxLX)(JJv-UZP(>bN zVZBn!dcDKRwncM(Ng}n+rIPHj7|sVUC>*iiT!)GGQ!s&~!M}NjAyfW8*D8a7m7o>^ zlX7%GvmWxfXUjKy_U;Eaw2HT{pn*p`Q9;djna<6bL5UN(f z$ThnblrGkT0He&qb@55&Dpp;1-M1h-Bw>1>xZw8E(t(M51f=dptZucve$}r~d?Q^HEqni{L@P)6?9r0f4o^3NU8q#|H@}L>zWxx!am}JoLi< z_um_NZ-!aH$#A9we@c-G+qPOCZ@GExb0~-Z9qZ5s*LxFO19#FNtMhhFQY>cauf zT@lo=c!}UgiL6QN8<|!idhy7DSR#U&(0Ra>!8IMd<_cBH4ffT6(T?%?>&I`Hj}o=_ zC)*@zWQOt5AbJwpF4+v+&Hq89HKZI~vh`zo-oTU%=fR9g5J6w4=2%>SL#6E*vZ(W3v16c%Tj+9z09$c2M zby9%vO%&C?<h7fpMr()7)GwO&0L!#zo4gI zwA_?7Y^ZaxO988I-r0fsf?U=>20K()8PjA68&IP`y!*#6HNfaZGn&hCa1;#=_S;Ei z*tE7fHr~94ScH)FcSq5xZ1LdK|I_jq^oV2HnV$swxj^$(PU4#aGN3BRY4PNha8muF zV8Qw`Rmw*?{iNv0IU0pEzVM4sXFUC^fuzT^$(p6);!XL4j=o)psPBc4ANT|jSZWcA zMSG~k9-or)XZ(ERgeN}A-8G;*h(x1k17G&ZE+kr-kMFJVxIf?`Cmf8x3nw+2>oqok%N2lmm-1Zj)FOJNz=0d~l1vLgJ?t{1H zRpCclAwZsI7mmc}pVe4e8BA(8*-X22Im#T;?*h!Xna9bXZW#GhFYSDA=zEn0Kf-sJ z7KO^|+&MHidxtvvR8-mk_nE#C+4_{sQVN*DCb1Pu69a?V=TOt6pBIt7C!W8ZF@+<^ z90N1s5l_aI*AY>BWL@VeeZ<~b`->QFdZNKpA09s$)x=jXa9u>NQ&Fr5@2H^kYWeDf zr)5{@R!+&c|Kg^A>Y2lexY&4&K0cLCUTn}LcrJM86!!Fi$4{ORp%Q^>vhB>w98H!! z^NP}dJaXopnMqt~o9}GO&A-&S9h{+UupQ`KAnySggb-nq-I@o>_YY%9B?+3VaQXsvTQQ;+UNKo=T6vRAb9yp1e^uIX;TCXtMV(Kb3> zF-i5s++`IDX7?Q23l3Jt*+0j5ZEeGP9Nuhsl!;3zl6E9EDyYr3gno(i%1i4PZU*%( zIfg!B&g-cE%ex69hpe;w)=1kM(0`NjcxN8d%F{6+6 z5DxzmP?Ku*7tToIz#ak9Wh8W`yUBsaGY|SC__;vVzc*wQ9jaiTAf+J;LolugC|wu= zS%lH71j()b`@>nCL}JKh)oEPqhGV(E=>nVd3J82~2kx#6n--F^c4vY0&kzMmH?W!` zg_q|8`$sBX#vnj^eJ?&XGB6tmR4wnTD9KGy`=u9`70A7{nVUM#sHP(+Pau!qiSPl5 z8yuQ(>%@E)LF`={;bP2k}za1%Ti~m;^wEonDP{T+3f4r(mCJ_($UD0XrNN6WSt%EHNEy1bj~9|Dnroo{LMGj z)7RJ9A(X@Pm}KRD*f04j59w8EbjPGoGN`t8HW|0@rK^~0l8rT82M*HEVD3!I!I!}k zP^trtOekUU0S7D^5s1L4l3O$357)q)V{@8H-z83JMDjjIdeTa9`Q4|E?~ zuE0z)q*S!Pz!f3w*P4S#JD-Z6%hm0EO6cK$I-jZ3M%a7FK0e(Iw0a;D|E&~{Vo4bT zsTMrTg41u*`DI01uHW3OqMB9!j`YH%#CEJl^h-^D{b=w6Y#`aeOu4*XR92#HZV3~) z8N>aa5%AP}m+?Nu!ZrXL&845;qmNfY1SO}d>rsm?Np&r2V>Smi!09!8hymyUODMJa zHLSGtE6x4UHJF;33U-LMecGpPmsjlg^=_cefdyT@z#g^OXraj6QgT3&%^R0eSPow+ z9rZKRnZ|Gkb$LQVljt${vSxRenE7E!6Kqvd-bIK4{vUZ21BcYm1Ow` zcM*_INmIe2&qfaoT#4umsNWu;qVZH_KSPH0~6Ej zX_SeR`o(@sB(myQ5wEpRN>dZ$Z34?Ln)mOWL-TB5+Y@8XKN^762Rsg^_z|anf}~|O z`ap9+p|=lihBJn!a}5btR=i_I(cb?h^MXcm(Jm`qI(avxEZodlhTy5xdi2U*TuN{W z=(860bSL0)mMzhg7BFD|T*bJ9BUplqJ&@PK-fQ$NxV-zr>IK+qH)l*qT8a*7VY%za zvY8c`47CpIY$Y@+fwZH?ojoeJ{~8x%9PYS+%xEywaf;BurIz5%ZTVSgWD{1ZNA8c@ z103IFD+kS7fMuz5a)M09C$Y}VC3Qy8EF1lRl{Q;get7EsKm3YTFZN&VG|d20v59zL zq+$xl`VqNTM|HCWXJR;wKl7Bx;Vw&v2TjbHVaxyFH(UPm-Kl~YC0H8ccRYOpJOLlZ zz!j`rlsa?@N4GsF;+r?Bd^R+I2EE3X16WkRo!>c{i~ly=or3)t@f#n`tmZrk8lN5n zLi#{!|Jy)?Gf$Bg9bq{_Byw~L>ocN^#|^=o{GY6Hi~ZIgIP8X>(>i8aXu0_*{l2sQ z@KEQKP|6InsR^5p7qko%UdxiPe>NNJDUPyEZ2@W9-3)xdr|mfTJ4@-alTA8;w-)dX zAQOt--Z@!Ke*mU{KvG~mePFks`M`oFsi5HO?2Kqh{Wch=6@}-3aUA>hK5J**Whl*X z^mv^rJJ<9_e_!u1STK?r>t8@De5^St&U>GG6S?0;DBai&Qv`yLPkTyqx!Lwad4EO_ zTx?5pb4i9`(oBm`G^R%vNd<7-vuwIR{=XPY&{osRYttGk@xwqUViur34uW5GD2pfNf zMkGVq0hE~B^;o5JZj+BUny(QW>zoQ?T|m3_f&*c32+y>zOty=j;T><3Psc~duGzak zAD9{wot*9t$_Let`%5@)Z!Va0%*?*^J(HIMQkauRZAgE|3K>jf{zO>Hgpzs!`wNtD==Xi1f8oFfz+e6!14EQ!u^k*|&B} z*dH2bDqG$M;I4#c(*5w9Xc0PwKZT=SgFm2wmQnxkKU}W#Pjm^Z#qu8*<9RTKiX=SZ zAjLKcq;^D%0zzz~F_a|lK*6K@e30{_Vq<W*w)UvcvIDfghJMAeRHx?G=)?5Jr zux@q(;t6z<-E%udjt@vZ%0{rAIa9=%Om?}^nLwf4&2bvCOfYuF&i_~4X*3KnpX)=CG4i;aoKQBab2ZwDs zeujXz*f6lIDB#{`-%d{>r$t1>Ai6-O@IHGHMkSujE%pVEss%Vrj*kzQ9}~ApEFifH zi(wN$paTt2e>2TBQf^|aR~&>~dEUgnrv~7e{cK0iT(>PDJ^dzB6__hjKo$k>qO3(7 zE*>t=_DmoPxPh_a<^K%Sg@`&G40fNABv2`ZY{gTt|G1#HzwsC4{wL)vCEc&T$!|DQ z{(zV}q`B#AN#*2p!Ejl}J;(gVLQT_g`x!7GzGe0W9?q(LzQM(Z_twCsM8R=TPz6j< z6{khr)6W(hkN#zFPUR;TQ;E72A04y?L5eik;%3LkF002(F&j7^3(G0maz?#(dCzKRiGhtU2NA!^N5j~6&_LL~}m1x=pd{agMQS|O^ z28?Y0(~FgVcz~b-Cxrm8N5Bu@!`{q#fo{q0-G!%~nRG8FSkqo|hUcPSuc?cnfo`4n zmoG}M6AUGSIlzkMgAzO{Ns?Do6q^Z}Mc@)tXZK>Pl2L>3?d!Mfu|QH=3TSduBBdy^ zw!YMzdJmc3-Qz0P4^Xb(>2^MSOj6VK*R~_#VmK*)8!>vj&4>+D4Kv0=f#tT@H=>X9 z2SLx!;QAH02XYIb?cS9%YnmbIJ7pUfuvq_-Z`0MYsw~%=@_xcoX`+;!To2q1mfP2M z#iAmSF;RkUw6xciCcpAattx{(_<=D3bV*TxGq0h6M}2p9>)*eCs7kwpVJk)&a6yAb zWOQn1K*TeE41uEvAvPyQOC0cda{zSIM1`j}ZD-+9%4;2o;bd3hQ++`!T5$AnfD>!2 z(%MOk-Z|@9YeAhS$G%PFH~LMw8~;lfH|6#7=@{1?w%asEY_{O;1NrIrICzgky;*8TUpu#yjX7IW5oWr-GmqLXqr;etH& zBLod&j@bxho6i4D$Ucyr_(o*M;lS6M zT#VU2?x^3g_4PlTBw1XpFMVlB;H{r8=LQ9Mfgsd?rr&;7yLS=>>gPNQ=+gnP2mjGm z+|c-Z`%Twptj+ru!4k2GF;ISoJn8Y!n-B={68C&Om<+(7eC%C~eP4Y*0J}FCCX;7n z4O-w>+t<*%UnjCp=IxK2(o#_hc`IYCnOXp)TvLg|3<=#h4SD6-?7^S%lHZj8^{^b#FvZ?kJ;P1F~C=sp=!(H*`TaBQ~m%>KW`RoP((s{AZ zuijA3NaS0vT|jLF8Q6xWfqFr)&&lTG_;Isug8R}wuzl~oz4} zqn@jJM)s<(bg;EA@H-gA?$QDYIRoHQ+h?bI>#f^#BQ{daA@QuB1eH;s=tjj%%w=G@yn$ zyDA@zlQT^khI7{7Pyl#=Wu`x91_?!5m&&4BoNa9O4V1iOYWofLzl^!?K#a}I#KPXEf_}%~I&$cg84` zN2e&J4;)3h^t@$HMrpB456YyA`h`n$_P;`gm&ylMg+O=)J-Es7gvKM4vsIs|#5(28 zNA8z^0R@XaQf989)Hd^zisEds=m4D2iS_j-<1Jo}Y!;zGuy+YuT=U{$+HoaJAVW$T z*t0)qGz~<--TSppHvaMCf)oO(%8vG#7r-$Ew5i7)I*@Zfg27X^6ubdBRP&&zKY?13 zVK1kyF-9q1j(lh2r(yF$>cFm9DBRSq=(z1o*x}~UD#W$kp=5}vXX56f(A=zWE(w&&&2y#^QQc-~YXw zJ<4d(1rfdbe|VKn{i3^6&y~lijO=%0R-#S_v}`1~^(W(ALrIB7e`vWO^H==Ip%gXa z-WcitahaThOyT6eM=!9B8Q=0%nh=0Cz6NHKXp=@@pkuu`TkT({7w_%S9$aqEb{Dy+ ziZ56ss07MRPLaAewAF_ac*a5JX*f6~9L?SWHyW^O{Jy^@fmZl$?C-zqeo7JFXhP6T zGQLY}W~7~dJ)aPj)Gy~zxb@EB|GWSmq1QJjVql_!OmYO3n*?~T?wRuK!m^%b4|?$l z5wwUxx<2Qn$~HSKw`NhAFA|Y2ZCIacI@=Qi(^ZBX(w?bxn%l>pS3#3Upuqv*^0bh& z;d=gee4>fUdKK_K4#tTbtyLh@Y#BL_R?93b_J{@8oa%+Rrrv3kS2WY`Po?w= z$Mc!zas!*GV}$~33OooD&PPw5t^%hMkZF?v-7*mJN}o^>whtUB5jcE#i#>(n^3HYJ zn>e&GYbjQ%6$}PdMQU;PFf~@t3;#%-07%K6#@z|JbwQKX6nE}JoK|eS{>8=B2{=6o z0FMj`b>@rBv>7fB_jTSpyl+6!|JxhT(j#Wx-5C)dnMQ-P|rK@6CYd2aL`Au?q!l=$e;d3bpNVrJF_oi}^-s(1&AA-m{ z)RhII$ee-m6R8DsQ-p@RiUN@m(DHc*<;gRk(t@`-BOx&Ya{y9!E9NM+j{#_U3s2EP z*oXq=nyE&Yn9h=YXML)vH*ZSIEA*k@76_9$LQsf;Z+EnlAz08+@R(Tvg;Vk4?`OMR z(Bk|D6yBhQI=H`!10xp*)t>OtF$8+NSBGeSPGYYph|>x%0u;@ol?D(aZJ^m20@_vt zq9}WPg=rHXC2MpocX0r!z!~Ox)bTucZxXBAdvXDABCb_>sNm#X0zfP(mZ|$9O7_Fo zpo1wvKahKYGI|kBR6|mzZ1KWn{PjFZFK1nkPkC>FT^)HX^NW}@@N-r{U@OmhB zfG>lIMv(4iS$i=dT%W|!i^bn`Cd!p`+?CvP!m!XZWmCJUf{Do-5xMb2R_gP`PhW(n zB6w5b29qvC z9h1G73J~y5?i*w6wC^ zTSL$nx7HL`Q~SZAt6S0dBfe*dTG+D}FG652yRHUc(=PtFyg6~?M`#2qZx}C7w=2Vi z+0h;Tk~cy4faQp==^>xMD-<6A*(FN!ONZb(YmXgn?+2eE2o%+~dSu_ftp1q36?r3>dFE76P z`(Vv79|yI{l>wL#%?_=;tl8>WZX>}?x)kLFe-c3o>l^l z!I`c4zTFi9DLOrs`iRbw&G3`dbjqOJFipu&PSsZQ4@;`e)I@tS)L+VGfWNob+y#1%hdjE;UZ;|LBZ{^q-Ic+1l--Jw| zZZEJfE3`QQ@5iF-c#gP@Fz<93{>$Z@$|#7jqkOF@jr;-$5kjX>^WnKli9ugihpD4`*^?hnxCAiFX2Wa%g9qFl_D>_SaNX3TyZldE;H6|r=?yN-f&c^SqZ z-{iz9Hv%pwF8A&HiJBA}=ird5F_>t^?VfDou>WUgR~4!ROWd+DFrN_!J|b}pS0xY& zqZB@*llKvfV@isAJ*QZbYDO?X40Ce1wx!I>q}yF-^Rik6AI&n^4uk6xYrch+ZpDUQ zr74&D9rsQcNr1w4_fV_IkQn*h%WcNM+PcJ8E-uc$WfBBX<@~nkRNkw7a3w*t^tWH) zXp%vp0n6aOuHr~Cn&~`)?u<#~doW7{Q*(3s9?(3rA1LruSn3OWOAQIJD?<-2ErP)g z=@fkGFR(Uab#%~e!je-+tn4LfaaGnaI_dW{JwNf`pkoCs-T#CH))R@j9QGc%;r0}q zJy;zNNZ*p7$YuR`%2ZMGrMs%Kv`WVDZvV7a&F7Vxib{z*-lzI#g%p|8+AsS0A0_Cw z$KMKmbEGmHT39)rpsjW}xa3*uIYJip%2Tct%8dC~IZ49f8u6oE#_BGXiGpGo|Lu}g zBlP>f`6lx+^qf)wf%ciI9emC15=%G-E+eC`4hKTDW@snu#l;~KC{^i0onGu z5p2d|88PU5|NE5}(q&Sm%14ZjLj*Q)(-dtT^Q_9IlIU$@Oq3?nUC;9tD?Q3A#k6Mv zXcR2*@_pEJIO9(!y)0YYyEX;~rjxHj(Um2b9hN=^67@_6SY)GSz&6QrkTy7KYhVo?7u~ zV**05-suCC4 zFsURCm`o&sDjV)>KUm#uxNTRGks3DkvT}TI+VDl5(>hKRs4Wv-4R&(YSXqtmpi2CR zz7##>#r#I=dq;Y4!27U(kz39m@1A?8w*U6*u&7s4rB7rp>Zmxlk^60uuMhu?JJZPl zFA3)VsAB3ihF24;yEr_-Yo zF@pa>MX9QBD12}QsIsEVIuC21Px4I84XIyiP+#N!aXi$Xoydz={7_!$Jv5ZFi9kU? zUu>ZX8#y>ywI!`rAIaQhsiFym=|&R_MDaf5Hm>C|*0 z5cG2;L_WP?w@BTpGG5?eN4I#j$Fc3?*dacB za(Uj&x5ZZ1y#I%0oHce}AodwS<`N(ZT$oTR^h&#<-|>~eqWcynX3 zJ6p-wKd+%td$aWnoR_zEaF2#a;ded1dg!30G%(fY9*&Wd+0R%mDN)3e~|ld;f6JJf6O_nz)3KHrBEn- z!^GvX+$;10)kUqXEltXq&vh5$M}1hkX*bm|7k@sK>u}*bhpOj=hq*X2x^-8YniQ!W zN+Xo9(MPjv1DaQ{H7V&A^6ZOMKVU)%Ew2- zp2YREDoIo2txE7pCkF1zm#v+Qe3!hKlr$pc7fW0Xp;|FiVi9jhIBmV8=T-+a!rHzX z^-)rxv%DICc0>AOgm~gTc{-XYK~TVRK|(OUfEA|O zX&F9=A%KRtr(u41Z9UTM_jGYl{qVf&WJNestJ&OyBFewKg}lWKW_P_Gxrqqfc_Wbz zZK1-9p@=yerjf|!gYHQ7?tccb$WeqoyU0tvL)x|oQ4xtHyWy^8u`w+mD{wYjGAT8! z$&Rt}Oz=(Wz??rk=L5{Uy-jL3g;c>jB}%S%zTS}AKt3QC38+EQ2X+PXak+ju3IF3ztJ2^1Lk84EN?=9y^E>HpeqdQo zae$zq8Mpc@L`0Q}!LPHJUIzQ$n!XH-=@c?s|*_pJZJ|1=LLz0&;Zs=w#S7 zPbtV8>*e1(S0}J+^Q^2^!fWblT>jfzFELs@_<&|D^HeejIn$TQb=E%-RAN{t=Xbg^5TIsiuUeSY5wBA~7pP9{&Py7BnBc%8ATR7S=qrCiD5QcKEIqDs2v4C?M)j zNKjwygi$CKs<&0}(1@(s-C}sWpX~)>`E&mrD56OQgof%Y`SY*fFik*dHQ%#6eN6BA zMW3t4zLi8YopY0$@|1Q_#JAJ7Vt@P!pEH-7Ww-ix>!D*&KoTA*Rt~pF?aQD(PgFLiB9vro3~R z2pAyI&-lw1p!o{FH`(EG7@v+4UE+t15!wxYFW|bFwLv4BXr^1^l_@eE+!R zY8{Vq`HClJZO4ey<+;ye2&dfKq+|M%l#Almu+}m5_bXs>Ki|>HJkF?NC*>a+y}LmW ztn5t8j!fest%o1x(N#=}E3;cyl>e4VU?HhGHYu+%a4uao8o zfd>PdJ>`Uxi&H!4Nz9wU!pJ0AudeN>IyS9$S~B1Cscb+GOwj&<^k&rqXxNJ=^mQ?G zOJeH}FIa5y^770Wz1;mVC*PQI)j{dGtWo!8s6PmtZyA*a?WKBVoc5R>6zNMeaxei% z`z>2;fY0>x^@7#Yh={f~Z?4RGBQM+e#WvqWkQ%|N8MCX9ezb(+pC0w_Us~)S7s04o z)&0MbV<)wbHeWm=K3%&l(ENdea%$TB$xSWW6#gYl@XBhIdu%7{x>9oLe&y!;L^GId z^qq`uc1jA?0{29&`b_4yIag#}p3%nJ>7i<^(?Eq0>m`@Hs{{WGzCjBQGo7Ke4#v*+ znx#|Y=FTnkd(zGPpfs=?Oe4x|kUcgeA>9K%bIip1Jy=kH4a2!^r#-j*Ah-Btxw7S$ zY`+M~nOqR!_l%UZeJ$bDH%CGy)_bkkofVGhVkG(sAfCX4}SLHi4ZD@dFn^0obK zV)r;!%hKY-!7=bS{1Ui#Y5kNI6;;#xuO|U2j`c|^5WU{5YwPV3G#y|n zOs(7?oay&smkPflGV=0D6TIlJug_)7V0q^btsWY$qsf*?Lz=5L><@SjIZfc1u`PH0 z>KCoHxW=K}I}TmlJ4o9d+}4y%wA?!WUNMQ8!VzZoTQv9E$XhBNl7}VjF?WlrE1e(T zW7604TsN$?vI=WAU;f-2`VPN3DP?N(j3C4mMTCS>*iA{^V!FGCEqhM z;~jw>adw=fw2m!7Me(7@cfB73xwO9R$LiZ#{}JvXE>R&xe30@b&yMT&_k+(MmoOPg~Nf2Z;hOZNx}5rG(&j!b-^Ni058AoU{ai%alBAW zcaa7c@lfwY*sJa$F#1EUJCyTzn0I^ojKe+8%~0BAQVe6lNHagEq*5u4o<=+aSfyQ< zocx4>e8~YIZy{YiL>ZlAb(ghEC4<4aK2L`^HFgGyvWO)xJQ+Qloqck=K>6iGW^u2~ zzBGW(4k-6sA!>x4f%RV%WtU&+s?N_$~Bv>T2!K9yUFi0P2IRk z&&mU(5_-N=OcGU0HXFlSAi|z6TjpAXmMoS&`mWJX_&@}AYF@PvYQH>W_N6jWft{T| zcS@l`Wi?-5(tNjZ%r)+EVvZ zBa*$yX3OZg;N95?Tcq14r;}-`Yun5nw@OzoR6x36D&fyf=0#|y#CcqL?epLF?3Wux zNtNAf9_lP68E@^6B*xy0b3cz6XRyqk@?CF7Sb82cxHyK1WJp z{1$G0wv$UNdKO8&O2WZKUh$*f=E+mUKg-k1Ai)m&rlO$~5fWy$n0jv#O01JQ-z{um zQGiL>7q&A=4JAOwRC-3VKcnZo&|tle4;Pg=--CN3JuIL?N{nIaFa2<9+ijQhcZ2-G z$XT6_bf5aZ@%fI=To_2)+-R*^6iu1NY{ddjk}qs+$xCuQQ5ft`qQqRujAECFUG_I$ z5%&cCL`5)C&BkDp&)ZIc7I&FMz9c>ymCSdiV$bhtos5;`wqIKddygWL4k4xVO* zqSMBAtK>K6tkfL*{CrEs$F+Gur!ao%dOA%#-^f&HCp5%vw3e0=SSX_6B~FOZEyVC; z<7-#!Om1)(XSBQ%0`2M>eqWRC#}@B|_K6@op>9U7yLTkA#rje&@1XRR=-&{d5hM`m zqvcnpOazeDW@GZ*cJw<* zM|~uWA#>VA5jtO)mEhY*=D$+(pL8M8HgT%f_oX8 zOs=_VR)d+c>9}W~abRZz0E+tbe1`7OWskqsCQ66g&(}t|!=NKsy23$SG(yS+>J6M% zB&6t=SnFF8h4jk*0s=#6{yLH^8yOlF6nx9E)Tz2Z@W|)h$P*6YG~tN@!;^Arh@%)x z(l~dqQ)RVWi=^RI| z9xutq2LQ?j2x~|D-gt&j*$eY@dmAEY27{2pql?^!BGp?^UNS?=_2GPpeFvW+urTjW zhA*T3+9OE5dme(@drjzw)qY2GOa5eRbuVq^1 zS31HZ)V)tEgmAYyM7LC0fk^ zkA~mlQbx@kyk={Q*kEX(ZwZIHgDW=_hKTOl7xK?;dp9Z&&I`Yy?q!HACA;PqcRlqu zjTd-=<>6=1I2n0BQ$oSQlBjVr^tEo|GnAu51mNmCt?r-Bl{}* zJuaWa?E2o}uq04*tqVYRv|kg~82&zz@01x-A&Vyg_;z0I~<^&$~ z<;|FEl$ldXcad;Lbu+&Qbr}vM8~>pB5D}=Ip9Iyy=AddPbe!>5_0NaqQ7r9k*Geb^ z5K|n8YZa3&(egoFQz0czHnSf?T`yAT=_UQ= zhi3Z%b7B}ukEWT)ke`%p&T|10Idbh9uprbdvmb`5n*98X=X+bd0J|z{QqGA%%t-E? zk*TX(m4Oo!tUpIDh~=kST&&2T$irFb5;QA<=Z-!sE87wXC{b zGo|DSy7YLpvN6ltvJtlRPi)mQ|Z;fjss6)_l|Z z2Q$urD@ljx(#?u|=e32KFsYcgX%@;c+e)MSN8LR6M;m*n#x9a%#iI!Q-F|(Vy9M7mXSD}_%n6--D&5E~G_f*LwH?@WjZ*-DtW>;!jcv<3w zQ;C7nYK7hyhUB>@kss1x@mX`pX(?KMTM%|uwpK+1A~Tf$x)UHl|NqE(>#!)d?|pax zML`4<5TsEWDd|RfNEv!)ksMOGK?N0%7`l~|mKcymkp@9xKqLj}?&jU&Ip=fE_xH|q z@eeTj+0R~euY0Y%H~GVl_vXjQIBblX{3?XBT={ZIr}tLcINnljgDdsyMO>cOM-ez^ zui4w%Xg7)brwC-5uA;}7weVa#Nk5!Vh&zUt7y}U-h!F zKRtI`MR%3{ECRQ~a_hIect>yLIH~NWN)TOFIJL0oy9f@Z0K6%*^wg>+A;P#82?}fh z@aBxt{T0pr2cP+Q0gKwcJIEx8F1;xofmWUR82p(=G-=#~h4~I9$sbZjjVUSZkc}|xNx~7=VQ!BN@8)nx^O8N{lqGsT?vNLT*_8GkzV@r)1ulPH6n$BwXY#MI`wvc6YZmvv1r(F0N# zHu4G^NUL&U(LTYj72?o?F%<8_z_AM32;Nbr{(C(P;z0Z3lHyD$Ee6m+LI5K-=+{ee zalXb!8OM=$vGnXiO0F_*;JeuXX^=>p-?}y5pL&93^AHqtE76N8wIcHXdBvO8VPAfH zX3#0g87h2I{six~iRefH4h38eINFYa$H{jVy0C3+(C3!U%|kWi$DI%#ad_CbeSXnf zsQVVwGf^0qlK#zoW#FBW2w=2&fen41Tg*%rGm}mWdwWY$)35Q#)gB_s@o=37x)Fyk zgGo`2Nx!Wil!=Mk2V=2sIjNmXHXtjErYTMXXDZZmP<}NN$qqm&L{dR9kH61fM zq3o0C@9wWO`u0vYrY@%n4OO~WXx+|1r4!^!cpv>zDO@ACU7Ci6@qXj>tTv%Nr6MRva8e}` z|9Ctrqrv>@Nb$7B*kA4_JR<#?JJ@Z~1aeSv|{-}njX&Ks+Tj2kl0syW9~znkn{ zpIo=Yh!8?PE**;u@)Jf$0!~yArc92nDl`ul&UzY{yh5I}*=U#f)g9;+f8fX@@=fl4 z)u?Lrm{l>-^mp_9#Ic6CEA@w&@`%1bMJ`^SwI^1WDGoc`FX@>TcF{r0Y4u(me!{nx za#8Ar$-}CQ&}iT(zQ z{E5DRcN`xnytW@bCN2TjcYk|DH&|~w6oD_$@$4h2jbZBMSbhvBNi=9Azf3Y&wteHX zI4he#Ck&Au3M1nyerBobbLTcaj;!pmlxrSaIgTt<(*=ChJ0V>8dW=pLx+f0C4cTmq zyqPQ%h5Nf(v%YsIgZ6riD{HPkuRX=SLR7mDPc%@Fxbq{6arB2rK*C!$@SmJ64;>wy z;)GuLg34B4GT2HBg4`!2KI=4AH7yGO%phIbGg9HrCE8rrG^HCDYm zB~sPa8eBfUm1i@Luw`Yv1JMr@9vCV46A|Hyijj~~c7t4<3#itbi^kNaN7HOtOHNK2 z;Pu(o7eX6LH~}~Cv}1Yb%FCCKfjl4gDVy*2+721ytOnq_7sUo?^(2c{?mPps2%0DF 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 YsU43rn#~0sNb^*bQ+rT+?{V<|0gQ`?D*ylh literal 0 HcmV?d00001 From c3d0d07a09a10d4e7798915c9d059ab285bf6cc2 Mon Sep 17 00:00:00 2001 From: Vivek Arte Date: Mon, 5 May 2025 14:02:56 +0530 Subject: [PATCH 5/5] adding HTML file --- rendered/zip-0227.html | 111 +++++++++++++++++++++-------------------- 1 file changed, 58 insertions(+), 53 deletions(-) diff --git a/rendered/zip-0227.html b/rendered/zip-0227.html index d98cd8d05..dc8409574 100644 --- a/rendered/zip-0227.html +++ b/rendered/zip-0227.html @@ -268,58 +268,66 @@

Specification: Asset Identifier, Asset Digest, and Asset Base

-

Every Asset has a globally-unique Asset Identifier, denoted - \(\mathsf{AssetId}\!\) - . A given Asset Identifier is used across all Zcash protocols that support ZSAs -- that is, the OrchardZSA protocol and potentially future Zcash shielded protocols.

-

From the Asset Identifier, we derive an Asset Digest

-
\(\mathsf{AssetDigest_{AssetId}} := \textsf{BLAKE2b-512}(\texttt{“ZSA-Asset-Digest”},\; \mathsf{EncodeAssetId}(\mathsf{AssetId})),\)
-

where - \(\mathsf{EncodeAssetId}(\mathsf{AssetId})\) - is a canonical encoding scheme for the Asset Identifier.

-

From the Asset Digest, we derive a specific Asset Base that represents the Custom Asset within each shielded protocol:

-
\(\mathsf{AssetBase_{AssetId}} := \mathsf{ZSAValueBase}(\mathsf{AssetDigest_{AssetId}})\)
-

This Asset Base is included in shielded notes within the shielded protocol.

-

The relations between the Asset Identifier, Asset Digest, and Asset Base are shown in the following diagram:

+

The definition of the Asset Identifier, and that of the Asset Digest and Asset Base for a given Asset Identifier, will be described in this section. For context, the relations between the Asset Identifier, Asset Digest, and Asset Base are shown in the following diagram:

-
Diagram relating the Asset Identifier, Asset Digest, and Asset Base in the OrchardZSA Protocol
+
Diagram relating the Asset Identifier, Asset Digest, and Asset Base.

Note: To keep notations light and concise, we may omit \(\mathsf{AssetId}\) - (resp. - \(\mathsf{Protocol}\!\) - ) in the subscript (resp. superscript) when the Asset Identifier (resp. Protocol) is clear from the context.

-

ZIP 227 Asset Identifiers

-

Assets issued using the protocol specified in this ZIP are scoped to the - \(\mathsf{ik}\) - that issued them. Within that scope, Asset Identifier uniqueness is obtained by way of an asset description, - \(\mathsf{asset\_desc}\!\) - , which includes any information pertaining to the issuance. - \(\mathsf{asset\_desc}\) - is a non-empty byte sequence which SHOULD be a well-formed UTF-8 code unit sequence according to Unicode 15.0.0 or later.

-

Define

-
\(\mathsf{AssetDescHash} := \textsf{BLAKE2b-256}(\texttt{“ZSA-AssetDescCRH”},\; \mathsf{asset\_desc}),\)
-

We define Asset Identifiers for assets issued under this ZIP as

-
\(\mathsf{AssetId} := (\mathsf{ik}, \mathsf{AssetDescHash})\)
-

and define their canonical encoding as

-
\(\mathsf{EncodeAssetId}(\mathsf{AssetId}) = \mathsf{EncodeAssetId}((\mathsf{ik}, \mathsf{AssetDescHash})) := \mathtt{0x00} || \mathsf{ik} || \mathsf{AssetDescHash}\)
-

Note that the initial - \(\mathtt{0x00}\) - byte is a version byte, enabling future ZIPs to specify alternative issuance protocols and Asset Identifiers.

-

Wallets MUST NOT display just the - \(\mathsf{asset\_desc}\) - string to their users as the name of the Asset. Some possible alternatives include:

-
    -
  • Wallets could allow clients to provide an additional configuration file that stores a one-to-one mapping of names to Asset Identifiers via a petname system. This allows clients to rename the Assets in a way they find useful. Default versions of this file with well-known Assets listed can be made available online as a starting point for clients.
  • -
  • The Asset Digest could be used as a more compact bytestring to uniquely determine an Asset, and wallets could support clients scanning QR codes to load Asset information into their wallets.
  • -
+ in the subscript when the Asset Identifier is clear from the context.

+

Asset Identifiers

+

Every Asset has a globally-unique Asset Identifier, denoted + \(\mathsf{AssetId}\!\) + . A given Asset Identifier is used across all Zcash protocols that support ZSAs -- that is, the OrchardZSA protocol and potentially future Zcash shielded protocols.

+

ZIP 227 Asset Identifiers

+

Assets issued using the protocol specified in this ZIP are scoped to the + \(\mathsf{ik}\) + that issued them. Within that scope, Asset Identifier uniqueness is obtained by way of an asset description, + \(\mathsf{asset\_desc}\!\) + , which includes any information pertaining to the issuance. + \(\mathsf{asset\_desc}\) + is a non-empty byte sequence which SHOULD be a well-formed UTF-8 code unit sequence according to Unicode 15.0.0 or later.

+

Define

+
\(\mathsf{assetDescHash} := \textsf{BLAKE2b-256}(\texttt{“ZSA-AssetDescCRH”},\; \mathsf{asset\_desc}),\)
+

We define Asset Identifiers for Assets issued under this ZIP as

+
\(\mathsf{AssetId} := (\mathsf{ik}, \mathsf{assetDescHash})\)
+

and define their canonical encoding as

+
\(\mathsf{EncodeAssetId}(\mathsf{AssetId}) = \mathsf{EncodeAssetId}((\mathsf{ik}, \mathsf{assetDescHash})) := \mathtt{0x00} || \mathsf{ik} || \mathsf{assetDescHash}\)
+

Note that the initial + \(\mathtt{0x00}\) + byte is a version byte, enabling future ZIPs to specify alternative issuance protocols and Asset Identifiers.

+

Wallets MUST NOT display just the + \(\mathsf{asset\_desc}\) + string to their users as the name of the Asset. Some possible alternatives include:

+
    +
  • Wallets could allow clients to provide an additional configuration file that stores a one-to-one mapping of names to Asset Identifiers via a petname system. This allows clients to rename the Assets in a way they find useful. Default versions of this file with well-known Assets listed can be made available online as a starting point for clients.
  • +
  • The Asset Digest could be used as a more compact bytestring to uniquely determine an Asset, and wallets could support clients scanning QR codes to load Asset information into their wallets.
  • +
+
-

OrchardZSA Custom Assets

-

In the case of the OrchardZSA protocol, we define

-
\(\mathsf{ZSAValueBase}(\mathsf{AssetDigest_{AssetId}}) := \mathsf{GroupHash}^\mathbb{P}(\texttt{"z.cash:OrchardZSA"}, \mathsf{AssetDigest_{AssetId}})\)
+

Asset Digests

+

From the Asset Identifier, we derive an Asset Digest

+
\(\mathsf{AssetDigest_{AssetId}} := \textsf{BLAKE2b-512}(\texttt{“ZSA-Asset-Digest”},\; \mathsf{EncodeAssetId}(\mathsf{AssetId})),\)

where - \(\mathsf{GroupHash}^\mathbb{P}\) - is defined as in 31.

+ \(\mathsf{EncodeAssetId}(\mathsf{AssetId})\) + is the canonical encoding scheme for the Asset Identifier.

+
+

Asset Bases

+

From the Asset Digest, we derive a specific Asset Base that represents the Custom Asset within each shielded protocol:

+
\(\mathsf{AssetBase_{AssetId}} := \mathsf{ZSAValueBase}(\mathsf{AssetDigest_{AssetId}})\)
+

This Asset Base is included in shielded notes within the shielded protocol.

+

OrchardZSA Asset Bases

+

In the case of the OrchardZSA protocol, we define

+
\(\mathsf{ZSAValueBase}(\mathsf{AssetDigest}) := \mathsf{GroupHash}^\mathbb{P}(\texttt{"z.cash:OrchardZSA"}, \mathsf{AssetDigest})\)
+

where + \(\mathsf{GroupHash}^\mathbb{P}\) + is defined as in 31.

+
+ +
Diagram relating the Issuance validating key, asset description, asset description hash, Asset Identifier, Asset Digest, and Asset Base for the OrchardZSA Protocol.
+
+

Specification: Issue Note, Issuance Action, Issuance Bundle and Issuance Protocol

@@ -361,10 +369,7 @@

Issuance Action

An issuance action, IssueAction, is the instance of issuing a specific Custom Asset, and contains the following fields:

    -
  • assetDescSize: the size of the Asset description, a non-zero number that is at most - \(512\!\) - .
  • -
  • asset_desc: the Asset description, a byte string of up to 512 bytes as defined in the Specification: Asset Identifier, Asset Digest, and Asset Base section.
  • +
  • assetDescHash: the hash of the Asset description, as defined in the ZIP 227 Asset Identifiers section.
  • vNotes: an array of Issue Notes containing the unencrypted output notes to the recipients of the Asset.
  • flagsIssuance: a byte that stores the \(\mathsf{finalize}\) @@ -423,14 +428,14 @@ \(\mathsf{asset\_desc}\) as a UTF-8 byte string.
  • compute - \(\mathsf{AssetDescHash}\) + \(\mathsf{assetDescHash}\)
  • compute \(\mathsf{AssetDigest}\) from the issuance validating key \(\mathsf{ik}\) and - \(\mathsf{AssetDescHash}\) + \(\mathsf{assetDescHash}\) as decribed in the Specification: Asset Identifier, Asset Digest, and Asset Base section.
  • compute \(\mathsf{AssetBase}\) @@ -762,7 +767,7 @@
    issuance_digest
     ├── issue_actions_digest
     │   ├── issue_notes_digest
    -│   ├── assetDescription
    +│   ├── assetDescHash
     │   └── flagsIssuance
     └── issuanceValidatingKey

    In the specification below, nodes of the tree are presented in depth-first order.

    @@ -777,7 +782,7 @@

    T.5a: issue_actions_digest

    A BLAKE2b-256 hash of Issue Action information for all Issuance Actions belonging to the transaction. For each Action, the following elements are included in the hash:

    T.5a.i  : notes_digest            (32-byte hash output)
    -T.5a.ii : assetDescription        (field encoding bytes)
    +T.5a.ii : assetDescHash           (32-byte hash output)
     T.5a.iii: flagsIssuance           (1 byte)

    The personalization field of this hash is set to:

    "ZTxIdIssuActHash"