* [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
@ 2020-11-18 1:59 nhi
2020-11-18 18:08 ` [edk2-devel] " Samer El-Haj-Mahmoud
0 siblings, 1 reply; 7+ messages in thread
From: nhi @ 2020-11-18 1:59 UTC (permalink / raw)
To: devel
Cc: patches, Nhi Pham, Ray Ni, Leif Lindholm, Michael D Kinney,
Ard Biesheuvel, KuoHsiang Chou
This is the AArch64 binary provided by ASpeed for AST2500 Gop driver
version 1.10.00.
Cc: Ray Ni <ray.ni@intel.com>
Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Ard Biesheuvel <ard.biesheuvel@arm.com>
Signed-off-by: KuoHsiang Chou <kuohsiang_chou@aspeedtech.com>
Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com>
---
Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf | 33 ++++++++++++++++++++
Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi | Bin 0 -> 42880 bytes
Drivers/ASpeed/License.txt | 25 +++++++++++++++
3 files changed, 58 insertions(+)
diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
new file mode 100644
index 000000000000..e30e5a160f70
--- /dev/null
+++ b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
@@ -0,0 +1,33 @@
+## @file
+# Component description file for ASPEED Graphics module
+#
+# ASPEED Graphics Controller Driver.This driver is a sample implementation
+# of the UGA Draw Protocol for the ASPEED Graphics family of PCI video controllers.
+# This driver is only usable in the EFI pre-boot environment. This sample is
+# intended to show how the UGA Draw Protocol is able to function. The UGA I/O
+# Protocol is not implemented in this sample. A fully compliant EFI UGA driver
+# requires both the UGA Draw and the UGA I/O Protocol. Please refer to Microsoft's
+# documentation on UGA for details on how to write a UGA driver that is able
+# to function both in the EFI pre-boot environment and from the OS runtime.
+#
+# Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2020, ASPEED Technology Inc. All rights reserved.<BR>
+#
+# This program and the accompanying materials
+# are licensed and made available under the terms and conditions of the BSD License
+# which accompanies this distribution. The full text of the license may be found at
+# http://opensource.org/licenses/bsd-license.php
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+#
+##
+
+[Defines]
+ INF_VERSION = 0x00010005
+ BASE_NAME = GopDxe
+ FILE_GUID = 7F81D838-F91D-4C44-8552-8FB912122FDD
+ MODULE_TYPE = UEFI_DRIVER
+ VERSION_STRING = 1.1
+
+[Binaries.AArch64]
+ PE32|AArch64/uefi_2500_800.efi|*
diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi b/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
new file mode 100644
index 0000000000000000000000000000000000000000..4b36e189b3a15abe2c160b948a1e221d4b0fd8e8
GIT binary patch
literal 42880
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
literal 0
HcmV?d00001
diff --git a/Drivers/ASpeed/License.txt b/Drivers/ASpeed/License.txt
new file mode 100644
index 000000000000..3dc49d3aff4f
--- /dev/null
+++ b/Drivers/ASpeed/License.txt
@@ -0,0 +1,25 @@
+Copyright (c) 2020, ASPEED Technology Inc. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in
+ the documentation and/or other materials provided with the
+ distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
--
2.17.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
2020-11-18 1:59 [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver nhi
@ 2020-11-18 18:08 ` Samer El-Haj-Mahmoud
2020-11-18 23:39 ` Nhi Pham
0 siblings, 1 reply; 7+ messages in thread
From: Samer El-Haj-Mahmoud @ 2020-11-18 18:08 UTC (permalink / raw)
To: devel@edk2.groups.io, nhi@os.amperecomputing.com
Cc: patches@amperecomputing.com, Ray Ni, Leif Lindholm,
Michael D Kinney, Ard Biesheuvel, KuoHsiang Chou,
Samer El-Haj-Mahmoud
Nhi,
Thanks for the contribution! I assume this is going to edk2-non-osi, correct?
--Samer
> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Nhi
> Pham via groups.io
> Sent: Tuesday, November 17, 2020 9:00 PM
> To: devel@edk2.groups.io
> Cc: patches@amperecomputing.com; Nhi Pham
> <nhi@os.amperecomputing.com>; Ray Ni <ray.ni@intel.com>; Leif Lindholm
> <leif@nuviainc.com>; Michael D Kinney <michael.d.kinney@intel.com>; Ard
> Biesheuvel <Ard.Biesheuvel@arm.com>; KuoHsiang Chou
> <kuohsiang_chou@aspeedtech.com>
> Subject: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500
> GOP driver
>
> This is the AArch64 binary provided by ASpeed for AST2500 Gop driver
> version 1.10.00.
>
> Cc: Ray Ni <ray.ni@intel.com>
> Cc: Leif Lindholm <leif@nuviainc.com>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Cc: Ard Biesheuvel <ard.biesheuvel@arm.com>
>
> Signed-off-by: KuoHsiang Chou <kuohsiang_chou@aspeedtech.com>
> Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com>
> ---
> Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf | 33
> ++++++++++++++++++++
> Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi | Bin 0 ->
> 42880 bytes
> Drivers/ASpeed/License.txt | 25 +++++++++++++++
> 3 files changed, 58 insertions(+)
>
> diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> new file mode 100644
> index 000000000000..e30e5a160f70
> --- /dev/null
> +++ b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> @@ -0,0 +1,33 @@
> +## @file
> +# Component description file for ASPEED Graphics module # # ASPEED
> +Graphics Controller Driver.This driver is a sample implementation # of
> +the UGA Draw Protocol for the ASPEED Graphics family of PCI video
> controllers.
> +# This driver is only usable in the EFI pre-boot environment. This
> +sample is # intended to show how the UGA Draw Protocol is able to
> +function. The UGA I/O # Protocol is not implemented in this sample. A
> +fully compliant EFI UGA driver # requires both the UGA Draw and the
> +UGA I/O Protocol. Please refer to Microsoft's # documentation on UGA
> +for details on how to write a UGA driver that is able # to function both in
> the EFI pre-boot environment and from the OS runtime.
> +#
> +# Copyright (c) 2006 - 2010, Intel Corporation. All rights
> +reserved.<BR> # Copyright (c) 2020, ASPEED Technology Inc. All rights
> +reserved.<BR> # # This program and the accompanying materials # are
> +licensed and made available under the terms and conditions of the BSD
> +License # which accompanies this distribution. The full text of the
> +license may be found at #
> +http://opensource.org/licenses/bsd-license.php
> +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> +BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND,
> EITHER EXPRESS OR IMPLIED.
> +#
> +##
> +
> +[Defines]
> + INF_VERSION = 0x00010005
> + BASE_NAME = GopDxe
> + FILE_GUID = 7F81D838-F91D-4C44-8552-8FB912122FDD
> + MODULE_TYPE = UEFI_DRIVER
> + VERSION_STRING = 1.1
> +
> +[Binaries.AArch64]
> + PE32|AArch64/uefi_2500_800.efi|*
> diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> b/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> new file mode 100644
> index
> 0000000000000000000000000000000000000000..4b36e189b3a15abe2c160b948
> a1e221d4b0fd8e8
> GIT binary patch
> literal 42880
> zcmdtL3w%`7wLiYkIg<w@gdrp$glHxKHB3cf2qCdT&P;fz2<arKRcmJQfJBfy2ns^
> w
> zB%#$Bt3>ey-
> e!WL5`Mi}3dQtAfY$1@wIx{F+xFJU1GS}BMO27b^8bF%BRLsDtG)OC
> z`TRb=k>fdg?X}lld+oK?UVH6*POiUM{L4S>UoJUZuxNo06&=bj08bx?D@2Tph
> ew47
> zjyJM2q*cPqp9^<h;Xm!UVZ4~|%nPKQ7l4lj4m}H=kdci0{?QQrMc5S$mFpW=7
> H!ts
> zY29t~TtfJ-
> s0cI!0Ha*g$A|AWG@%O7bwz#U>Y8$cSBq!f?LXjo?dgBzd9Ya=Jyk4r
> zpNkO#A1R{aDIvC<!u|W=%z?l~5zcg>4uq71j%|R4l!+bZV$^|C#p-U9Ywc1>-
> yA$*
> zlxJD(go3V6J3rni?LMVQ9hwk1>CtLufe@>XM2Hg7=>d&w(9(`8S-
> {N?DIzB{IfCT|
> z0y`Z}Wr;e_`?P2!u3r?q`7!8@PZHZiswj5JA}3Kk^MmD9S`s-zyx47}gQ$<`#{W{B
> zy-
> H$71n^vcR<aI_*Sa%8N^K|+ZJ305&I~%G%Z1)9@^c&bVLcy<Ge59+ya_O9b;4
> {#
> z>rNCOd>8^fw)^9ap517((RNdIR(mOfIjEDgdQq31=gcskt+d5+&+iPLe~)s(KPk0
> 6
> zsaki_AC%hfBTXL3*FKZ>Yhkn}gweLr7H#Rb2JJ&A*Y%%Dt>+@Gd*|<z+NW%
> ^Z%a1%
> zeV<8NgRIv=)}LB+nX<Oh7VY$I(w^AS0X$1S!8euKcGS`IhEhvCX-X6cR-
> UCd)Sd50
> zB0&hPTh}8+KKk)3((cE`L^vtGE}41;y_`tBlsY0GPzRn)qAp4uy?vs!@j-{PA2NxM
> zHD4F>L{-il2&Jh59-
> ;XnlGOnjcSY8^`xU7*h<xhwEa}XFo@RA}Uv2hLCr`zA_BIOW
> z<-O{Lv}m>Nl=8@S*1Hq+IJQDhS{zQwy$_cL8q|Ni9k+PEmpU-0$mST3j-
> D=;cb`Tb
> zLe;v-
> H`_9>O4)sGsu<{*DF)6ca>r@P2spt>VxOz({%&pTb07L;G4P2L;bgs=BgFvQ
> z8JejMZ19TKKJekW*8%xX?&wE3tF6?tM6@p<>C6HDSaqOBNpw4|*4x}&UM
> 5<}D{&GM
> zjeN>P&j)V`<Zb282K=LmXAZFL#ztf8vF_exsnu`N_$dC&0oN;vQ^HvN6g1l%A}
> 3E4
> z`z1;14m~ZkK9L}{si1@Bd_V8cN%_L1`CQ_~`cRGNwD1l<M?<r~E6PM+T!ob6j!I
> K+
> zyM&mn=K)qWNo@1a6X-vYuo?HVd1#j;_8kI`lz-X-;>@&X)B(1mXQRVu^-
> FT3*v2-q
> zO(o-
> ?3&1UiGGK4So;jc@YJL#B`$10~EA}z}V(`u~r*XH&Y65hAZkWzn>7Zp_en_29
> z==g7z`<dblTn78{6Q%YQq$$hvyB*GG@L1L>TKyTKb?TiCXGNLRdi*YjbHz@!U
> +Wf9
> z!JE_2M)k+K&CJ)p8+po}VDQu(##3?_PgdIEsb{~z6M66-
> M1Q$4{$5gQpGLYLawlIE
> zUg#J2YF`JvE|*%%nndf7I)^g?{B)W9-
> 5{O$!DR5Y*R1~|jFBL0K^OQ8Tn?H)RcaqZ
> z9t?H@X;Me2vlWqs-
> W~!y>T85#j7!Ql0=PNQ7mRCn0&FS!R@Xhq`j{;CQHS6B3wT05
> zAB+@rhcG6ouVrzDZd*D_9q^-
> `X&9Tms5h|2;p_u_>Hv9>rWrcoLYm|DV~kUd*VE-*
> zjKxBXMU2@ak}+l#NuT#PPHAIkb7*J0lGyJ*?$GBW%MNh-)9&=#Zs=PT_}5-
> A`b~`x
> zIj8y@PCx1oAfK}EV=kkuqMf3RS^%A-
> d_O_|YB6UH++xbM2lh&XUCq#LJ!9E}QXx)+
> z(0=uMiZlHx*y-
> ;pS=qop1zgH)R!AIWTPvW)k<T0QXkX!QQrF7Mhx_sqw1@h%W1`qL
> z9p%JsgWpfad-
> kePBB%Jz2G8V^Jog^qoGZc3By_Y_IGlE#LlI{VTw(D%#pGGsb{@~c
> zJ>Yqs)-C_Lk`+OofvfYZ89es{98QPHGj-
> 4ESMvG;*|1gYbM}2YWHyxldxvfxt^O#7
> z4m92deF3kd^}T>Tv)+)B6lSl@zQ?@n^&7h5IOcHf!gXq+*c}=#1`1)5Xrn)b+$@
> _g
> z5qg?uw%=vWgH}3d+Jv4bjd}20l=D9gIb4ge@|0401ZnNx48JI&+u>9lqSKGNfR
> 6Nh
> z74k4`S*YBw+pPOoSlyGu>bBBW-O^)5-
> LJB)HpO}9I_S+4O6@a9QwL6MwE1hM&jSC<
> zEyZcRL%({uo^z$;|Fw-
> 3+X&A{)_mUBiEhf6IJ2t0<$D5okBkY{TjiMdJn<a~@v@j0
> zFXXB@YcYO%pufbi%ECWze+zig=#%twgE{uRX24yjpZ$e?^Krb=$F%$e-
> 1TvKA%54g
> ze$=(oc|O0Zkr&SICgOh%e!m91(fGX)@PEW_BX}7s6h|qu-
> oZ8>^@@FZ4azl+r%Wd5
> z^6YJk&Yn+R&}PE64-P)gXZ9)6hmlSbX{&mo+EOqs-
> FhDu3f*>HsE({r>i801q(|C~
> zpy|h4OF75u<6~k6$Js{02M6_fJxJe$bO`;#asi~*GT%&-&JLu>TL`?3;42dSh<>oz
> z?-
> jv%tNmlxR?G>#xJZ}sDHG4sD}+Z4!+HlBedopi7OnZ3qFaY>y;nPDodLWNaQQ1
> +
> zhT-=;Q~x3H$Jl7}DcS!`+%VX?#2Y(|CyN(-
> eS~@JFwOU8!U{*i{*$ozBVlh4wqPXe
> z*Muz`3HuMimXCz}oUj{4!nz1sY=d>Z==%|1jU!-
> NeLo=HH8wo7<9mQnu8n}RPjvk|
> zB4wj5T06#w1SuB%a>UTfo#;c(dzODq{k%a6`huYG=yx5?1dR1<9Oo!QI;8vW$k
> T+#
> z-
> G=e)85}I34=4GDd3YB2X(H)%A!F>L9LvzIu>AeV3vzzm1m6pO0Ow~5hxz2E5je
> er
> zgOga!nz!j=TRa>F4%c0Gp)G6&`TrQ>qS35_b2!_>wlsrQBi03^ozQS`JZatoSX0$~
> zK1tr^^JYF@pLA=o4lf5>e&?GyzmmMyclg<7>u)1&<u^>&_k7+<cGZ8Cc)iUg>
> _y+<
> zr=PAb0gUuWe+8Z!LEi(~X+m1n2pb4lWxrXr+&zi10&U{m$}*_$5b7Dilhd;I-&S-
> i
> zR>%9Ej^`si@Zdq+!+0Wl|GdR;nMA_=i$(mKa-
> !aT(uF_jW_xF%oRLm)+t(_VJSf9U
> zAw$ZIwv}acJ;3^(vdckv_-
> sRTncpNQWKSkPrmRWdjkGq{mdocRIVt;`85gi{Xuo4o
> zPex#<9-sWc!4Y*iNYk_#q{F&sGq$0gzekI0Zy-
> &0586guIs=%9*L>UJ#e^>8waH?Y
> z1YINzTY2Amz>~xlpPcxpPd>U+r$O595*{~fI|h)JwJkm&y_73m4*ZHHUk2*8X
> #I)#
> zo3{8Q2lD)Thv07lu5L5taO$)cYv{Bk18eSTjJaR8h0?DfL-23e!k1CLG5UU;XXa&4
> zu7F8nhG9GZdY|vd!~?7hx=fykdjK&1*5SIv8(T4+f**2BvA(i%Z9}-di-
> PrgNMr0U
> z-CoR3&jQANG25y4OFLjz`ulhm=6pceTJ{8e!}hd37L73o-
> J#ylXSVvh%y0M+)T3{M
> zMw6^|N+$1=|9yl-s-4tDOUBKFjRl@E47-
> Q0IKUjkunmO8qpS_qKv)uB5yN<1k(|AT
> z@D!A{=|weQlB)R*FE_?D`N_B@SYHl!Bj6T48KTK|8)29e$^wl;aQVj_^*51*cN
> kX|
> z&-
> jV~Yq}Ub*x*YE%Rv3N4&z=!*rmX;!R8a@2Hw|(@d^mL0(dsqRfJ^&@3vvQ*
> @Wc+
> z&j!mP>?+`u4&!|ZFv*8GQyPZJa<Kjq!fzUe9fl6N0Aqh=V2oMv;CM^{oavf#gO
> 4|P
> zL4VqC{zR4m?ToE0!)2B~Uq8;IRrcYdBgRw|;q%l^(t8l}c>gcl8*TkhUjL4@JM*kD
> zMIV8E)|;lqb9{Xq1sycka3gfEO!EzFRP=d(F&WMie+8{@T|7=$m@bA03)96v5*
> DV5
> zZxR-
> !i$@6?MHgQqJWLl~2JC!Ye7?R5aO$EghILeSwb%cUaL@VrxQ}#fdPjYH0kCj=
> z>>w;mA9oQJrjJ3w!t`+mVPX3C7-
> 3=hh@i%K`uG50VfuJ4V58|{BjAnD$EJJl9nvGY
> z`MLUy#Q!SB?IC0Cr4E$E2J6=mpSqg;s4oe+OI^{&H1u^1^3Etp?$fvkKOHG%r;
> QhN
> z&qs<9>OAodYt6pNC|3^LMEI1amC0`Eu|-El-
> mR?L^krCvup3z~_+ffyMxsvN2N=se
> z_jl;AjYfvn;=9hw`}8yDI@XTT-
> 9}mBf0gt%MHge88P7RhY;8;_P{b<mJ7FjMhXKsP
> zpCGo!`5s#Zv-
> bmjP?qZseL7f@93>{a3V(^bFczq{DI>`}6Eshw%mA)4xL%47vkTDn
> zD#YK3cREe;ktXx(ys~XB@)OqHDS#cmExFi|o7a(+P2Lj$=l%9k+8k%*{e*4CdS*
> ~g
> zT6Oy2$5IaBPQLeNJeI;XJ%Kj8i8j3@OLgsM2TSsi_XgW!lOg%~6tTT<zCH$Qr#va
> f
> z>kt#Xo1|jztp<<eiLxM{e*+HF9`G1$w~ix^^@Q84w+M$`h1;$FB;2%He$XS`7u
> fbN
> zyY*|cPRobYV^13kcaN}Niq!h^Ncdn8!~Ox=Y54~~WnDI3fO(yON%6zJ3&;9C;*
> Ega
> z=X-&8@Np;u^4Nv6OMWT0aXfq&XK+ZrcM-
> mHbU(uGBeBf(Fq(Ui?h>!)G%b0{;y&M2
> zz?p6~<<n)}?}i@OdD;QIpy<+l$3xin;5^`fKCmqJD*j@YTZnSn-w`i}9&YyoD4T)t
> zN|-EU-
> REVwI=~yHVZ0`!<%WoO3+5G$Y|3OM@gPr&@AbrsZ1)jnr}s6$r3uiF1x-V^
> zhvjGLZv>p{fBU+ZzEI=cT6gbwExvE87H{?AB;c|hJud?DRs_;DB0p54=DVakz5Q0
> +
> z8C#w@I4Aca$^&?QC2Nl5%UV3k@M&j*c18d^!>2~ObRM(J`fkViobs`Bpn&i+
> (TV+$
> zPQryq$!5A2X^Un$aP&4|ZtYTxeLeCf$Duvk&)CR4J<;(x`8+7{dk(7kVzTCIk8sYh
> z{6Er~20EY*dzQ8;5x$y`(O2*n_RCs|#m^MrNLOI*0rt&;CF$iR>gD7=eZ$xF_iy@
> |
> z<3)U9?t)|6<}E$u6<W$iuq7&FPrrXR>|<M;sMC;E@ytF+j}{X=o1`i7*D-!K$y2;)
> z+6007{=3tPUC~`B!F$9Mu}LXbvccCTWr_qmCHhcGZ>$z?^;0?WccYEm=i~Z`>m
> ^Gb
> zf%S;<qaMb}D3d|Rfik&+GC|ut$S*^itIf1sC$`yOhhwz(X3%-
> af|+!uqU`;EbwQ6p
> z2cRbhAY<%%rmdIjsw7d;i?qe3g7TYL-
> oz2GgT(z1_H*z@DElL`Y^<oOhJ5_M4*}i>
> zxJBbI+P#J}zz^%&_Y=jb$!b3NCNAsqf~IQHCXQ9!k8;|@YF^rBN?qXGV2MSu4
> Eiz^
> zb=^d|mhO+!;uYB1V!-;OVOh&#wD_ffvAzsE6F-
> ;bO#bQXvrR%s?r`3TUjW=*j4P|2
> z%UBkD(hJ=zair9@M~jj&?Da8U`sLHUo&UAJekJQejLL*z?G^Nu0miXz!MK+G
> 8e!%d
> zl5pxN$K8#D+w3dm)orTs``kulc#Q>n9e+LGjlu@QI9SZG(lCr`yh7sHU|j3XBh7T1
> zZT`9$GZ}@SS)>WL#p8UW(;T9%9eqNZZ^32J?#pCd=9nh@j}AlDdVeE*7_xkm
> Fvu_j
> z8HR*wj-
> AE~gZ7o}&?ig3gt$1{>Mxh%9AVRr*l78Y7YUnYm)&I03yPO=hiP4;)3S8T
> z;`Qe`pK87u>6}BppTT@#^$q*PYU2mMqrJCmip2IJEw8^g-
> h#bDTA)GN)Sc}%9$j+Y
> zkgc`T{R40$8{HE~L(hGL+2@Sk0NxleTz`+5mK)-R>i-2`R{dodcXu;w={tBb^j(aQ
> z1M#+4<)XKC%j!>kPnzk+APXV5=WNE!hwRnx{?_S@vTnQ6vcy2zO`<a`5BDn0
> 2hjOB
> zqEl$N9}ydbANOB~4KB>Dq1VI)mFwpnQohFcY@3uHj5T!<^(jHb=&`pwco{D2
> Zx3SM
> zcW{rC-}MmoBKolJiFia1dtKa<4`9D00{b1k$FQdj-=}}7u_qrKi~Koir++N=f3Y{`
> z!oI8vwj%-bKgQky<31Te_|k-
> Yy9S;67&sqYrVhkGkJ=?Mo4DL}w)B_%c`4+Qj`0nf
> zF&5?OB*Y^Jfx|M~kLYQZT4SLXlrzUk&))}2*4++S;Cu(_>zEUV_{vpc!1edR{pl!!
> zwMF;3GP$)Rs5rTvAWjH0ICdIkbpz?3j-
> 19wb;BX}_oUefTYW$lov@`F_WML@P)>VE
> zLq2`opcl_$)eXTW{oWZooc0p^{lSHzZX5Q*B=B?RwPJvM>LSl*uPVg8B=VJQJ
> Wn*A
> z{eb(gQU}H(9m2j|g5E~N%gUwJ-
> a@IBI>Ws+>@n^SeF^(b*xUEtEIQAPBQ4{+kNErG
> zzI8X#4@h#SL!QrI{y^QnHr%cF;pvTD%!86K55m_ur+~j`b>KLBg~(X!$8Pc-
> JNV1A
> zmpriX^i?r8b$6lv&neIm;Bfxrl^zXwAurt}zLI{mC@%1ey8F<td{%!YJH`6I8RBIK
> zb%U!y%`X-
> 4b;2RO;>Wt}KJ;U$h_35$h>~c?w^T$hucTCstdquy5;;Qa4t%IMDYH^7
> z*2ojiIu~)o*t#Cf1;p|6D^4^JI7xMw!wgz#VqK7UHzn5jb^L@nmm*58BA%L3rv
> a~2
> zTwE8_@005q!A~0Ubb4<nPQ`pqhwmyJ@{So+`d5ncGsscL`<CJyFrRzAqc}gob
> Gk#_
> zPyk*f@(wv<VE=Rq%4Td)oZN$FIqA6KJYkk=e@=0}Yn5}x4VOc`<AC40S#jdbo
> KX(v
> za{kN04LOH!y*-
> MPYp=t=717cTJ`462<PKlQ*b|4ZhuAvyhE(0Z=`rV2`Zw8%X}|Ey
> zzAnf0HNZG#gK|QPaA4j5{yv`RppS_0A;gqy!upVgUp_&%e<;5U<q#upZHpHtu
> `gJ{
> zah!qqkNG*Q$DD@<7s(>tqQQLPVXZt|Z-
> Sc7dE1V|a=BI=E5yk|rk~>3sC9oR8}x_x
> zUO!x30&lG2G;ruk@R_hvNbCIi#7X)*dVOZz-
> ;hUnSh(*Z&3c&r9iGXTMOTJj69R0g
> z?pKEEri@tT&<3qL%HsV}gLi#A+RvZa`in8Jk8#F`ZSKW<LBF)mte5@J1OJ9Lk$h-
> ~
> zQ>85tbz?A&Xp7QPMIHU=q5g_a9qKRgV$mc$J`>i9b<S%x`t6uYhUk-
> ~D~zT<+`!a<
> zA)27^I%tpw`qF7vi#qNfy$fDgz8%j)JPDCK5xSbDiaI~|PScQ&`*8k6+0^~vbXvB
> 4
> z&IoNcbns%R?r?rMFHMly9=6A9uZ(oxIK;|runfX57lN;CmJFwZ#~|WpAt^ey5j
> v7#
> z>cAG3Lz~DC;RX-
> zZ)`Fk?t{QPuV0(bpSw?^e?LP1GKTYsBDLy$f*20@tp*LA0b_iq
> z>-
> O}#gDXTG_eC`D6$P6ti7D{~SdU2}HU3>^Tgo>P_hkAZ#yZ8M_;&#N7Gm{;G1l3
> G
> z{`j>R9}^=*#*CH5$6Wq(rTBeGj`<bVMsbL>r(-?va;li{`h>QW2NK0src2S+rEgLu
> zzAHt?ybPT0Mu@LmE5%(GjjI{4&j+Dzt3cyn#K|w+6gj2wB2nC<NcpRP*N*3h5
> KHZe
> zlJXBD9YFeZNr~}Aim&v<NcqRdh_4(0{C!+Y<+zw~5f#%f<e2xRsOzSK<}akEnD
> @qe
> z@~0y|eS(O8eaw{jYXMIeaqepY>lrWQdsyE@DgV7mp8RO!MH5$=690O{l=yg
> *IW$JX
> z+!ycenIz@6!(R1F0dATnza6si;Y#1+C{B;{xnGx3<F5c+k4TPx{UVRM-L?4GAxUzt
> zAx`vC_jje__y>{qK>Ffi=?P2S4@|xudCBps08dXwdct+?Yw_HZCgtBh=2~|&c$
> hwU
> z;jzD-
> 68V|q7Q5d)E%KeQg~v{UnRgOId{8)ZdoJ_jr~4;or<1SCq<p6DV|_@cuTP0j
> zcP@4l9$<c<l>hD`PyRc2jvkj9-
> xDk1(?ztqXOWb@EA!f89>BdKDSp>9ue;|uDgVV(
> zr@IlbEr2;P=DW*rZ%!?AzfT@-
> l=5qw%iQS~i{f`2pmmFs|4u}d`<=5Q{}Ah1Cgs1J
> zv-nsK^g%dM;@=(=`T9ETeXPIUH*A;(djG6s*bK|A{}kyEa6-
> VL4(oOu={~az@m>WE
> z^&CE#`^fG7Je=j#^_=*Jkw-nZbiD7BQ5W;dU{8LC{Jzt}FfU;H2|GIs%K+>}!Ul(7
> zy;x7~0n8fzTwgxIw8<-G$#_0<Oa;Z_T=Fl_FC5o|Tl|v`mVE+cU1-AyAFA2(p-j6?
> zT#jkRSoD|zZ1$b36E<QS;`Ov0+aeQM{31D5JZsF`+VhGtK_s*^W1VjC+8d?CZ$i
> 1|
> z$YI!F!0sX~)1Ea&Yw@KfZQVvfH&_qjIIzF@>1c;skrMC0T3a|$i{VF|H<yw|8E9D
> T
> z;@*rsK5`s3ig6JMb5{xI^(ql=eP15!;y%nez#hYuZt}(XGaa}W4W$$H^yH!R$US
> W0
> zvc3s8H%wo}eug0fz9oI#QqDV=7be0VsetYpXQz{}Kkjh%;d&FXF`Q9q-
> 7Gs!(nhi^
> z^z%#Mw|8OQVfjY*eu*y4H*2NgSEVPwHX@E9K(}DAsN;UYez`4WmS1r)y;g4
> 9&bfu~
> z;uiLg)_qV;ST!BKd>Q(w9Q{%O8S85YoJreH9^ynReF^%3@V|!iL_b%IHro9$OE
> +9-
> zBj<U}jX}<lD&|1k1=eYdpEA~_`*U2s+2$F2Y%q?8GwsbQhIPaX*n5QehG7|i{R
> J=$
> zwpziwp*b>#*7S!F$6<W4hh^f2%j^XFPlS1gVNHPjjxd{^mI2mHm`zW;fc=Uv$j
> 8#v
> z48UFi%u35hH^-
> ^@R*abKISklA;8^>ELweYZSgbh@TX9&(Xj^DAbbT}Gn4<Uh*dC<&
> znCAE}@%I34L=1EkS`XT3p)AKuI{aIUo<$3L8zX6joj0X_#x;}|eb4jiQ=v2cXGJUf
> zHyyB`Fy4Lm4bDi=#<<LPAChohN>7{T5Un)yA&2iiv@e%&{x-
> 4WWt0n5$xhD!t=oH(
> zT-
> %Pcp??!QzJs_rpE+LG{%4Tp`By$4fo}5N13mo=aQ3$@BgmZb?J~5BWmyN|zeT
> Lx
> zo_-ba2&24#b7NS3{1AO3e-
> YBybKTI0wKB`$^&jlNs2e22aha|F54_(GJdO>^o?`F!
> zy!9wz3muVMmu|*78ZxARH4Sp@f-
> FPmYx{bXG5hd!EX(iwEG;j*>^~}}*NHVS`)udm
> z($=%SUYtu}og>P@URiNt#JxNCe#~2FlW4*^46zZ(b~Y*iyTDil_V*s=IHtX3yY2S
> 2
> zJT<x43%w}A9>^bIL#(}U+C<u1%hp<Tg-
> B~q<R2fT&L?#2lq1Hnp2M>2{>kT%t+m$I
> zWyH09n0!aH)h64aK3OYT!^<Ex)EQpRJX7N4enX@94&p$vyJ?<NU(fuBZGbLFf
> U|FZ
> zk96Za%)fxqN3i_pbX9F-
> +~GHr3wW_;k`8HF_Vkr7dOx$#v+RmR>ow4VyeDA1Pe`x5
> zC|-
> r1>)Iry=ysZQnCCnj$86QtM+ZSm<iy2?rie}p_CpJXy%!6{xj@IW!Co8%wr3RB
> zvo=_0irVS=?43D1xKpltzlD3MBkWnBV!o$>v+RXZE9Ii=%M|1Nlq;}~pl$JU?T&
> N*
> zshCqfDpXoS2iNb_9-MTBb7~0X62-(8D_(}P8r?jLLR$hGw9lAZWqqyvKIb+k-
> qV1s
> z2+$tMVt_b=3B-_iKAZEV3pDW7;D^@O=AP*}oE;xT-
> IVV%#Df%EGWxttD61A@ex8Qd
> ziGqviSFi?iq^kK-
> @vhls;aIg8>GV{!Gaxc^6_=WS1h%pfzO*t;%_ogQJ)NAZWE$xs
> zu$|PWM&Zg8fFW+Us#iaEE4x|0tkIT;4YD71huFaV$BbyP!OQap$s)fAYr>3FkzX
> (k
> zS0?=6Sg{ZFboW7b9aUv{UI)(R3r9?;kWZFFz5)0hk*Kc^aZkJ~+1i5VUPW=ggX>
> *f
> z$8q)J+KRpSSnN^FK>k;-jvE^+T@U4-
> 9r>Hmyth8WzDtxSLHrH#qMHBmrU_GCy;>BP
> ziZQFa+BZ`oqOo^_bT;HWK2(~gbd~14eMf419O5%8oRMzjgVMZLkuG<RagPD
> L_s5C&
> zYsdU1B~6N4H9dX2+xPX@DbbDJOnFs|i5Y~9-
> _e>=u8Dg!1+g^Hzdr@*tqEgM?{u!$
> zQ1&3|U78-}-
> lcsjWsQi7nU3<)$GxuOwTbDgwgCRBP_8Q&vv5`PT&yX;8~NLniuDIB
> z%zwWBhA%S%GK{<&?TJl`f2#^-
> O$mccu~w`Ti$!bC>A{jqfvcboGtnoP>HQ%#T!Ma>
> zhCZPG^EUPsLrSFHck~m}g^1U69X5sba2ED_W+SfrG2-
> t1`hHk~9^;VVw}X%P?_v(4
> zk3l<0SgRgmH~nSe!ya>-
> q>1!Z7%L?_^WF|$&$2&5zDU@d&$=h#d>QJFe++FnDB}$E
> z#K%%XSX1@u>yu$Vn!!g)7#}=;h5eRz)=gX9!!oev;k@9ygTc$tduqdT<&d31``9
> +x
> z&aaZLbN;c=Mxn3CEO@a6hp$9=Sn%sF0AF+gxF-
> zGI!WuxHh9lQv}N;fTO`=75MZ=l
> z0`jur$htkZY^{x_OwvkNa9$fSEO=NOQZE2cx&Yi62DjQU)&~DVZGi3NJVc#1rk}
> Sn
> z`u>;jm#9yTun|LZz8OQe<}zz9em3;rBj}NYi~KCWe84+m#E-YT-
> $<d}Gku#0?=|n~
> zz`x3TMvVAztV6!i7AdYgWa$lKj8>f(KST2b&sc+B*2(p`Rqtgct^dHCv{|Reg#FyS
> z6Mm8T+=Y7*#sTqe!Lv2zV1J~Jwvq5}5)S@_>y4B|k?6MSiZyAxfV;&v&O#S+u
> 4BBw
> znnOmcqYA}QmbY~OEc%Rfe8;3k-
> V)8{CvC8kCf+s^MjA2Z^FubgcT7Bet}PU;_tEbN
> ztMkt$4*J#fVQ`+=gl)3Xdc%b2?_hvO^7ftytGD6(hY7RlTs2Cah<EFCRoKe?(S(%
> (
> zM%t9a0TXt!iO2rbWe*!^(bxT)ur}>B%Pld>Q9egZ82x(EW*u!N%%Y`^!YlVNiJx
> yP
> z_o4~QvB4e)qcwxHprh8=8~QWcyP&<YzY~yyab>l4qe<gp&?V2T_f8Ww888d4
> &V(hH
> z^^+e<SGi{AJ`c-
> QnfX144^J|m{|$HIcG=#WahiFLnRy|cZDRSGO!y&`k20UXZQ^u&
> zHkiYB0`WM0;AdfOo7h46Ke#<7k1>R{bCMp*Ae_9yrsz1&;hC^~=cN2w@yuA
> qXyb$L
> z7I&p6&NjY#NZDZx1>dEke^OhDJXvv0G~c<P9k6`oj}!&#KdIw5{KPW64}55s>_
> nVo
> z;BdR_?4KkC{u4f7AKtb1<DKi!B*nQ|7AFFD&y#bi<y-GeR)E`<!uj%3oGCvJK0-
> <a
> zVn`#`I_zJ|23dRA>|@5xPJ@q66h}uS&ksS~*c-
> ?R$iwd@!Vf;tg*jUNM9OM(AU5|G
> zDeKSJ|D~U>wn-
> fI_b$qZFFJd+BK9TV!k*8*H*p0P;#@!8A5UK*cBDV0b|U8ANtm7v
> z;@q`8{S4yQW_lLz{T*s&7t+v?Zod2K2OZX@B0a*-
> )%R7+SPy&!>h5WrS=QwYpPaUq
> z@3@?XANdLV!83}({Y!K2`a<m#?@L)d(O84_NLkO=+F5q3@op@2sZEwosMy
> Pt(5{0r
> z-c`Y#r-U{Q;yInqXb;Y0t~vxiTY4UQMT)d4fM@@ws_wrBV)1?>)~xAx-
> `0h7F83aK
> z&9k-#^!2)MZ~jyaT#i2R<Br(HKFU&CDt5?EKvvKd>ScO@-15V-
> v^83H!$L8zxi>05
> z8gimeiz3mASly&9tPLo;3$77{;sElnjzETd_x|i!$L@1qGURv``tlj%_$l;d0Q&MV
> z^z0KQ5;_#sak^L?ICG;qu<oD8*3~a%N%7$4cTyJ5_gFgAhV!+H=ZKP=Ibz==T-
> qo1
> z97|KuP9%#bwzoxLPP23g@k1B%gR<_GC%2Re>4Z?_)~eZ}q)|?3VcUoElZNwi
> n4j1p
> zV)b?1iFap-5|7|sH{P#B?4f54_TwR6m3=V>{ahdh+G23FVG-
> dtCkOugPTavu<782?
> zAN(cWn6yJX=Q-
> AR&U<X5lGqaZvKZ(o6a)E6(rc&Xq?SiPk86jGF)1x?%9CIF1o=~H
> zChtf=U!4Z;k0HMZaacdvCYB`bpe}K3Jhk@g4^w{%tCSrso*Ua#c&q?%%JNMZ
> 7a0G5
> zl@w^$pTd4TV>Ok~DG%%t)=NIVd)$RKNT`Fhr5t%>iqukG6?jQ-
> 4RveLvBGGPPk5S0
> zI6-*%)r*f6Iz)aMU|yulR;A~qJ4I_c_GjTwv~E<ATi%i<oybs<TAs$a>1)7qKqPeF
> zjKRaKzfp)etiS)uc<&hPO}Ftv-pEgnGNpq$%6jE9n~#-
> Om95wLaVEx>Z;GBcbp%gk
> z>&p|S0Ip1&3cmC<0N-
> 1CQE|q6k=Fws>krWDGVtJas2`d<pg+Mwp}_;%kM*F0HDE$V
> zI1ffU{dwN1De+i?n(an9`r>%Kjv-
> n2^T?yOB1Ny4@}f+Bgu2;hjp#pViL@gFeN~G7
> zpp7g=KS@nbb|-
> 7NCN^%TekX5vvRhJC?JZRjPvm7iv0YMD?=4W0^yinv^SL)iiKEz$
> zIeN2_(6S%<|1XJPF3xcuh3t>!E0dr*ldxC8x)j}xa@_YpU%!iSe-`tUB#d|o`@aIP
> zjRj6Ko-
> +mSpl$6g1&n1R3Fn@Ga|_bszYlue2$%x8Wf)JyDZ}_KHt`R8;WNrxyO){i
> zjKUOmBhuHI>0WPwTT-@mFEZ1OQCktWOLiBU=@#67iuRY8V^_tv6_8Z`-
> ;rS4UBy`D
> z9&~vW;`(^@#~{v+Gw9{2a0jr5($gk76H%V|dR_w7ZO)70%b^E;mvD<%k9#cg
> ^*qFq
> z1o~4Xd)(#dM<En9=d#dB8Q;>tTs}wIAV4<+n)?wy;dta2d;)UCrdtASEBR9}25C
> >)
> zyi-r~psyX+w?MpM0?q+V*n&DxcYO1vr+4(<<JhrfQ-
> VGo8y)Jy<(rar@Ep$}d=iOg
> zco<9D@|pM8@wIX*dHfm1Ncs@mbL{vkxs_u@GGWJ8;yWl9C-
> rQPZV!@md*Fb)ESo?c
> z3QH8!TX?K|6Y2*K0paM#z!;!i2tbD9f%RK;lO}YjwLqD4;xO7f6=UbCs6!vSz->4A
> z+VYvf(?`&4@<cr$PaklcfgkUZq#g6Y3&&0y`YauD-&DjwrXfaR^qIqr7*jrCH15Ln
> zF5TAX;{|p^f*g%DC5_r9w&w`i#Wv}71?^$m*rs;aI=xNchi&3mW_#GKn_-
> tiusLj7
> zq?p`N23(IarA5Hb90T8N&@sy75|hte(4VQ`aSL>47j)<um&3g!w$MF)y=(m&z`
> q1-
> z(c1)^UC<?-
> V}2$Xd%Do4Ezqa=Rjxd&&n8*2YozRSzC6chk1U(>J3RL+;=GQSw3Bm*
> zF~^fH#_CkuNBA)2w>8eLosYSe=e?i{3eFN?t-
> $qG`rbh&{g^;J<|0kB9(oDiUUG<m
> z#>2Qr3q5XL{;b+r0iP*=`M+!@?%zQikNyCBhabXkr~I3s<MI-
> DhX*?Dg^qij#+bkT
> z6T^S7))so*&GONAVGAsO%JK#1S7GiPpicnX1Ajp3pg%zWk^aCLn?EoBf1nQ
> MZ#WL$
> z#rIQ!^edZ(ztcg#QlNjjc1g93Q?d8_n3RRMB)%OnrGxmoZ_p=>ri~MInYp4QAs
> 4>o
> zY{NGwfNwBaJh|OJ9`hLDT2mY<&I-cUq#api`3J-Ef2KbF8~(v?e)5oikO_al?jJm#
> z4P81YkMIxJZp%j?f4ZN5IX!KR;U~aHD<Q8c`~>oJC>dvi;2+Repg%!BVfKy5JIE*f
> zgs0#$yeTKc4kfp21kYK}jhj#3bL^^B@GF4xl#<etZ2A(+pU-
> )>ZP*?Jp8MbP5t_cB
> zkI-
> cE5%4}z>r=|)mNebQB)9azN0@gZ9|2?G!ahRk{{=pR!NdQCkH9{puF0^QcK<-Y
> zKbQ>vAb+B!`v;TZAGl2aU~<-z+g<Pv-
> jb6~@VRpo|DY580eu6={V08dWcUcIi#kI6
> z;5`29z~JMbh4}_w1MI0G-yl`@4Q>L=?i-
> XKUG}s=qY2}m{=qU6M=mt{f$PllVXxs2
> zEHcxUKTv3<4S!&=yTDA}i~CE^aZ4`r1scPAfhN-
> z(BKR3eKarTY@VmEd;#X`d8RKw
> ze@(^wZutUwp3N7aPbaXy_m6x5@-
> u*a6v}UojlX~07fAkJ@dfSxFYM0>jPuXy1GN7G
> zA0UJ^i41#!GoL5Cm@nxIl%Ni4J`48+_#TYi7kCfpGVl_>987&ag!#4!b89pAN%X
> !_
> z+|8Ify_hRAY(Bsi_y8XG0Hd|#AI<%Zqs;wWk8tj%z2TZ95^EC9`~8YBZn2*^i9R^
> z
> z{cnJ`Ch*32U+2r5_jkHvw-@t1cwEo9`WwJ$Ca!JX-
> <j;y=Y72`nD>7LJWEdYd7t~n
> z*1XTUN6h>1O<dshi_ZHv*XO3cUn)eWODMX}On=$W`2})E+(JLw$ul<aC46cu;
> v}iK
> zJ4L64cPZ5bd>;vLp4WGo`K8D!1-
> vv_bdCXhsGMli%Zbm7av_!nj*9uTG?jF*{)Eqq
> zG1jU31z~X{#@=z3lJOPn$15G{aPEj>P2>Jx)5y6#g!Pesg;d*vy-
> WE<tp9<_cN93!
> zKiVsf1`$UJB93$nF{A^yG<?TO2*y#wstmMML+t5Ylz|)uLX3wXjr#!OCLF_R32Z
> HV
> zn*hF(LLWZEA&h7EIj(5YSq8YV=bGeZTu;Cc<M~!U%5qMEOt3zJ%)<9l!(vSKI2zl
> }
> z_|lwz((d4GQf>ProFiE#WsL{!DYM;=pxtbzgm!Yjn6acLtn1kxzJq)k@g6_M+i9=
> d
> z`bmap4Px!mcsJsN@GaBL*b#laE}Tad4fh;_k7dM*BE`O5oK0;{U`$cQUh~9`tkZ
> ZG
> z6m=y+E_$5~tj$r*Wly6FWySnP$d~@*HaxTZqmk;sW5DOR6`XBx-
> vAlXN2mTfRQhY!
> zuk9198g!ogzX{&kfq(c}V?L42;G7HIWyuJ6&ZLLbGqCF|jd5b29d!zvRng$zGJYjM
> zXVg7y_QO!D%7|yuFHQ)FR`tZ7(|<Aivr~gk?(O(9#K7`8+1a%l@Jq30&Tr@7T>!
> ;}
> zc!*a5kDAZVvFSK-
> fO%zZd=C+MY%}w`F5~?hfp22^kr%j@?Zmjka}T~rB|&Co864lB
> z1D+`Z_5)+HD(DhVHhoer)|H+xpZnXVOrINZTK#*d&9G|<eEw#mT~>@3d+C
> V(V!t1K
> z^~UY8Q)B;wU#ssmwhMZ|`dn-
> eWH%K19fc<KmFH%#NYck?2>bSLV9ok{&<$NDInyKY
> z-LvbZtQE*_GI0dPGTQYT<ImVgED2sKIXx!ct-
> xWMc}CERNps)pYK$YRE$k2DY(4A7
> zSxx9B-qk<Rg*9ZgSw|Q6z`A^Ya0%7|QTXoLQmGc7Mcx*$<?mzubr?s;-
> ?>!Enu|QF
> zW%YKrz@r~NQI9gagS5$~daYD@2)G$brJ`)$Ej<r6X9zd67<LJ`y`Xy;@T{{L{4VRz
> zd#q>|<BOJz?fnMb_u&vyg4ZFA%0g~Q6Y`06@E~JOap6*hc#Zw*5MB9Gaq-
> MWI`-)V
> z;!EkcxbEgzBne}p4}G*5ZO~A@Od$S+e7*yt>xUA3l<Pv`;Jd6H$05&9A=cO`ct?
> AA
> z9%}{GP{FUtV280c=nixUwDv(C8J}!bp(mjXiTU{6s4MqH>@yha(#+iN;kyI+c_Q
> Eq
> zD$%-
> 5YUu{9z+R%x!;zSyR^L)jd)G<>eRoL%{Tn5m8<Pg!Zk7h#xmVKnWkbzlS|P8w
> zp(A5jF-GQwl(DUl)!b0wSbn>3Zm4-
> I;vmc)+lp^!B0r`T=Q@xdgU?}TbE&I5cf~mc
> zZOMV2?pNnaMbrU#p;Yu^<nbL3#2Rk*V~z+F#<qs0VjSX~x=?dWYY6Mq5Z-
> AE-6A?e
> zd?&aR_o(^1*{`7}d3Pvk!R|ivYbZ+D&3Doym)89W&hP}6T|j=oq5SM)Z16~oE+;
> kF
> zl#|1AjB*Mf4LjWlef%rG^QOzrHog;<$XM6o8_%*B(B~txF@!d17}G(tv#UVL3S
> gXN
> zc%|AVv@_v4+4%@?pEBiP$Mw&XveF@w!yd`WeNR8$b1S(9_5%1@N5KzW
> EoJHYu1Zeq
> zd+Kwcy-gOc)F*k7?DRsH3SD^ru-
> veVD!%hPh;KcHu>Q86KkI>BY8VSAp|4i_f^Gb7
> z)PXkbqn)tg41YL>_v83oMd%vqv&!o4Uz>6=_UZXvj&O6Y>T70Ox*#Xo1MSO
> @@gmHt
> zS4g$o_grq~hubXmD%dRGHO-
> TpGl9c>Zu0UAKI?q(Eak|t{x^IdhcdB`bB;U2mGw6E
> zz~ABiiq+0Tb4Sk0oSUvR`SIiIX)(Tm$-bd3(_Zncsg;Io^fcauz}eG@9hU)*ve9xR
> zXJ7@|=a6bCCxQCxGPCM-
> U9JukUnM(H&j9x?SqIvc<2Q9Fm<RiY`Oo`hsrG&D!E&Ck
> z$=;$vo*icSE|lkZ>w@gs$3eHQmWo0s3!3_w67r+#3G9(|F5qKxf7dD-$^-
> xK_j<3A
> zijJ~u<b}(=9adJ%k(`YaG0yX)qQfjZR<urseG*rT;tTQq+b|j-$geR8_2)`O-$Ne#
> zm_D=*a%#B{jh}_l=*oufq@evdQc=*PvCouI+GkQ-
> 2>Y)WqQyGxw#%OdS>n6iW!X~E
> zw@q3-pe3Qd&?mk_kU4qO&ng1OZv&i1-
> #in=eNOA_A^VN*H$56wU+8klc?fo)X{J=m
> zy?E|j(&zsDhr-Evev7)3s4IBBK^C)VThe01NxTnLascB38+0x3%UaXKq!X`T-60gU
> zQv;9KuV_8!b)CSw3?(d!cU>PR4=13XEu`TTC&@ScYQ7gsznbmS#}m#}4V_O6^
> XIJd
> zJhT~Qwzll!Sicmqn})VzN=5UKce9z#v4q&@QU73DH)D#N`(2ly-N4-
> m+*!cWpgS1v
> zZo7~2U3@>ruJ;RV^-=G|RLLo2LjNw2iZYPLcCw!(%$-
> e;BlW+JG;B7V{*|9)k&nPb
> z0_ME#ZIB0bfIdIYZRq`L8~3wGcbO@_0mzSOo-
> IQ0*K|F#_VSyDeMH)2ervY^zDf^l
> zF#2SlWru$UyJ|h_<MW8&Q|h{c^G7_VPWcAGC*D^(p-
> qvTE~gQTg8uEd`p7!}v&3vi
> znb{7sZ#LVP0yueP8?7@)M*9*w=7BHDg85&@Gtaha&?Vs%NAIGX&kbTONQ
> 5m-=y(`=
> z+~f&*b~Fea+GVWiI{2L$`eEVx*xO|J$r9erPD5K<iIUSFuWcXd=OdyuRp%4ub
> <y^I
> z)ZL4^z(;E@&RCQn-
> 7^vM+9W+by{`s!lJ66MZ$Nv=KhNglyOR1hjp^%dL7vfWV}4*=
> z)_KLRqyL`3^)#;E;j*78?@vSAd`SK>*3Am`&LcXWM|__8(T}xJ2xIFQ`k*UOD)L+
> m
> zJ26Qr;<td9w+`zg*4sE%b|yU_pMh^Num%0@{jDg%{G6YGIc6KvZwSuU`Msb
> u?HRNU
> zWzt(Eykl*Ax1RlWsR<8km7GT&ko3O;Fa~hFe78|v#<;TZ(jStX&A@|?*4+jFhq
> #$0
> z4bOv;^XV4J`HlM}=i87E{I+g>o1ONc&TN|tyzv{*2duO?|5<71Vh-
> oSL$3;b{#yyW
> z;5ezMhx-
> D*6t!NY*>>xjP`YlKwu8E;>jcLk_Dgy&E_lX+;{rUmxexvd(pbN&8nUI<
> zSQ_PgDbK}lox(cpwp+x)*TA>Ad*dYM#mKwioTPtKoBA600OZ_fymQb8o#no
> B1l}d0
> ztW=!e>B2lrJjYh{2jBa!{Y?a{`}tjuMy#17oZ;sBg|Ps{Vz!Uaealwbc;+0yZ}nMY
> znm!WG^E?TCaz%-K3N8<Ig5NIy&0N%DtZi_n$r{gyx!j3&sZL?c`Q@(sE}XX-
> I5()<
> zCE9JyNy%d3YaGK;LRVhF-
> w<Cj&lnnGIJpDwgKmRe*dM(8OdfT(3v|+mhZrMcc3i(~
> z^NQ9jki*Z;4(`*i2GVp}=s^6(@fvl-
> qOHPygFfnaVC*G!oWwU6G|+BD{GkW_4bKDh
> zLzeG@rb=B4JNG_-Z-rTL0`*52>F~jI{U{uMCs;q%hB^_uf^R8f94Z|z<J^s{zjK2z
> zQkG{5{O@s6?M~!vNy0aQv7ggFN!h(6$+KJU=Shy;)XRR@85w7WI6hXvR*ZPh
> rqDb)
> ztT>ML)d-vmbF}v1Y*HWWL0_TL+K2T@p9AlOT_-yG*NTDTcOi|nO8=z7-
> F?ddn<VY-
> zpEQ4WU!iEF-
> G6(d7<gwhY{4XLZqF2LF23hDw{NO8xBoJ2?(r{abKjn+&3$JU(v#%f
> zd>2Wd3s5Izu;R1D$MD|qMDj^JgI<&z#9DPM?pOonw>iW~%0CikAcSzV?84gf
> 6UbSY
> zpE-}PujrR^Tv6XJuJZRsOHSBHcklN_YYh4e-
> ^u7~zdeu_xLD+2PS~%HU7U%fK3leO
> z@Q8A>e-
> &)<5v8>s@}Pa}hdlZrkA4O1r#vVJ$ly5SMtQLPmOS2utk}kW$c62B2Xgyo
> zGJ!v0tZz}L(WVHT8H)g44)`RIIP(;RGf&aG&s_&vkh6w0Gj$}?ECv|k{MfYFPr~*-
> zk*s#AV(r6+MOAL^Ms?sVIqihk*|xnG<zk?tx$DKgD@~o^nCJt})6ipW41ALr@
> J(J3
> zwXr<wCExup=Pu~7Pb9RZ^aC$6RqFg1#%&1pi+epu&ZHfmKn7f=<4pGezJW
> Gyqpapm
> zHtA!0%<hH%(+ipKyaC7f2Ur*TA$t)Czv)W&{;^W+2RM__2fRMu-
> 2j<Q0B*F6Mt>UK
> zp|jCoUy=s;+S#5B8ZnadEuQZHUI=)(pwS-Ll^?{Kpm%CSt8ihjW-a2co76{KLfn6r
> zytavfLG*L)O31Vgd5C9i#{O-8jXKbWb#dQiQs-vHaiR};cLZ`eHPzF3x~eL-XBA>v
> z(Z{yeDDa~)w{)lFh?A#f>HeUK`1dw(5^XL?%M>RO(<q6TMFP)N&BXO7^uU7{
> ?tbid
> z>@;~3i23)Ld|^N6{<MAKq(GeYdFXxG^YB&q40=H)VpEzp8N_=b6Cs<l{{uWcr
> @e@A
> zfjeXBY5n44G|T-
> =oa~Lo{UveIk62b(7wE)@656M<Ea{}+H%?xZPBP9#8KiBMPHN-v
> zy%fgrmq;gr7m1Qr%r*pZ_KodRagOa}?471<LAg}G9*|DDT)6vzkGc*r@0ZA%V
> tjWc
> ztqU|!XWA>$N&gJop8|dc&ZiOY4Zx7soC$acW$=xc7XUvkuiM*+F@0KA_a4yi
> oA=@!
> zDx~k(`+fcX^}XNI@0<3%fcx*{o93LB@7kM#GpbLBGjlQuIL{@!*-
> kN4On~mL`Yzf*
> z_+RmNOTPNS*B_>y_BN{n*LLN#Tq~&qe?^~Ap3SiTedhDON^cqHox!-
> ^8S#feZyVy`
> z-@tR9yzb#%dE?&A7)v*b$G1}-
> L>JBvOcN&;qra#RH!IQ(ODFoM56}zhD$Wbt|1oF)
> z=e0RE8||eY)d0r6Bm8~XJ-
> q*&&=sjYjBk_NKS|oO_cZGJOy01U^W<mBq>dkpyg5&u
> zz31Vll=>mqy~?JCH_5I!38wtgFCag{DZhMEetnSN?T}xwq;+yF@rbN-
> Qihh?J}({o
> zy`}-TPREcN`{of-ZklqBZhIo|Jrzya{O~S($AY%Vk8cv}!uJ9<;d@^9jxRj6665lz
> zvv)tt@pTHZpFfG(IZr8@_nuNFzUIYP+XZ|~v<X7KuUk{Z{egSbhtr(uN#@NGk8
> G#E
> zcrR?<F_c}4JlNp`8U7A@MIU9y=Md}%eWc^JV1Bz%47^_|2Fl@Uzh8>?QEyQJ
> QwM55
> zgZ;V|wy|fWI*=ly*ZfEq$8>F98#%G182r!<N$^)T!yYdbDJ`>{k8J-T@KJxR2YcrD
> zj^Xy3712_OHsS1DE53`-`nb}t_X_ZG^`)7)sh5g5pIx#z_bCPXbQjJ$!B#C34{gUm
> zJB*z>hsMF@m483ve?R2E(9~PX|C^@#5oh0j`qOm}U;1a^JO%yzUD{1^-
> oZNcJzU3e
> zy$^ZBqTZ4(s5{o!^GNCjj+LILg?{cr!#lzpFCnD)E+X4wukURoqV)st_eFKgYGbjj
> zjh2p`!r$uR{LlV8gV-w0%DerDDfE|fT#0QFSBqkQifCoOe-
> G(MrY}|VS7zXSCPm+K
> z$?q@6JQ9QFE7W}ILTDnMv(@}V*stOHq5fR`Jw)gbp0C3Dif@Wq#C|*d^FU)3
> V!qIc
> ze)#Oy{R?gTN8{)F6U07$lJRYVO1xjc0`gsn_xg3dz&m2yx?cAk6Hd1O2zYS+3p`l1
> zV7^Vh^rhLC)A0AEv@`0%680VnFn8StTZfU@+W2GPymY<)4DEDVf;h>!CIo*t
> a(%@a
> zj-9vQ|9LQ{P&VY3yq5o36p_y-
> !6)@&gl+(jW3dYKXiM9zd0)4ql4(cf`}MgF^RmEv
> zLmIT5b~=~-
> LKNK?M#Heh77fLqf%!0mIhW<J*OM@+zV<m<=ZDeiAHk1fh#wX6@o4;f
> z3f=tXVNsM7M#t{U;JYkCJPDjPAWs)xfG5&>8+<YDU~l)^2Sx4VaM({pZGuV1jy
> rx7
> z*f)P7oV25CgB_RkJ&V59Z8PSqkbLKd9^j-
> Wv~BOX7k&rqc@O<H_<b&+Z4W&pu#ReY
> z_<-=w!8@KfzlXmE2-`znu<u^X&x-O|AIj05_hQ}HgL!YNqbncrhWviyr@It)-
> $S@#
> z-
> YgKxU%5^QLbqs3OO^2_nsL^HF?>F|RD7ds>O<Q@m@oU~wGY4F0{$K+Pth
> m)H;aMK
> z;OnJx-
> v)M;{+=wxzvgkI?&yKPSOJ^YcbTVCLF}LhzG4XH0u|^f&w9{SybV3&Jn<gv
> z$bZ0xJqtc*8{USFa;|s}HiL7^+0E)ee~UV>RiwOzZ?)$99P~n{3*WLB5F)iDgu2pE
> z*A$#7u<Cg_RedA_G7PWl1Jv~b>iPh*SqJN4ovgbTH2XkP9-F$O7c>zY-
> 2X@Hby_rg
> z6=#Qn{hV-
> `J4WF>6MXlB9^U61aKxwX;5sRUzW5`2=MnTqk;lED7tUK8+ER(Xk4G8z
> zf@V6}O&QB*_gNcFwwY}wkCuGbn*3RE<@`l@#}UK9oY_6j<dyQ=0=ne&2-
> f#q)EUsm
> z--aCcIp)}xg=oQE-
> R$=e^Lk54If1#oBpYR?3=ZzY8SD6d=u|n*a+O1`tTy62@%>gm
> zSp2ZRmzq4WkFB=84V}Y#pRJqYuqOCyu;k}s5Th0;CpccpkPdJA;j@Dy`keJNV~-
> @f
> ze`c9=okIKU`t>^M<5|^T;@<bTI<VOheNuvN-
> w$05wHW%`B!sTd)C<ZR?_BRcOW!3-
> zpHs{_>~?iDJNDvdgOi@ZISMOI@gw*T0&gC-<GVf?H;CHx$m<1d#`-
> +?#sK3aY!}Cl
> zggU-
> $mUW@;CP`VjTuZ_S*@p4EziXRt9>P0+Wo@E%1@M|i;?5y1d?+2)|A=q~@N
> K@b
> zps2kCc+9(75wEG^kLlm>d0$EC2!hvB#q+U8u>fo9g;-
> lJ!rFQ<*4B)dMi}dFGj?w7
> z^SK$vVoagjth)<7+V`=x)m{`?`u^2k;VfW%Sl_}|bTfWz-
> =F^k`ox(2U=+qn6#4<W
> z#W=k^eqqJI8RxymR?j}jAozmFYD~mBw^3wWf;`X2{M_Kbi>!9!%P-<h1msb-
> KFJhL
> z?e4YfyCBow%4+9w+-I5PLg0V1clL>=VIRBx56WUMD&qxF8;5-
> AD($2m8^N9kV<T3~
> zUFR3=V7#N7aXQ3d1m2s`V>!0=uq~(fPT@o&uAgY*cR$+W+KoD&#NO52BI_j
> 1|B&Cu
> zrV3~9_EUM}_YLq{f_u~mesgqw)#p%lJKFkFQPhjFpO;^ph1dBF=aqa~vS%!jXF
> ?cf
> z72xS`gxL2s>Y!c=@Wby~{0(%dm*Q!W6~H%mdVemmx`6Yi5qQ|QHSxOI(RaX
> W`nhoa
> z061!@a3&)5$Nu=WS;p#*-RKWB2%Q3c2IkHV<a5j%y1g$?la-
> bp^jj02OU=JSRSx-Y
> z786fMJhK7YmM+9~F4(CN@!2D$o>8aG_v^oB)@$nVetZ+S)&m=JI8W4m8+
> m@jP58|K
> zf26T58p1pF7)$zhmMDvKe51xCgd2NIBgTuhPc{p_@)Nc?sKZ@|D@kJzUz#my
> 8(0V4
> z?bZ;Z^WPI)tVN1^?pHwP^!L1n=t9>lp10WOVeIW!Ulz3i{C%d3S)$gDJnAd=%>
> !c%
> zo?ZC6azkT`ZKpoQ81D?$h0zKf5w(Y~r+YX{)Lw7WVjMbwK0o&85O;W7^NJDs
> bQ}vj
> z6A4?o58s;KUam<y3UL-
> o;F)=WjZ@yx$BS9FVN3LLdAco;9b(@ylMmWG$N=YrW(}SF
> zaUBv_681=YFBe6bz?**_?(mtSu7g59XR&jJ$hru4o8?6P9R|w8+Rw7vqe$2zeS
> BN7
> zPqQDnPf30I3-oX^;;$k2?9-~s^Bh%E^QdcQVHX&ijTAD@1Hm4`x8Lj#-
> wOhtc$Gqa
> z?Ppb&<b4V}wtcLpxOjoDq;$c;Yf2aRe9L^U%;JVX!@9Muxvop<r;imgt7`73oVl
> UA
> zw7jZv&CJS*RoOGIuc$0qwQ}Z?>azMk{f3##D_2y{udlwdvVOsuhWZUfHPvex
> W`+Z<
> zC>QDH)iGWFBkGzYjNfIrjTP{`Y`;PLkUt6+-
> gVWhD`qaMZK$qU<Ey!Y9QhV3S>P#N
> zP`aqFFeh)O$KxwpoSQQe#Zz3gV8Q%F^?}-
> |>hiVo*H_LwA2NS|cln~3o^=g1iz?TE
> z@$)cD{zhSH1Uu)I3#$vHGc&!*mVxP|(=)T?&b@N_bW!MYRRz|%ynzZ=arM
> eI=!$y8
> z8}#25Pni#2@K$Y>v+iH8`2QOEGbSJZQ@LGVQ&G8={Q{F;Bo^Sm`NAa@iFy$b
> wW3N?
> zi*m6RkRnkiuEE_SD)gKNQ3)LJPs_~*R<*d(#I9Vk^2?QL1a6~g;TP)g<tqd8>jQU
> z
> z_5Y~|maS{3UDq%=p|IiU4XmxazVeQm`VAPcGjFb}uR-
> cY41n6odJss@^sZa6qO#sK
> zcdjcl^Uj*;3YUAjD{H#z(o0=S(CCIL*E}SJ`Fu67veqvQ`z>Fx#5Kc}x%`@?B}=E9
> z^uFY}a{6fP{D<rn*4$AWs3*U}9L}#?+fa>xfN^e;P9MptD6UyoUtW2E%uJK>8
> Q{nD
> zIoLn1y6NJJlCbkL9p-};)^$lB^OB0`SK<D-jcR4tx|Qg(;)aR^_4PC7n@M!q!kYR!
> z0u8QkIgFxJVbZ3p_SV!i6j#>YSzTVawj@xtx{`Wvp$t^E@|rsWD=QZV)>N#nJg
> >@?
> z#U<y%yv66iJ|Am_o_bcVt|{01o1BdT15-
> s{X)SBX5}BUWFqC&xu4!;x>ar!+;nS(s
> zS;AKtSZ$P;=hE+DxQ^oLyDLABUbw!PUQ?jHb!!@`@2DJA*cZs7yrC@NJ*(T`&
> 4Y-3
> z<M;VwIlq!UToh=iq7;Wy%Nwd!S2tAa7IY~r>3MYxqn?*#4TO1fU27q>niZ~0P
> U`a)
> z+;C0dg3=;S$>P!?-?EZrh0B&e^spdSfva6v>$9@5uEYgfqKiDdiJz}kmaZE91!scQ
> z5SfwkR<Eh3UbFH%uD=*%)BuY5z*w{n)-
> aq;J?A`VQGHEAO?l1gQHw0CX{cVYVd1(p
> z<uqdFmGxDwtX|ttuWS5ynM(tAoZm$T!IIk5RNPrtiX}DWtIjJ~R9{_FU)`|5hBIT
> H
> zj)^g`U_~__eU+;#F+Wu36wF*S*vwtNrg{xjC9oQOJpyHzfTz4}U3EQjN8^(kFq
> %LJ
> zzag-C-T4i3j}9(gS6f?C-%wexB(P@XI&0|Lr>oB~C^!*9CTkj~L)HVjIy2LpxOCUI
> zzG2x4W294qskWFlbR%NJGwg411E{V12WX?yu@^qC(>T7fuFRg5Gdp)qUcSd
> $IDf&y
> z)^8Ik#FOUz1@r#0dH<7n|Jb}oKWN}jH1C&~_bbhNzlrBD)7P2zo6LKadEa2(?=
> $b)
> z%=^EY_dVu)zj;4m-hXZ0|6tzx%=`Q1ebBr|J!J41Z{9C5@0Xi*k9jXK@3)!vRpxzz
> zdB4}ZKVsgWG4KC;+>fdf*Q{x%tX~tLUAeKk0{+j{u332^bK&a1%C*pld*J_MU
> Fq6H
> z)yUIt*;)E6FUy*4GKY|fW2nz`*QQNyuq-
> NB>w&K8)pT+7nsuvJyI=vJP4mP!F>b60
> z;^Z;Ud|nA#gzv33)a%AGGqZ59$9H8eeKkX$rc;%&glBDeb@dR|h^$Mp^48C|
> Br9j=
> zf7$CV$;xKRcnH4>04iph|I4Xxx%hY$|A(Bsn>cQUTSLR1m6c<)$!P5mA2x26)m
> N{C
> zH@Dgx8#>qUutulFCPAo_+{lKFPNjHVIeeP6;>JKdEZ0ic@-
> ?g0)ZDekwP^K*+NvSw
> zeAv8(O4q_b^=huIEaV$uE6<0TlYU7}jjQ;M!0OdQ=vXDg9hx6#2*7q?u?7#Vre
> 0jL
> z=1y443OE_{u-nihv3$*1%XkSc>P&*{MFBJJf@@N-
> K^SwcNyOlUGfHJSY@UF#@4{5;
> zt6Z!5xogD@HLKTQRw%5guU}W&U?mqqi$KzKePu;;K<NK>;WIsJR?<47riC@
> @)>H_O
> zE+W_b$~DzGoMdZj)~qErt~;<QfZ*_Y70B1DYtYNBZ3xix!ey!_uTWGoU8b94a
> ZTa%
> zMJDGZ3rnm=YeF0nOgUZqhHChmt{W=r*J2_R#g*mj^cm`g>YCO1^oQkdp;=
> <VnhLhs
> zXbqTz$68t8%FNE64tLH<&4M>!A}*|6T{$FwYn~8XP}JAlQH?py=&a9Y6m*xV`
> p)IK
> zIqPR-`zr4Uz_rkqOY^JmtX^AFZw$82PYWXfa@8jrW0B-CAjS-
> 13?6Hqu~u5H(v?N!
> z6{QQS*H>0}8uV~SDFD|8)>q%L?hee&<?wzCGDZ<-
> (a=iiyoqIKlCvY}^V`VU&ABks
> zjyA((tZ1fVDToSD8>UKK7cp{;_Lym`0&NBV1^l_@qSLnC{K8@Yi-
> wV0SY5xi!H|$?
> z9*44^dNpe*M&v=O)~#;Pmjc66{XMW~SlPM_Ogt{REbB6uq?xWOp?bqbpcj
> U+z{cw$
> z$<3MW8ojXV^02ZfVR;}%32O#gT)DomDo|fivm9OvWNvbS>gUaK<xCfD#Ok
> P5V9QV*
> zGG}ATS6o%Sq5*uJ&(uGw0!*TU&!>u(X$B{zB3epe(*^K2tVC9cFQiGM7P2^;`;
> SM9
> zRrWj<U15r@&s2GwR)@HqOPx0qDop7iR!+k<bhOge=F#-
> uZP0*Ik+mMnp|A<tSBZGv
> z8r=yVeL}ZsbXd_58XcB5f~QgZgc0Mwl9k!y%0PX2)d+<1)Q(ygR?4srhMBaK+a
> @g=
> zL!VnQESrM@!(z7)g0vAA8l4aK(0bMIn-
> FL<RvK4hEM^ToXRQw)o?ztAHm*R#2)DrJ
> zTwQS1@YLTib2<DQgd{2}VDLZR9AN}GSiZ2PcEgD9mk^)i#HMP;KJ^5zx&Jq-
> Q&x1e
> zuDNkc!5!Tb9?TcPSF7v4eC58sEv`S?wP1I~M>m~w#Qb*f*1K>2&v$E={qPU#_
> GDf1
> zdcqCP2Y!;<_P6;DKmY8k&5awrdHG#;J9~cn#)Rz)#n#IT4qY$ye!S$Rs$EOI^S8b
> 8
> z3X0_If8Oog`lqRR*FJXk?mz!V`^xPt(=UJG(~n;Byp(rWN7X|w<p=JaeCzW`)k`1
> 0
> z{9A8sC^>V{o-2dNh5J&j-_;d6=F*GX>e{cIa!c8x;IF{o&+zik|NkpSI74i~K_mY1
> za7ab}IT7(6<(GH8zv9V=>gfUp39Mi3#mTaY#54jX3OOi5+!PTfA`ZPYJK8ZO8fSH
> P
> zh_Pzi%msB%9;zb}KEAcoU;gB$cmG9f)$57I9;tBR!n;5Q9n=s6om9|?1f8hJ=x8y
> <
> zptHb6XS^eAko0P!g;23!qvE*>S1)M2NP2iCtK)I8X)fStQCQ#c8P_ork2omK7Y@
> X?
> zka&U#$b@*cxZJ=aj}|?=Q>4?g@K|o^D0t&cye^ZTigXZHRv5iFz{sD<en4I_Zuj
> B3
> zl#JoB_yham5U#9$f=61!bD4PL&(E|;&uRzGo9k`zn|N6!US=2`&cy3@njDf`c)l7}
> z8ZMlP5?A1IkRX08<tEvMJM%Bam5GZq9oCkTLntn!nNPR}*Oj=e@*+YwTu3u
> t#kCq2
> z&Y2A5tC24b<>Ne{*okYFEnjo^b^6RJ#KrPoHuGJ$-w-
> ie|4gKp<I2ay`lsQpMs6A6
> zZw}G{TvwU-myeQvr<E^b(;3fNRNfGOUZl6-
> %EM*R7ZI)@`fOJTuGwZj>4)bpvhq#(
> z!H8l0NcXF_@LrHkpXI~zS6TUH`K^&DBlx=u`D`coWBKs>N349aycRVq|7(%A9T
> (ee
> zwU1*^gZ`?3X}GpPkNmhmUf?ETaZxu{A|;nDD{5NacrZ;Y8%O;YPd)fhX4+$&P
> Y()7
> zRvZxtQF-}SefjFS^YF)~##8YzJmbV*pEO=X8bxE~=@lX4FD-
> 9nigz4+=M|Ooq0h1r
> z;|HgrXdH`{Xv0PS`oLS6>N^gr*2t*nF=Jz5$Hn1OFXm7E*NgrSYGqN~rUfI6vEl+
> d
> z-
> +>S*Q_7MiB?%YpRV{29@rsas0@t%)c=3Q;gNr!AMsE)AT)6O0r<aI3>1{Rb)ncS
> I
> zT=?$P2)qe^k)Hl@;~QSW?dJdVoBjw&1;U*u+y!oYzg`r$-
> HC2@fdH5(WCDPE!gLgT
> z<-
> R}^B#MFpcVePDvA|uB=q^ASC4hxOKqN(w(~Bko6?jC_OQIOdfDB6mgak2=t&
> >bl
> zOf0~Ei3K3aC){w2!awQ*Yy6Fl9}y7|9UUDL6B8E~H(|nrgoK3T<mA-
> URF}&&ZQ3-f
> zBWBE)k)55LmzSs0FK~*2G*K`UT=3t_0+CjLb5LlDEyD&KJtHlx;Ig!WnP~-c(h3Ur
> zZ%#ql%!0Jb3PxtwprdEZm{D-$jDp-
> 51y{`|DB!=V3TEUM%(${(WQGkodIrv3Mv2ro
> zk(ww{Q~56uGj*znN*$SDgN~jN7neFAE;TVOH90OdmH(1c;}TQjCZvwcut7)9N
> JvOc
> zN=QvkNKHvdP36Co)P&^JgrwAw88+zX8M+tZj26yV;dJs}EdER|{;IKaWQGkod
> Pa1#
> zb8NITHrg2%?R4^AoHIJs89mlHGQ$QPJtHQ@85`pq7vmfs<8<=hcxTKwXH2Yf
> WQGko
> zdWJbt&%eP|bNtia;8?GNoxceeZ69vBUEs6J#N&Lf;cBqqAxrQg9(_2{<J`0!7eA
> 6n
> zdY9mtCWV)s9^|UqEPK5uP7|f$C7bkINUON+veipGm^~ejZlsEf(**sBali{9jhlY
> q
> zCQjoDngGs2^Kp&lU;P5`ED)v*BrO-NJn)f%i*>RMlW@^acA-
> MzRU!Q%E>9TVM8Ie#
> zL%>mO^z3$=ZKWSYdMfA<?<S<5$7Q$U#KZgF|4-
> Om>WGHEKy!s3*J%B95^&YTqn>2q
> z!uxl6zoKjPzF>C}58s~E=@C!G^$`%*|8~4X%ro(*pS=DahKFq3Z+-
> %dY0v@o1N|bL
> zzt(jCH(fUqa34ct;J~NU>#Rj`3Sqc-LpSQ<ivG^!?<kL!DJ#pRJIkf_R!U7}(#sXn
> zwlYbp5F4@GTqZV^i3iKXs$y+rhPXXLT)#xydY6`YjW*{REp36eXtj1prIzRSX0Oz4
> zzeDr53PF><{}sA7NhaO-
> Lv;B^(mAHsP8HW^;~h;GZ#Uw9_`PJ_jnwe}=X;IkD)au|
> zCSExFuO{50r(J*^_2rBH&=m0`uAFC$YpM6jEIW-+!UO-
> mA8ZRh0(V6PHV#JnX+rn`
> zuMIvQd@-2SUe!_CvA#p=xUXYt#}ggFj^{gG?0Bi8tK*f9-
> *o)GBh>M3#|Ir}I>esn
> zJ<dJJdt7@m_hjwK+oSGTyr*c-O?&)%s`k|GS-
> (fybKjn=d!E<>!dqdpaZ{gL{9Ms<
> kcnBIcPuq3huHdfccfGjlrCnXSUfK1VUBBOj-1C0_AJBKq+5i9m
>
> literal 0
> HcmV?d00001
>
> diff --git a/Drivers/ASpeed/License.txt b/Drivers/ASpeed/License.txt new
> file mode 100644 index 000000000000..3dc49d3aff4f
> --- /dev/null
> +++ b/Drivers/ASpeed/License.txt
> @@ -0,0 +1,25 @@
> +Copyright (c) 2020, ASPEED Technology Inc. All rights reserved.
> +
> +Redistribution and use in source and binary forms, with or without
> +modification, are permitted provided that the following conditions are
> +met:
> +
> +1. Redistributions of source code must retain the above copyright
> + notice, this list of conditions and the following disclaimer.
> +2. Redistributions in binary form must reproduce the above copyright
> + notice, this list of conditions and the following disclaimer in
> + the documentation and/or other materials provided with the
> + distribution.
> +
> +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
> CONTRIBUTORS "AS
> +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
> LIMITED
> +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
> +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
> COPYRIGHT
> +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
> INCIDENTAL,
> +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
> NOT
> +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
> USE,
> +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
> ON ANY
> +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
> +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> THE USE
> +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
> DAMAGE.
> --
> 2.17.1
>
>
>
>
>
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
2020-11-18 18:08 ` [edk2-devel] " Samer El-Haj-Mahmoud
@ 2020-11-18 23:39 ` Nhi Pham
2020-11-18 23:42 ` Samer El-Haj-Mahmoud
[not found] ` <1648BEB9C1C66CDA.13688@groups.io>
0 siblings, 2 replies; 7+ messages in thread
From: Nhi Pham @ 2020-11-18 23:39 UTC (permalink / raw)
To: Samer El-Haj-Mahmoud, devel@edk2.groups.io
Cc: Open Source Submission, Ray Ni, Leif Lindholm, Michael D Kinney,
Ard Biesheuvel, KuoHsiang Chou
[-- Attachment #1: Type: text/plain, Size: 36931 bytes --]
Yes, that's correct, Samer. This driver is going to edk2-non-osi under Drivers/ directory.
Thank you,
Nhi
________________________________
From: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com>
Sent: Thursday, November 19, 2020 1:08 AM
To: devel@edk2.groups.io <devel@edk2.groups.io>; Nhi Pham OS <nhi@os.amperecomputing.com>
Cc: Open Source Submission <patches@amperecomputing.com>; Ray Ni <ray.ni@intel.com>; Leif Lindholm <leif@nuviainc.com>; Michael D Kinney <michael.d.kinney@intel.com>; Ard Biesheuvel <Ard.Biesheuvel@arm.com>; KuoHsiang Chou <kuohsiang_chou@aspeedtech.com>; Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com>
Subject: RE: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
Nhi,
Thanks for the contribution! I assume this is going to edk2-non-osi, correct?
--Samer
> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Nhi
> Pham via groups.io
> Sent: Tuesday, November 17, 2020 9:00 PM
> To: devel@edk2.groups.io
> Cc: patches@amperecomputing.com; Nhi Pham
> <nhi@os.amperecomputing.com>; Ray Ni <ray.ni@intel.com>; Leif Lindholm
> <leif@nuviainc.com>; Michael D Kinney <michael.d.kinney@intel.com>; Ard
> Biesheuvel <Ard.Biesheuvel@arm.com>; KuoHsiang Chou
> <kuohsiang_chou@aspeedtech.com>
> Subject: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500
> GOP driver
>
> This is the AArch64 binary provided by ASpeed for AST2500 Gop driver
> version 1.10.00.
>
> Cc: Ray Ni <ray.ni@intel.com>
> Cc: Leif Lindholm <leif@nuviainc.com>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Cc: Ard Biesheuvel <ard.biesheuvel@arm.com>
>
> Signed-off-by: KuoHsiang Chou <kuohsiang_chou@aspeedtech.com>
> Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com>
> ---
> Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf | 33
> ++++++++++++++++++++
> Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi | Bin 0 ->
> 42880 bytes
> Drivers/ASpeed/License.txt | 25 +++++++++++++++
> 3 files changed, 58 insertions(+)
>
> diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> new file mode 100644
> index 000000000000..e30e5a160f70
> --- /dev/null
> +++ b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> @@ -0,0 +1,33 @@
> +## @file
> +# Component description file for ASPEED Graphics module # # ASPEED
> +Graphics Controller Driver.This driver is a sample implementation # of
> +the UGA Draw Protocol for the ASPEED Graphics family of PCI video
> controllers.
> +# This driver is only usable in the EFI pre-boot environment. This
> +sample is # intended to show how the UGA Draw Protocol is able to
> +function. The UGA I/O # Protocol is not implemented in this sample. A
> +fully compliant EFI UGA driver # requires both the UGA Draw and the
> +UGA I/O Protocol. Please refer to Microsoft's # documentation on UGA
> +for details on how to write a UGA driver that is able # to function both in
> the EFI pre-boot environment and from the OS runtime.
> +#
> +# Copyright (c) 2006 - 2010, Intel Corporation. All rights
> +reserved.<BR> # Copyright (c) 2020, ASPEED Technology Inc. All rights
> +reserved.<BR> # # This program and the accompanying materials # are
> +licensed and made available under the terms and conditions of the BSD
> +License # which accompanies this distribution. The full text of the
> +license may be found at #
> +http://opensource.org/licenses/bsd-license.php
> +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> +BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND,
> EITHER EXPRESS OR IMPLIED.
> +#
> +##
> +
> +[Defines]
> + INF_VERSION = 0x00010005
> + BASE_NAME = GopDxe
> + FILE_GUID = 7F81D838-F91D-4C44-8552-8FB912122FDD
> + MODULE_TYPE = UEFI_DRIVER
> + VERSION_STRING = 1.1
> +
> +[Binaries.AArch64]
> + PE32|AArch64/uefi_2500_800.efi|*
> diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> b/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> new file mode 100644
> index
> 0000000000000000000000000000000000000000..4b36e189b3a15abe2c160b948
> a1e221d4b0fd8e8
> GIT binary patch
> literal 42880
> zcmdtL3w%`7wLiYkIg<w@gdrp$glHxKHB3cf2qCdT&P;fz2<arKRcmJQfJBfy2ns^
> w
> zB%#$Bt3>ey-
> e!WL5`Mi}3dQtAfY$1@wIx{F+xFJU1GS}BMO27b^8bF%BRLsDtG)OC
> z`TRb=k>fdg?X}lld+oK?UVH6*POiUM{L4S>UoJUZuxNo06&=bj08bx?D@2Tph
> ew47
> zjyJM2q*cPqp9^<h;Xm!UVZ4~|%nPKQ7l4lj4m}H=kdci0{?QQrMc5S$mFpW=7
> H!ts
> zY29t~TtfJ-
> s0cI!0Ha*g$A|AWG@%O7bwz#U>Y8$cSBq!f?LXjo?dgBzd9Ya=Jyk4r
> zpNkO#A1R{aDIvC<!u|W=%z?l~5zcg>4uq71j%|R4l!+bZV$^|C#p-U9Ywc1>-
> yA$*
> zlxJD(go3V6J3rni?LMVQ9hwk1>CtLufe@>XM2Hg7=>d&w(9(`8S-
> {N?DIzB{IfCT|
> z0y`Z}Wr;e_`?P2!u3r?q`7!8@PZHZiswj5JA}3Kk^MmD9S`s-zyx47}gQ$<`#{W{B
> zy-
> H$71n^vcR<aI_*Sa%8N^K|+ZJ305&I~%G%Z1)9@^c&bVLcy<Ge59+ya_O9b;4
> {#
> z>rNCOd>8^fw)^9ap517((RNdIR(mOfIjEDgdQq31=gcskt+d5+&+iPLe~)s(KPk0
> 6
> zsaki_AC%hfBTXL3*FKZ>Yhkn}gweLr7H#Rb2JJ&A*Y%%Dt>+@Gd*|<z+NW%
> ^Z%a1%
> zeV<8NgRIv=)}LB+nX<Oh7VY$I(w^AS0X$1S!8euKcGS`IhEhvCX-X6cR-
> UCd)Sd50
> zB0&hPTh}8+KKk)3((cE`L^vtGE}41;y_`tBlsY0GPzRn)qAp4uy?vs!@j-{PA2NxM
> zHD4F>L{-il2&Jh59-
> ;XnlGOnjcSY8^`xU7*h<xhwEa}XFo@RA}Uv2hLCr`zA_BIOW
> z<-O{Lv}m>Nl=8@S*1Hq+IJQDhS{zQwy$_cL8q|Ni9k+PEmpU-0$mST3j-
> D=;cb`Tb
> zLe;v-
> H`_9>O4)sGsu<{*DF)6ca>r@P2spt>VxOz({%&pTb07L;G4P2L;bgs=BgFvQ
> z8JejMZ19TKKJekW*8%xX?&wE3tF6?tM6@p<>C6HDSaqOBNpw4|*4x}&UM
> 5<}D{&GM
> zjeN>P&j)V`<Zb282K=LmXAZFL#ztf8vF_exsnu`N_$dC&0oN;vQ^HvN6g1l%A}
> 3E4
> z`z1;14m~ZkK9L}{si1@Bd_V8cN%_L1`CQ_~`cRGNwD1l<M?<r~E6PM+T!ob6j!I
> K+
> zyM&mn=K)qWNo@1a6X-vYuo?HVd1#j;_8kI`lz-X-;>@&X)B(1mXQRVu^-
> FT3*v2-q
> zO(o-
> ?3&1UiGGK4So;jc@YJL#B`$10~EA}z}V(`u~r*XH&Y65hAZkWzn>7Zp_en_29
> z==g7z`<dblTn78{6Q%YQq$$hvyB*GG@L1L>TKyTKb?TiCXGNLRdi*YjbHz@!U
> +Wf9
> z!JE_2M)k+K&CJ)p8+po}VDQu(##3?_PgdIEsb{~z6M66-
> M1Q$4{$5gQpGLYLawlIE
> zUg#J2YF`JvE|*%%nndf7I)^g?{B)W9-
> 5{O$!DR5Y*R1~|jFBL0K^OQ8Tn?H)RcaqZ
> z9t?H@X;Me2vlWqs-
> W~!y>T85#j7!Ql0=PNQ7mRCn0&FS!R@Xhq`j{;CQHS6B3wT05
> zAB+@rhcG6ouVrzDZd*D_9q^-
> `X&9Tms5h|2;p_u_>Hv9>rWrcoLYm|DV~kUd*VE-*
> zjKxBXMU2@ak}+l#NuT#PPHAIkb7*J0lGyJ*?$GBW%MNh-)9&=#Zs=PT_}5-
> A`b~`x
> zIj8y@PCx1oAfK}EV=kkuqMf3RS^%A-
> d_O_|YB6UH++xbM2lh&XUCq#LJ!9E}QXx)+
> z(0=uMiZlHx*y-
> ;pS=qop1zgH)R!AIWTPvW)k<T0QXkX!QQrF7Mhx_sqw1@h%W1`qL
> z9p%JsgWpfad-
> kePBB%Jz2G8V^Jog^qoGZc3By_Y_IGlE#LlI{VTw(D%#pGGsb{@~c
> zJ>Yqs)-C_Lk`+OofvfYZ89es{98QPHGj-
> 4ESMvG;*|1gYbM}2YWHyxldxvfxt^O#7
> z4m92deF3kd^}T>Tv)+)B6lSl@zQ?@n^&7h5IOcHf!gXq+*c}=#1`1)5Xrn)b+$@
> _g
> z5qg?uw%=vWgH}3d+Jv4bjd}20l=D9gIb4ge@|0401ZnNx48JI&+u>9lqSKGNfR
> 6Nh
> z74k4`S*YBw+pPOoSlyGu>bBBW-O^)5-
> LJB)HpO}9I_S+4O6@a9QwL6MwE1hM&jSC<
> zEyZcRL%({uo^z$;|Fw-
> 3+X&A{)_mUBiEhf6IJ2t0<$D5okBkY{TjiMdJn<a~@v@j0
> zFXXB@YcYO%pufbi%ECWze+zig=#%twgE{uRX24yjpZ$e?^Krb=$F%$e-
> 1TvKA%54g
> ze$=(oc|O0Zkr&SICgOh%e!m91(fGX)@PEW_BX}7s6h|qu-
> oZ8>^@@FZ4azl+r%Wd5
> z^6YJk&Yn+R&}PE64-P)gXZ9)6hmlSbX{&mo+EOqs-
> FhDu3f*>HsE({r>i801q(|C~
> zpy|h4OF75u<6~k6$Js{02M6_fJxJe$bO`;#asi~*GT%&-&JLu>TL`?3;42dSh<>oz
> z?-
> jv%tNmlxR?G>#xJZ}sDHG4sD}+Z4!+HlBedopi7OnZ3qFaY>y;nPDodLWNaQQ1
> +
> zhT-=;Q~x3H$Jl7}DcS!`+%VX?#2Y(|CyN(-
> eS~@JFwOU8!U{*i{*$ozBVlh4wqPXe
> z*Muz`3HuMimXCz}oUj{4!nz1sY=d>Z==%|1jU!-
> NeLo=HH8wo7<9mQnu8n}RPjvk|
> zB4wj5T06#w1SuB%a>UTfo#;c(dzODq{k%a6`huYG=yx5?1dR1<9Oo!QI;8vW$k
> T+#
> z-
> G=e)85}I34=4GDd3YB2X(H)%A!F>L9LvzIu>AeV3vzzm1m6pO0Ow~5hxz2E5je
> er
> zgOga!nz!j=TRa>F4%c0Gp)G6&`TrQ>qS35_b2!_>wlsrQBi03^ozQS`JZatoSX0$~
> zK1tr^^JYF@pLA=o4lf5>e&?GyzmmMyclg<7>u)1&<u^>&_k7+<cGZ8Cc)iUg>
> _y+<
> zr=PAb0gUuWe+8Z!LEi(~X+m1n2pb4lWxrXr+&zi10&U{m$}*_$5b7Dilhd;I-&S-
> i
> zR>%9Ej^`si@Zdq+!+0Wl|GdR;nMA_=i$(mKa-
> !aT(uF_jW_xF%oRLm)+t(_VJSf9U
> zAw$ZIwv}acJ;3^(vdckv_-
> sRTncpNQWKSkPrmRWdjkGq{mdocRIVt;`85gi{Xuo4o
> zPex#<9-sWc!4Y*iNYk_#q{F&sGq$0gzekI0Zy-
> &0586guIs=%9*L>UJ#e^>8waH?Y
> z1YINzTY2Amz>~xlpPcxpPd>U+r$O595*{~fI|h)JwJkm&y_73m4*ZHHUk2*8X
> #I)#
> zo3{8Q2lD)Thv07lu5L5taO$)cYv{Bk18eSTjJaR8h0?DfL-23e!k1CLG5UU;XXa&4
> zu7F8nhG9GZdY|vd!~?7hx=fykdjK&1*5SIv8(T4+f**2BvA(i%Z9}-di-
> PrgNMr0U
> z-CoR3&jQANG25y4OFLjz`ulhm=6pceTJ{8e!}hd37L73o-
> J#ylXSVvh%y0M+)T3{M
> zMw6^|N+$1=|9yl-s-4tDOUBKFjRl@E47-
> Q0IKUjkunmO8qpS_qKv)uB5yN<1k(|AT
> z@D!A{=|weQlB)R*FE_?D`N_B@SYHl!Bj6T48KTK|8)29e$^wl;aQVj_^*51*cN
> kX|
> z&-
> jV~Yq}Ub*x*YE%Rv3N4&z=!*rmX;!R8a@2Hw|(@d^mL0(dsqRfJ^&@3vvQ*
> @Wc+
> z&j!mP>?+`u4&!|ZFv*8GQyPZJa<Kjq!fzUe9fl6N0Aqh=V2oMv;CM^{oavf#gO
> 4|P
> zL4VqC{zR4m?ToE0!)2B~Uq8;IRrcYdBgRw|;q%l^(t8l}c>gcl8*TkhUjL4@JM*kD
> zMIV8E)|;lqb9{Xq1sycka3gfEO!EzFRP=d(F&WMie+8{@T|7=$m@bA03)96v5*
> DV5
> zZxR-
> !i$@6?MHgQqJWLl~2JC!Ye7?R5aO$EghILeSwb%cUaL@VrxQ}#fdPjYH0kCj=
> z>>w;mA9oQJrjJ3w!t`+mVPX3C7-
> 3=hh@i%K`uG50VfuJ4V58|{BjAnD$EJJl9nvGY
> z`MLUy#Q!SB?IC0Cr4E$E2J6=mpSqg;s4oe+OI^{&H1u^1^3Etp?$fvkKOHG%r;
> QhN
> z&qs<9>OAodYt6pNC|3^LMEI1amC0`Eu|-El-
> mR?L^krCvup3z~_+ffyMxsvN2N=se
> z_jl;AjYfvn;=9hw`}8yDI@XTT-
> 9}mBf0gt%MHge88P7RhY;8;_P{b<mJ7FjMhXKsP
> zpCGo!`5s#Zv-
> bmjP?qZseL7f@93>{a3V(^bFczq{DI>`}6Eshw%mA)4xL%47vkTDn
> zD#YK3cREe;ktXx(ys~XB@)OqHDS#cmExFi|o7a(+P2Lj$=l%9k+8k%*{e*4CdS*
> ~g
> zT6Oy2$5IaBPQLeNJeI;XJ%Kj8i8j3@OLgsM2TSsi_XgW!lOg%~6tTT<zCH$Qr#va
> f
> z>kt#Xo1|jztp<<eiLxM{e*+HF9`G1$w~ix^^@Q84w+M$`h1;$FB;2%He$XS`7u
> fbN
> zyY*|cPRobYV^13kcaN}Niq!h^Ncdn8!~Ox=Y54~~WnDI3fO(yON%6zJ3&;9C;*
> Ega
> z=X-&8@Np;u^4Nv6OMWT0aXfq&XK+ZrcM-
> mHbU(uGBeBf(Fq(Ui?h>!)G%b0{;y&M2
> zz?p6~<<n)}?}i@OdD;QIpy<+l$3xin;5^`fKCmqJD*j@YTZnSn-w`i}9&YyoD4T)t
> zN|-EU-
> REVwI=~yHVZ0`!<%WoO3+5G$Y|3OM@gPr&@AbrsZ1)jnr}s6$r3uiF1x-V^
> zhvjGLZv>p{fBU+ZzEI=cT6gbwExvE87H{?AB;c|hJud?DRs_;DB0p54=DVakz5Q0
> +
> z8C#w@I4Aca$^&?QC2Nl5%UV3k@M&j*c18d^!>2~ObRM(J`fkViobs`Bpn&i+
> (TV+$
> zPQryq$!5A2X^Un$aP&4|ZtYTxeLeCf$Duvk&)CR4J<;(x`8+7{dk(7kVzTCIk8sYh
> z{6Er~20EY*dzQ8;5x$y`(O2*n_RCs|#m^MrNLOI*0rt&;CF$iR>gD7=eZ$xF_iy@
> |
> z<3)U9?t)|6<}E$u6<W$iuq7&FPrrXR>|<M;sMC;E@ytF+j}{X=o1`i7*D-!K$y2;)
> z+6007{=3tPUC~`B!F$9Mu}LXbvccCTWr_qmCHhcGZ>$z?^;0?WccYEm=i~Z`>m
> ^Gb
> zf%S;<qaMb}D3d|Rfik&+GC|ut$S*^itIf1sC$`yOhhwz(X3%-
> af|+!uqU`;EbwQ6p
> z2cRbhAY<%%rmdIjsw7d;i?qe3g7TYL-
> oz2GgT(z1_H*z@DElL`Y^<oOhJ5_M4*}i>
> zxJBbI+P#J}zz^%&_Y=jb$!b3NCNAsqf~IQHCXQ9!k8;|@YF^rBN?qXGV2MSu4
> Eiz^
> zb=^d|mhO+!;uYB1V!-;OVOh&#wD_ffvAzsE6F-
> ;bO#bQXvrR%s?r`3TUjW=*j4P|2
> z%UBkD(hJ=zair9@M~jj&?Da8U`sLHUo&UAJekJQejLL*z?G^Nu0miXz!MK+G
> 8e!%d
> zl5pxN$K8#D+w3dm)orTs``kulc#Q>n9e+LGjlu@QI9SZG(lCr`yh7sHU|j3XBh7T1
> zZT`9$GZ}@SS)>WL#p8UW(;T9%9eqNZZ^32J?#pCd=9nh@j}AlDdVeE*7_xkm
> Fvu_j
> z8HR*wj-
> AE~gZ7o}&?ig3gt$1{>Mxh%9AVRr*l78Y7YUnYm)&I03yPO=hiP4;)3S8T
> z;`Qe`pK87u>6}BppTT@#^$q*PYU2mMqrJCmip2IJEw8^g-
> h#bDTA)GN)Sc}%9$j+Y
> zkgc`T{R40$8{HE~L(hGL+2@Sk0NxleTz`+5mK)-R>i-2`R{dodcXu;w={tBb^j(aQ
> z1M#+4<)XKC%j!>kPnzk+APXV5=WNE!hwRnx{?_S@vTnQ6vcy2zO`<a`5BDn0
> 2hjOB
> zqEl$N9}ydbANOB~4KB>Dq1VI)mFwpnQohFcY@3uHj5T!<^(jHb=&`pwco{D2
> Zx3SM
> zcW{rC-}MmoBKolJiFia1dtKa<4`9D00{b1k$FQdj-=}}7u_qrKi~Koir++N=f3Y{`
> z!oI8vwj%-bKgQky<31Te_|k-
> Yy9S;67&sqYrVhkGkJ=?Mo4DL}w)B_%c`4+Qj`0nf
> zF&5?OB*Y^Jfx|M~kLYQZT4SLXlrzUk&))}2*4++S;Cu(_>zEUV_{vpc!1edR{pl!!
> zwMF;3GP$)Rs5rTvAWjH0ICdIkbpz?3j-
> 19wb;BX}_oUefTYW$lov@`F_WML@P)>VE
> zLq2`opcl_$)eXTW{oWZooc0p^{lSHzZX5Q*B=B?RwPJvM>LSl*uPVg8B=VJQJ
> Wn*A
> z{eb(gQU}H(9m2j|g5E~N%gUwJ-
> a@IBI>Ws+>@n^SeF^(b*xUEtEIQAPBQ4{+kNErG
> zzI8X#4@h#SL!QrI{y^QnHr%cF;pvTD%!86K55m_ur+~j`b>KLBg~(X!$8Pc-
> JNV1A
> zmpriX^i?r8b$6lv&neIm;Bfxrl^zXwAurt}zLI{mC@%1ey8F<td{%!YJH`6I8RBIK
> zb%U!y%`X-
> 4b;2RO;>Wt}KJ;U$h_35$h>~c?w^T$hucTCstdquy5;;Qa4t%IMDYH^7
> z*2ojiIu~)o*t#Cf1;p|6D^4^JI7xMw!wgz#VqK7UHzn5jb^L@nmm*58BA%L3rv
> a~2
> zTwE8_@005q!A~0Ubb4<nPQ`pqhwmyJ@{So+`d5ncGsscL`<CJyFrRzAqc}gob
> Gk#_
> zPyk*f@(wv<VE=Rq%4Td)oZN$FIqA6KJYkk=e@=0}Yn5}x4VOc`<AC40S#jdbo
> KX(v
> za{kN04LOH!y*-
> MPYp=t=717cTJ`462<PKlQ*b|4ZhuAvyhE(0Z=`rV2`Zw8%X}|Ey
> zzAnf0HNZG#gK|QPaA4j5{yv`RppS_0A;gqy!upVgUp_&%e<;5U<q#upZHpHtu
> `gJ{
> zah!qqkNG*Q$DD@<7s(>tqQQLPVXZt|Z-
> Sc7dE1V|a=BI=E5yk|rk~>3sC9oR8}x_x
> zUO!x30&lG2G;ruk@R_hvNbCIi#7X)*dVOZz-
> ;hUnSh(*Z&3c&r9iGXTMOTJj69R0g
> z?pKEEri@tT&<3qL%HsV}gLi#A+RvZa`in8Jk8#F`ZSKW<LBF)mte5@J1OJ9Lk$h-
> ~
> zQ>85tbz?A&Xp7QPMIHU=q5g_a9qKRgV$mc$J`>i9b<S%x`t6uYhUk-
> ~D~zT<+`!a<
> zA)27^I%tpw`qF7vi#qNfy$fDgz8%j)JPDCK5xSbDiaI~|PScQ&`*8k6+0^~vbXvB
> 4
> z&IoNcbns%R?r?rMFHMly9=6A9uZ(oxIK;|runfX57lN;CmJFwZ#~|WpAt^ey5j
> v7#
> z>cAG3Lz~DC;RX-
> zZ)`Fk?t{QPuV0(bpSw?^e?LP1GKTYsBDLy$f*20@tp*LA0b_iq
> z>-
> O}#gDXTG_eC`D6$P6ti7D{~SdU2}HU3>^Tgo>P_hkAZ#yZ8M_;&#N7Gm{;G1l3
> G
> z{`j>R9}^=*#*CH5$6Wq(rTBeGj`<bVMsbL>r(-?va;li{`h>QW2NK0src2S+rEgLu
> zzAHt?ybPT0Mu@LmE5%(GjjI{4&j+Dzt3cyn#K|w+6gj2wB2nC<NcpRP*N*3h5
> KHZe
> zlJXBD9YFeZNr~}Aim&v<NcqRdh_4(0{C!+Y<+zw~5f#%f<e2xRsOzSK<}akEnD
> @qe
> z@~0y|eS(O8eaw{jYXMIeaqepY>lrWQdsyE@DgV7mp8RO!MH5$=690O{l=yg
> *IW$JX
> z+!ycenIz@6!(R1F0dATnza6si;Y#1+C{B;{xnGx3<F5c+k4TPx{UVRM-L?4GAxUzt
> zAx`vC_jje__y>{qK>Ffi=?P2S4@|xudCBps08dXwdct+?Yw_HZCgtBh=2~|&c$
> hwU
> z;jzD-
> 68V|q7Q5d)E%KeQg~v{UnRgOId{8)ZdoJ_jr~4;or<1SCq<p6DV|_@cuTP0j
> zcP@4l9$<c<l>hD`PyRc2jvkj9-
> xDk1(?ztqXOWb@EA!f89>BdKDSp>9ue;|uDgVV(
> zr@IlbEr2;P=DW*rZ%!?AzfT@-
> l=5qw%iQS~i{f`2pmmFs|4u}d`<=5Q{}Ah1Cgs1J
> zv-nsK^g%dM;@=(=`T9ETeXPIUH*A;(djG6s*bK|A{}kyEa6-
> VL4(oOu={~az@m>WE
> z^&CE#`^fG7Je=j#^_=*Jkw-nZbiD7BQ5W;dU{8LC{Jzt}FfU;H2|GIs%K+>}!Ul(7
> zy;x7~0n8fzTwgxIw8<-G$#_0<Oa;Z_T=Fl_FC5o|Tl|v`mVE+cU1-AyAFA2(p-j6?
> zT#jkRSoD|zZ1$b36E<QS;`Ov0+aeQM{31D5JZsF`+VhGtK_s*^W1VjC+8d?CZ$i
> 1|
> z$YI!F!0sX~)1Ea&Yw@KfZQVvfH&_qjIIzF@>1c;skrMC0T3a|$i{VF|H<yw|8E9D
> T
> z;@*rsK5`s3ig6JMb5{xI^(ql=eP15!;y%nez#hYuZt}(XGaa}W4W$$H^yH!R$US
> W0
> zvc3s8H%wo}eug0fz9oI#QqDV=7be0VsetYpXQz{}Kkjh%;d&FXF`Q9q-
> 7Gs!(nhi^
> z^z%#Mw|8OQVfjY*eu*y4H*2NgSEVPwHX@E9K(}DAsN;UYez`4WmS1r)y;g4
> 9&bfu~
> z;uiLg)_qV;ST!BKd>Q(w9Q{%O8S85YoJreH9^ynReF^%3@V|!iL_b%IHro9$OE
> +9-
> zBj<U}jX}<lD&|1k1=eYdpEA~_`*U2s+2$F2Y%q?8GwsbQhIPaX*n5QehG7|i{R
> J=$
> zwpziwp*b>#*7S!F$6<W4hh^f2%j^XFPlS1gVNHPjjxd{^mI2mHm`zW;fc=Uv$j
> 8#v
> z48UFi%u35hH^-
> ^@R*abKISklA;8^>ELweYZSgbh@TX9&(Xj^DAbbT}Gn4<Uh*dC<&
> znCAE}@%I34L=1EkS`XT3p)AKuI{aIUo<$3L8zX6joj0X_#x;}|eb4jiQ=v2cXGJUf
> zHyyB`Fy4Lm4bDi=#<<LPAChohN>7{T5Un)yA&2iiv@e%&{x-
> 4WWt0n5$xhD!t=oH(
> zT-
> %Pcp??!QzJs_rpE+LG{%4Tp`By$4fo}5N13mo=aQ3$@BgmZb?J~5BWmyN|zeT
> Lx
> zo_-ba2&24#b7NS3{1AO3e-
> YBybKTI0wKB`$^&jlNs2e22aha|F54_(GJdO>^o?`F!
> zy!9wz3muVMmu|*78ZxARH4Sp@f-
> FPmYx{bXG5hd!EX(iwEG;j*>^~}}*NHVS`)udm
> z($=%SUYtu}og>P@URiNt#JxNCe#~2FlW4*^46zZ(b~Y*iyTDil_V*s=IHtX3yY2S
> 2
> zJT<x43%w}A9>^bIL#(}U+C<u1%hp<Tg-
> B~q<R2fT&L?#2lq1Hnp2M>2{>kT%t+m$I
> zWyH09n0!aH)h64aK3OYT!^<Ex)EQpRJX7N4enX@94&p$vyJ?<NU(fuBZGbLFf
> U|FZ
> zk96Za%)fxqN3i_pbX9F-
> +~GHr3wW_;k`8HF_Vkr7dOx$#v+RmR>ow4VyeDA1Pe`x5
> zC|-
> r1>)Iry=ysZQnCCnj$86QtM+ZSm<iy2?rie}p_CpJXy%!6{xj@IW!Co8%wr3RB
> zvo=_0irVS=?43D1xKpltzlD3MBkWnBV!o$>v+RXZE9Ii=%M|1Nlq;}~pl$JU?T&
> N*
> zshCqfDpXoS2iNb_9-MTBb7~0X62-(8D_(}P8r?jLLR$hGw9lAZWqqyvKIb+k-
> qV1s
> z2+$tMVt_b=3B-_iKAZEV3pDW7;D^@O=AP*}oE;xT-
> IVV%#Df%EGWxttD61A@ex8Qd
> ziGqviSFi?iq^kK-
> @vhls;aIg8>GV{!Gaxc^6_=WS1h%pfzO*t;%_ogQJ)NAZWE$xs
> zu$|PWM&Zg8fFW+Us#iaEE4x|0tkIT;4YD71huFaV$BbyP!OQap$s)fAYr>3FkzX
> (k
> zS0?=6Sg{ZFboW7b9aUv{UI)(R3r9?;kWZFFz5)0hk*Kc^aZkJ~+1i5VUPW=ggX>
> *f
> z$8q)J+KRpSSnN^FK>k;-jvE^+T@U4-
> 9r>Hmyth8WzDtxSLHrH#qMHBmrU_GCy;>BP
> ziZQFa+BZ`oqOo^_bT;HWK2(~gbd~14eMf419O5%8oRMzjgVMZLkuG<RagPD
> L_s5C&
> zYsdU1B~6N4H9dX2+xPX@DbbDJOnFs|i5Y~9-
> _e>=u8Dg!1+g^Hzdr@*tqEgM?{u!$
> zQ1&3|U78-}-
> lcsjWsQi7nU3<)$GxuOwTbDgwgCRBP_8Q&vv5`PT&yX;8~NLniuDIB
> z%zwWBhA%S%GK{<&?TJl`f2#^-
> O$mccu~w`Ti$!bC>A{jqfvcboGtnoP>HQ%#T!Ma>
> zhCZPG^EUPsLrSFHck~m}g^1U69X5sba2ED_W+SfrG2-
> t1`hHk~9^;VVw}X%P?_v(4
> zk3l<0SgRgmH~nSe!ya>-
> q>1!Z7%L?_^WF|$&$2&5zDU@d&$=h#d>QJFe++FnDB}$E
> z#K%%XSX1@u>yu$Vn!!g)7#}=;h5eRz)=gX9!!oev;k@9ygTc$tduqdT<&d31``9
> +x
> z&aaZLbN;c=Mxn3CEO@a6hp$9=Sn%sF0AF+gxF-
> zGI!WuxHh9lQv}N;fTO`=75MZ=l
> z0`jur$htkZY^{x_OwvkNa9$fSEO=NOQZE2cx&Yi62DjQU)&~DVZGi3NJVc#1rk}
> Sn
> z`u>;jm#9yTun|LZz8OQe<}zz9em3;rBj}NYi~KCWe84+m#E-YT-
> $<d}Gku#0?=|n~
> zz`x3TMvVAztV6!i7AdYgWa$lKj8>f(KST2b&sc+B*2(p`Rqtgct^dHCv{|Reg#FyS
> z6Mm8T+=Y7*#sTqe!Lv2zV1J~Jwvq5}5)S@_>y4B|k?6MSiZyAxfV;&v&O#S+u
> 4BBw
> znnOmcqYA}QmbY~OEc%Rfe8;3k-
> V)8{CvC8kCf+s^MjA2Z^FubgcT7Bet}PU;_tEbN
> ztMkt$4*J#fVQ`+=gl)3Xdc%b2?_hvO^7ftytGD6(hY7RlTs2Cah<EFCRoKe?(S(%
> (
> zM%t9a0TXt!iO2rbWe*!^(bxT)ur}>B%Pld>Q9egZ82x(EW*u!N%%Y`^!YlVNiJx
> yP
> z_o4~QvB4e)qcwxHprh8=8~QWcyP&<YzY~yyab>l4qe<gp&?V2T_f8Ww888d4
> &V(hH
> z^^+e<SGi{AJ`c-
> QnfX144^J|m{|$HIcG=#WahiFLnRy|cZDRSGO!y&`k20UXZQ^u&
> zHkiYB0`WM0;AdfOo7h46Ke#<7k1>R{bCMp*Ae_9yrsz1&;hC^~=cN2w@yuA
> qXyb$L
> z7I&p6&NjY#NZDZx1>dEke^OhDJXvv0G~c<P9k6`oj}!&#KdIw5{KPW64}55s>_
> nVo
> z;BdR_?4KkC{u4f7AKtb1<DKi!B*nQ|7AFFD&y#bi<y-GeR)E`<!uj%3oGCvJK0-
> <a
> zVn`#`I_zJ|23dRA>|@5xPJ@q66h}uS&ksS~*c-
> ?R$iwd@!Vf;tg*jUNM9OM(AU5|G
> zDeKSJ|D~U>wn-
> fI_b$qZFFJd+BK9TV!k*8*H*p0P;#@!8A5UK*cBDV0b|U8ANtm7v
> z;@q`8{S4yQW_lLz{T*s&7t+v?Zod2K2OZX@B0a*-
> )%R7+SPy&!>h5WrS=QwYpPaUq
> z@3@?XANdLV!83}({Y!K2`a<m#?@L)d(O84_NLkO=+F5q3@op@2sZEwosMy
> Pt(5{0r
> z-c`Y#r-U{Q;yInqXb;Y0t~vxiTY4UQMT)d4fM@@ws_wrBV)1?>)~xAx-
> `0h7F83aK
> z&9k-#^!2)MZ~jyaT#i2R<Br(HKFU&CDt5?EKvvKd>ScO@-15V-
> v^83H!$L8zxi>05
> z8gimeiz3mASly&9tPLo;3$77{;sElnjzETd_x|i!$L@1qGURv``tlj%_$l;d0Q&MV
> z^z0KQ5;_#sak^L?ICG;qu<oD8*3~a%N%7$4cTyJ5_gFgAhV!+H=ZKP=Ibz==T-
> qo1
> z97|KuP9%#bwzoxLPP23g@k1B%gR<_GC%2Re>4Z?_)~eZ}q)|?3VcUoElZNwi
> n4j1p
> zV)b?1iFap-5|7|sH{P#B?4f54_TwR6m3=V>{ahdh+G23FVG-
> dtCkOugPTavu<782?
> zAN(cWn6yJX=Q-
> AR&U<X5lGqaZvKZ(o6a)E6(rc&Xq?SiPk86jGF)1x?%9CIF1o=~H
> zChtf=U!4Z;k0HMZaacdvCYB`bpe}K3Jhk@g4^w{%tCSrso*Ua#c&q?%%JNMZ
> 7a0G5
> zl@w^$pTd4TV>Ok~DG%%t)=NIVd)$RKNT`Fhr5t%>iqukG6?jQ-
> 4RveLvBGGPPk5S0
> zI6-*%)r*f6Iz)aMU|yulR;A~qJ4I_c_GjTwv~E<ATi%i<oybs<TAs$a>1)7qKqPeF
> zjKRaKzfp)etiS)uc<&hPO}Ftv-pEgnGNpq$%6jE9n~#-
> Om95wLaVEx>Z;GBcbp%gk
> z>&p|S0Ip1&3cmC<0N-
> 1CQE|q6k=Fws>krWDGVtJas2`d<pg+Mwp}_;%kM*F0HDE$V
> zI1ffU{dwN1De+i?n(an9`r>%Kjv-
> n2^T?yOB1Ny4@}f+Bgu2;hjp#pViL@gFeN~G7
> zpp7g=KS@nbb|-
> 7NCN^%TekX5vvRhJC?JZRjPvm7iv0YMD?=4W0^yinv^SL)iiKEz$
> zIeN2_(6S%<|1XJPF3xcuh3t>!E0dr*ldxC8x)j}xa@_YpU%!iSe-`tUB#d|o`@aIP
> zjRj6Ko-
> +mSpl$6g1&n1R3Fn@Ga|_bszYlue2$%x8Wf)JyDZ}_KHt`R8;WNrxyO){i
> zjKUOmBhuHI>0WPwTT-@mFEZ1OQCktWOLiBU=@#67iuRY8V^_tv6_8Z`-
> ;rS4UBy`D
> z9&~vW;`(^@#~{v+Gw9{2a0jr5($gk76H%V|dR_w7ZO)70%b^E;mvD<%k9#cg
> ^*qFq
> z1o~4Xd)(#dM<En9=d#dB8Q;>tTs}wIAV4<+n)?wy;dta2d;)UCrdtASEBR9}25C
> >)
> zyi-r~psyX+w?MpM0?q+V*n&DxcYO1vr+4(<<JhrfQ-
> VGo8y)Jy<(rar@Ep$}d=iOg
> zco<9D@|pM8@wIX*dHfm1Ncs@mbL{vkxs_u@GGWJ8;yWl9C-
> rQPZV!@md*Fb)ESo?c
> z3QH8!TX?K|6Y2*K0paM#z!;!i2tbD9f%RK;lO}YjwLqD4;xO7f6=UbCs6!vSz->4A
> z+VYvf(?`&4@<cr$PaklcfgkUZq#g6Y3&&0y`YauD-&DjwrXfaR^qIqr7*jrCH15Ln
> zF5TAX;{|p^f*g%DC5_r9w&w`i#Wv}71?^$m*rs;aI=xNchi&3mW_#GKn_-
> tiusLj7
> zq?p`N23(IarA5Hb90T8N&@sy75|hte(4VQ`aSL>47j)<um&3g!w$MF)y=(m&z`
> q1-
> z(c1)^UC<?-
> V}2$Xd%Do4Ezqa=Rjxd&&n8*2YozRSzC6chk1U(>J3RL+;=GQSw3Bm*
> zF~^fH#_CkuNBA)2w>8eLosYSe=e?i{3eFN?t-
> $qG`rbh&{g^;J<|0kB9(oDiUUG<m
> z#>2Qr3q5XL{;b+r0iP*=`M+!@?%zQikNyCBhabXkr~I3s<MI-
> DhX*?Dg^qij#+bkT
> z6T^S7))so*&GONAVGAsO%JK#1S7GiPpicnX1Ajp3pg%zWk^aCLn?EoBf1nQ
> MZ#WL$
> z#rIQ!^edZ(ztcg#QlNjjc1g93Q?d8_n3RRMB)%OnrGxmoZ_p=>ri~MInYp4QAs
> 4>o
> zY{NGwfNwBaJh|OJ9`hLDT2mY<&I-cUq#api`3J-Ef2KbF8~(v?e)5oikO_al?jJm#
> z4P81YkMIxJZp%j?f4ZN5IX!KR;U~aHD<Q8c`~>oJC>dvi;2+Repg%!BVfKy5JIE*f
> zgs0#$yeTKc4kfp21kYK}jhj#3bL^^B@GF4xl#<etZ2A(+pU-
> )>ZP*?Jp8MbP5t_cB
> zkI-
> cE5%4}z>r=|)mNebQB)9azN0@gZ9|2?G!ahRk{{=pR!NdQCkH9{puF0^QcK<-Y
> zKbQ>vAb+B!`v;TZAGl2aU~<-z+g<Pv-
> jb6~@VRpo|DY580eu6={V08dWcUcIi#kI6
> z;5`29z~JMbh4}_w1MI0G-yl`@4Q>L=?i-
> XKUG}s=qY2}m{=qU6M=mt{f$PllVXxs2
> zEHcxUKTv3<4S!&=yTDA}i~CE^aZ4`r1scPAfhN-
> z(BKR3eKarTY@VmEd;#X`d8RKw
> ze@(^wZutUwp3N7aPbaXy_m6x5@-
> u*a6v}UojlX~07fAkJ@dfSxFYM0>jPuXy1GN7G
> zA0UJ^i41#!GoL5Cm@nxIl%Ni4J`48+_#TYi7kCfpGVl_>987&ag!#4!b89pAN%X
> !_
> z+|8Ify_hRAY(Bsi_y8XG0Hd|#AI<%Zqs;wWk8tj%z2TZ95^EC9`~8YBZn2*^i9R^
> z
> z{cnJ`Ch*32U+2r5_jkHvw-@t1cwEo9`WwJ$Ca!JX-
> <j;y=Y72`nD>7LJWEdYd7t~n
> z*1XTUN6h>1O<dshi_ZHv*XO3cUn)eWODMX}On=$W`2})E+(JLw$ul<aC46cu;
> v}iK
> zJ4L64cPZ5bd>;vLp4WGo`K8D!1-
> vv_bdCXhsGMli%Zbm7av_!nj*9uTG?jF*{)Eqq
> zG1jU31z~X{#@=z3lJOPn$15G{aPEj>P2>Jx)5y6#g!Pesg;d*vy-
> WE<tp9<_cN93!
> zKiVsf1`$UJB93$nF{A^yG<?TO2*y#wstmMML+t5Ylz|)uLX3wXjr#!OCLF_R32Z
> HV
> zn*hF(LLWZEA&h7EIj(5YSq8YV=bGeZTu;Cc<M~!U%5qMEOt3zJ%)<9l!(vSKI2zl
> }
> z_|lwz((d4GQf>ProFiE#WsL{!DYM;=pxtbzgm!Yjn6acLtn1kxzJq)k@g6_M+i9=
> d
> z`bmap4Px!mcsJsN@GaBL*b#laE}Tad4fh;_k7dM*BE`O5oK0;{U`$cQUh~9`tkZ
> ZG
> z6m=y+E_$5~tj$r*Wly6FWySnP$d~@*HaxTZqmk;sW5DOR6`XBx-
> vAlXN2mTfRQhY!
> zuk9198g!ogzX{&kfq(c}V?L42;G7HIWyuJ6&ZLLbGqCF|jd5b29d!zvRng$zGJYjM
> zXVg7y_QO!D%7|yuFHQ)FR`tZ7(|<Aivr~gk?(O(9#K7`8+1a%l@Jq30&Tr@7T>!
> ;}
> zc!*a5kDAZVvFSK-
> fO%zZd=C+MY%}w`F5~?hfp22^kr%j@?Zmjka}T~rB|&Co864lB
> z1D+`Z_5)+HD(DhVHhoer)|H+xpZnXVOrINZTK#*d&9G|<eEw#mT~>@3d+C
> V(V!t1K
> z^~UY8Q)B;wU#ssmwhMZ|`dn-
> eWH%K19fc<KmFH%#NYck?2>bSLV9ok{&<$NDInyKY
> z-LvbZtQE*_GI0dPGTQYT<ImVgED2sKIXx!ct-
> xWMc}CERNps)pYK$YRE$k2DY(4A7
> zSxx9B-qk<Rg*9ZgSw|Q6z`A^Ya0%7|QTXoLQmGc7Mcx*$<?mzubr?s;-
> ?>!Enu|QF
> zW%YKrz@r~NQI9gagS5$~daYD@2)G$brJ`)$Ej<r6X9zd67<LJ`y`Xy;@T{{L{4VRz
> zd#q>|<BOJz?fnMb_u&vyg4ZFA%0g~Q6Y`06@E~JOap6*hc#Zw*5MB9Gaq-
> MWI`-)V
> z;!EkcxbEgzBne}p4}G*5ZO~A@Od$S+e7*yt>xUA3l<Pv`;Jd6H$05&9A=cO`ct?
> AA
> z9%}{GP{FUtV280c=nixUwDv(C8J}!bp(mjXiTU{6s4MqH>@yha(#+iN;kyI+c_Q
> Eq
> zD$%-
> 5YUu{9z+R%x!;zSyR^L)jd)G<>eRoL%{Tn5m8<Pg!Zk7h#xmVKnWkbzlS|P8w
> zp(A5jF-GQwl(DUl)!b0wSbn>3Zm4-
> I;vmc)+lp^!B0r`T=Q@xdgU?}TbE&I5cf~mc
> zZOMV2?pNnaMbrU#p;Yu^<nbL3#2Rk*V~z+F#<qs0VjSX~x=?dWYY6Mq5Z-
> AE-6A?e
> zd?&aR_o(^1*{`7}d3Pvk!R|ivYbZ+D&3Doym)89W&hP}6T|j=oq5SM)Z16~oE+;
> kF
> zl#|1AjB*Mf4LjWlef%rG^QOzrHog;<$XM6o8_%*B(B~txF@!d17}G(tv#UVL3S
> gXN
> zc%|AVv@_v4+4%@?pEBiP$Mw&XveF@w!yd`WeNR8$b1S(9_5%1@N5KzW
> EoJHYu1Zeq
> zd+Kwcy-gOc)F*k7?DRsH3SD^ru-
> veVD!%hPh;KcHu>Q86KkI>BY8VSAp|4i_f^Gb7
> z)PXkbqn)tg41YL>_v83oMd%vqv&!o4Uz>6=_UZXvj&O6Y>T70Ox*#Xo1MSO
> @@gmHt
> zS4g$o_grq~hubXmD%dRGHO-
> TpGl9c>Zu0UAKI?q(Eak|t{x^IdhcdB`bB;U2mGw6E
> zz~ABiiq+0Tb4Sk0oSUvR`SIiIX)(Tm$-bd3(_Zncsg;Io^fcauz}eG@9hU)*ve9xR
> zXJ7@|=a6bCCxQCxGPCM-
> U9JukUnM(H&j9x?SqIvc<2Q9Fm<RiY`Oo`hsrG&D!E&Ck
> z$=;$vo*icSE|lkZ>w@gs$3eHQmWo0s3!3_w67r+#3G9(|F5qKxf7dD-$^-
> xK_j<3A
> zijJ~u<b}(=9adJ%k(`YaG0yX)qQfjZR<urseG*rT;tTQq+b|j-$geR8_2)`O-$Ne#
> zm_D=*a%#B{jh}_l=*oufq@evdQc=*PvCouI+GkQ-
> 2>Y)WqQyGxw#%OdS>n6iW!X~E
> zw@q3-pe3Qd&?mk_kU4qO&ng1OZv&i1-
> #in=eNOA_A^VN*H$56wU+8klc?fo)X{J=m
> zy?E|j(&zsDhr-Evev7)3s4IBBK^C)VThe01NxTnLascB38+0x3%UaXKq!X`T-60gU
> zQv;9KuV_8!b)CSw3?(d!cU>PR4=13XEu`TTC&@ScYQ7gsznbmS#}m#}4V_O6^
> XIJd
> zJhT~Qwzll!Sicmqn})VzN=5UKce9z#v4q&@QU73DH)D#N`(2ly-N4-
> m+*!cWpgS1v
> zZo7~2U3@>ruJ;RV^-=G|RLLo2LjNw2iZYPLcCw!(%$-
> e;BlW+JG;B7V{*|9)k&nPb
> z0_ME#ZIB0bfIdIYZRq`L8~3wGcbO@_0mzSOo-
> IQ0*K|F#_VSyDeMH)2ervY^zDf^l
> zF#2SlWru$UyJ|h_<MW8&Q|h{c^G7_VPWcAGC*D^(p-
> qvTE~gQTg8uEd`p7!}v&3vi
> znb{7sZ#LVP0yueP8?7@)M*9*w=7BHDg85&@Gtaha&?Vs%NAIGX&kbTONQ
> 5m-=y(`=
> z+~f&*b~Fea+GVWiI{2L$`eEVx*xO|J$r9erPD5K<iIUSFuWcXd=OdyuRp%4ub
> <y^I
> z)ZL4^z(;E@&RCQn-
> 7^vM+9W+by{`s!lJ66MZ$Nv=KhNglyOR1hjp^%dL7vfWV}4*=
> z)_KLRqyL`3^)#;E;j*78?@vSAd`SK>*3Am`&LcXWM|__8(T}xJ2xIFQ`k*UOD)L+
> m
> zJ26Qr;<td9w+`zg*4sE%b|yU_pMh^Num%0@{jDg%{G6YGIc6KvZwSuU`Msb
> u?HRNU
> zWzt(Eykl*Ax1RlWsR<8km7GT&ko3O;Fa~hFe78|v#<;TZ(jStX&A@|?*4+jFhq
> #$0
> z4bOv;^XV4J`HlM}=i87E{I+g>o1ONc&TN|tyzv{*2duO?|5<71Vh-
> oSL$3;b{#yyW
> z;5ezMhx-
> D*6t!NY*>>xjP`YlKwu8E;>jcLk_Dgy&E_lX+;{rUmxexvd(pbN&8nUI<
> zSQ_PgDbK}lox(cpwp+x)*TA>Ad*dYM#mKwioTPtKoBA600OZ_fymQb8o#no
> B1l}d0
> ztW=!e>B2lrJjYh{2jBa!{Y?a{`}tjuMy#17oZ;sBg|Ps{Vz!Uaealwbc;+0yZ}nMY
> znm!WG^E?TCaz%-K3N8<Ig5NIy&0N%DtZi_n$r{gyx!j3&sZL?c`Q@(sE}XX-
> I5()<
> zCE9JyNy%d3YaGK;LRVhF-
> w<Cj&lnnGIJpDwgKmRe*dM(8OdfT(3v|+mhZrMcc3i(~
> z^NQ9jki*Z;4(`*i2GVp}=s^6(@fvl-
> qOHPygFfnaVC*G!oWwU6G|+BD{GkW_4bKDh
> zLzeG@rb=B4JNG_-Z-rTL0`*52>F~jI{U{uMCs;q%hB^_uf^R8f94Z|z<J^s{zjK2z
> zQkG{5{O@s6?M~!vNy0aQv7ggFN!h(6$+KJU=Shy;)XRR@85w7WI6hXvR*ZPh
> rqDb)
> ztT>ML)d-vmbF}v1Y*HWWL0_TL+K2T@p9AlOT_-yG*NTDTcOi|nO8=z7-
> F?ddn<VY-
> zpEQ4WU!iEF-
> G6(d7<gwhY{4XLZqF2LF23hDw{NO8xBoJ2?(r{abKjn+&3$JU(v#%f
> zd>2Wd3s5Izu;R1D$MD|qMDj^JgI<&z#9DPM?pOonw>iW~%0CikAcSzV?84gf
> 6UbSY
> zpE-}PujrR^Tv6XJuJZRsOHSBHcklN_YYh4e-
> ^u7~zdeu_xLD+2PS~%HU7U%fK3leO
> z@Q8A>e-
> &)<5v8>s@}Pa}hdlZrkA4O1r#vVJ$ly5SMtQLPmOS2utk}kW$c62B2Xgyo
> zGJ!v0tZz}L(WVHT8H)g44)`RIIP(;RGf&aG&s_&vkh6w0Gj$}?ECv|k{MfYFPr~*-
> zk*s#AV(r6+MOAL^Ms?sVIqihk*|xnG<zk?tx$DKgD@~o^nCJt})6ipW41ALr@
> J(J3
> zwXr<wCExup=Pu~7Pb9RZ^aC$6RqFg1#%&1pi+epu&ZHfmKn7f=<4pGezJW
> Gyqpapm
> zHtA!0%<hH%(+ipKyaC7f2Ur*TA$t)Czv)W&{;^W+2RM__2fRMu-
> 2j<Q0B*F6Mt>UK
> zp|jCoUy=s;+S#5B8ZnadEuQZHUI=)(pwS-Ll^?{Kpm%CSt8ihjW-a2co76{KLfn6r
> zytavfLG*L)O31Vgd5C9i#{O-8jXKbWb#dQiQs-vHaiR};cLZ`eHPzF3x~eL-XBA>v
> z(Z{yeDDa~)w{)lFh?A#f>HeUK`1dw(5^XL?%M>RO(<q6TMFP)N&BXO7^uU7{
> ?tbid
> z>@;~3i23)Ld|^N6{<MAKq(GeYdFXxG^YB&q40=H)VpEzp8N_=b6Cs<l{{uWcr
> @e@A
> zfjeXBY5n44G|T-
> =oa~Lo{UveIk62b(7wE)@656M<Ea{}+H%?xZPBP9#8KiBMPHN-v
> zy%fgrmq;gr7m1Qr%r*pZ_KodRagOa}?471<LAg}G9*|DDT)6vzkGc*r@0ZA%V
> tjWc
> ztqU|!XWA>$N&gJop8|dc&ZiOY4Zx7soC$acW$=xc7XUvkuiM*+F@0KA_a4yi
> oA=@!
> zDx~k(`+fcX^}XNI@0<3%fcx*{o93LB@7kM#GpbLBGjlQuIL{@!*-
> kN4On~mL`Yzf*
> z_+RmNOTPNS*B_>y_BN{n*LLN#Tq~&qe?^~Ap3SiTedhDON^cqHox!-
> ^8S#feZyVy`
> z-@tR9yzb#%dE?&A7)v*b$G1}-
> L>JBvOcN&;qra#RH!IQ(ODFoM56}zhD$Wbt|1oF)
> z=e0RE8||eY)d0r6Bm8~XJ-
> q*&&=sjYjBk_NKS|oO_cZGJOy01U^W<mBq>dkpyg5&u
> zz31Vll=>mqy~?JCH_5I!38wtgFCag{DZhMEetnSN?T}xwq;+yF@rbN-
> Qihh?J}({o
> zy`}-TPREcN`{of-ZklqBZhIo|Jrzya{O~S($AY%Vk8cv}!uJ9<;d@^9jxRj6665lz
> zvv)tt@pTHZpFfG(IZr8@_nuNFzUIYP+XZ|~v<X7KuUk{Z{egSbhtr(uN#@NGk8
> G#E
> zcrR?<F_c}4JlNp`8U7A@MIU9y=Md}%eWc^JV1Bz%47^_|2Fl@Uzh8>?QEyQJ
> QwM55
> zgZ;V|wy|fWI*=ly*ZfEq$8>F98#%G182r!<N$^)T!yYdbDJ`>{k8J-T@KJxR2YcrD
> zj^Xy3712_OHsS1DE53`-`nb}t_X_ZG^`)7)sh5g5pIx#z_bCPXbQjJ$!B#C34{gUm
> zJB*z>hsMF@m483ve?R2E(9~PX|C^@#5oh0j`qOm}U;1a^JO%yzUD{1^-
> oZNcJzU3e
> zy$^ZBqTZ4(s5{o!^GNCjj+LILg?{cr!#lzpFCnD)E+X4wukURoqV)st_eFKgYGbjj
> zjh2p`!r$uR{LlV8gV-w0%DerDDfE|fT#0QFSBqkQifCoOe-
> G(MrY}|VS7zXSCPm+K
> z$?q@6JQ9QFE7W}ILTDnMv(@}V*stOHq5fR`Jw)gbp0C3Dif@Wq#C|*d^FU)3
> V!qIc
> ze)#Oy{R?gTN8{)F6U07$lJRYVO1xjc0`gsn_xg3dz&m2yx?cAk6Hd1O2zYS+3p`l1
> zV7^Vh^rhLC)A0AEv@`0%680VnFn8StTZfU@+W2GPymY<)4DEDVf;h>!CIo*t
> a(%@a
> zj-9vQ|9LQ{P&VY3yq5o36p_y-
> !6)@&gl+(jW3dYKXiM9zd0)4ql4(cf`}MgF^RmEv
> zLmIT5b~=~-
> LKNK?M#Heh77fLqf%!0mIhW<J*OM@+zV<m<=ZDeiAHk1fh#wX6@o4;f
> z3f=tXVNsM7M#t{U;JYkCJPDjPAWs)xfG5&>8+<YDU~l)^2Sx4VaM({pZGuV1jy
> rx7
> z*f)P7oV25CgB_RkJ&V59Z8PSqkbLKd9^j-
> Wv~BOX7k&rqc@O<H_<b&+Z4W&pu#ReY
> z_<-=w!8@KfzlXmE2-`znu<u^X&x-O|AIj05_hQ}HgL!YNqbncrhWviyr@It)-
> $S@#
> z-
> YgKxU%5^QLbqs3OO^2_nsL^HF?>F|RD7ds>O<Q@m@oU~wGY4F0{$K+Pth
> m)H;aMK
> z;OnJx-
> v)M;{+=wxzvgkI?&yKPSOJ^YcbTVCLF}LhzG4XH0u|^f&w9{SybV3&Jn<gv
> z$bZ0xJqtc*8{USFa;|s}HiL7^+0E)ee~UV>RiwOzZ?)$99P~n{3*WLB5F)iDgu2pE
> z*A$#7u<Cg_RedA_G7PWl1Jv~b>iPh*SqJN4ovgbTH2XkP9-F$O7c>zY-
> 2X@Hby_rg
> z6=#Qn{hV-
> `J4WF>6MXlB9^U61aKxwX;5sRUzW5`2=MnTqk;lED7tUK8+ER(Xk4G8z
> zf@V6}O&QB*_gNcFwwY}wkCuGbn*3RE<@`l@#}UK9oY_6j<dyQ=0=ne&2-
> f#q)EUsm
> z--aCcIp)}xg=oQE-
> R$=e^Lk54If1#oBpYR?3=ZzY8SD6d=u|n*a+O1`tTy62@%>gm
> zSp2ZRmzq4WkFB=84V}Y#pRJqYuqOCyu;k}s5Th0;CpccpkPdJA;j@Dy`keJNV~-
> @f
> ze`c9=okIKU`t>^M<5|^T;@<bTI<VOheNuvN-
> w$05wHW%`B!sTd)C<ZR?_BRcOW!3-
> zpHs{_>~?iDJNDvdgOi@ZISMOI@gw*T0&gC-<GVf?H;CHx$m<1d#`-
> +?#sK3aY!}Cl
> zggU-
> $mUW@;CP`VjTuZ_S*@p4EziXRt9>P0+Wo@E%1@M|i;?5y1d?+2)|A=q~@N
> K@b
> zps2kCc+9(75wEG^kLlm>d0$EC2!hvB#q+U8u>fo9g;-
> lJ!rFQ<*4B)dMi}dFGj?w7
> z^SK$vVoagjth)<7+V`=x)m{`?`u^2k;VfW%Sl_}|bTfWz-
> =F^k`ox(2U=+qn6#4<W
> z#W=k^eqqJI8RxymR?j}jAozmFYD~mBw^3wWf;`X2{M_Kbi>!9!%P-<h1msb-
> KFJhL
> z?e4YfyCBow%4+9w+-I5PLg0V1clL>=VIRBx56WUMD&qxF8;5-
> AD($2m8^N9kV<T3~
> zUFR3=V7#N7aXQ3d1m2s`V>!0=uq~(fPT@o&uAgY*cR$+W+KoD&#NO52BI_j
> 1|B&Cu
> zrV3~9_EUM}_YLq{f_u~mesgqw)#p%lJKFkFQPhjFpO;^ph1dBF=aqa~vS%!jXF
> ?cf
> z72xS`gxL2s>Y!c=@Wby~{0(%dm*Q!W6~H%mdVemmx`6Yi5qQ|QHSxOI(RaX
> W`nhoa
> z061!@a3&)5$Nu=WS;p#*-RKWB2%Q3c2IkHV<a5j%y1g$?la-
> bp^jj02OU=JSRSx-Y
> z786fMJhK7YmM+9~F4(CN@!2D$o>8aG_v^oB)@$nVetZ+S)&m=JI8W4m8+
> m@jP58|K
> zf26T58p1pF7)$zhmMDvKe51xCgd2NIBgTuhPc{p_@)Nc?sKZ@|D@kJzUz#my
> 8(0V4
> z?bZ;Z^WPI)tVN1^?pHwP^!L1n=t9>lp10WOVeIW!Ulz3i{C%d3S)$gDJnAd=%>
> !c%
> zo?ZC6azkT`ZKpoQ81D?$h0zKf5w(Y~r+YX{)Lw7WVjMbwK0o&85O;W7^NJDs
> bQ}vj
> z6A4?o58s;KUam<y3UL-
> o;F)=WjZ@yx$BS9FVN3LLdAco;9b(@ylMmWG$N=YrW(}SF
> zaUBv_681=YFBe6bz?**_?(mtSu7g59XR&jJ$hru4o8?6P9R|w8+Rw7vqe$2zeS
> BN7
> zPqQDnPf30I3-oX^;;$k2?9-~s^Bh%E^QdcQVHX&ijTAD@1Hm4`x8Lj#-
> wOhtc$Gqa
> z?Ppb&<b4V}wtcLpxOjoDq;$c;Yf2aRe9L^U%;JVX!@9Muxvop<r;imgt7`73oVl
> UA
> zw7jZv&CJS*RoOGIuc$0qwQ}Z?>azMk{f3##D_2y{udlwdvVOsuhWZUfHPvex
> W`+Z<
> zC>QDH)iGWFBkGzYjNfIrjTP{`Y`;PLkUt6+-
> gVWhD`qaMZK$qU<Ey!Y9QhV3S>P#N
> zP`aqFFeh)O$KxwpoSQQe#Zz3gV8Q%F^?}-
> |>hiVo*H_LwA2NS|cln~3o^=g1iz?TE
> z@$)cD{zhSH1Uu)I3#$vHGc&!*mVxP|(=)T?&b@N_bW!MYRRz|%ynzZ=arM
> eI=!$y8
> z8}#25Pni#2@K$Y>v+iH8`2QOEGbSJZQ@LGVQ&G8={Q{F;Bo^Sm`NAa@iFy$b
> wW3N?
> zi*m6RkRnkiuEE_SD)gKNQ3)LJPs_~*R<*d(#I9Vk^2?QL1a6~g;TP)g<tqd8>jQU
> z
> z_5Y~|maS{3UDq%=p|IiU4XmxazVeQm`VAPcGjFb}uR-
> cY41n6odJss@^sZa6qO#sK
> zcdjcl^Uj*;3YUAjD{H#z(o0=S(CCIL*E}SJ`Fu67veqvQ`z>Fx#5Kc}x%`@?B}=E9
> z^uFY}a{6fP{D<rn*4$AWs3*U}9L}#?+fa>xfN^e;P9MptD6UyoUtW2E%uJK>8
> Q{nD
> zIoLn1y6NJJlCbkL9p-};)^$lB^OB0`SK<D-jcR4tx|Qg(;)aR^_4PC7n@M!q!kYR!
> z0u8QkIgFxJVbZ3p_SV!i6j#>YSzTVawj@xtx{`Wvp$t^E@|rsWD=QZV)>N#nJg
> >@?
> z#U<y%yv66iJ|Am_o_bcVt|{01o1BdT15-
> s{X)SBX5}BUWFqC&xu4!;x>ar!+;nS(s
> zS;AKtSZ$P;=hE+DxQ^oLyDLABUbw!PUQ?jHb!!@`@2DJA*cZs7yrC@NJ*(T`&
> 4Y-3
> z<M;VwIlq!UToh=iq7;Wy%Nwd!S2tAa7IY~r>3MYxqn?*#4TO1fU27q>niZ~0P
> U`a)
> z+;C0dg3=;S$>P!?-?EZrh0B&e^spdSfva6v>$9@5uEYgfqKiDdiJz}kmaZE91!scQ
> z5SfwkR<Eh3UbFH%uD=*%)BuY5z*w{n)-
> aq;J?A`VQGHEAO?l1gQHw0CX{cVYVd1(p
> z<uqdFmGxDwtX|ttuWS5ynM(tAoZm$T!IIk5RNPrtiX}DWtIjJ~R9{_FU)`|5hBIT
> H
> zj)^g`U_~__eU+;#F+Wu36wF*S*vwtNrg{xjC9oQOJpyHzfTz4}U3EQjN8^(kFq
> %LJ
> zzag-C-T4i3j}9(gS6f?C-%wexB(P@XI&0|Lr>oB~C^!*9CTkj~L)HVjIy2LpxOCUI
> zzG2x4W294qskWFlbR%NJGwg411E{V12WX?yu@^qC(>T7fuFRg5Gdp)qUcSd
> $IDf&y
> z)^8Ik#FOUz1@r#0dH<7n|Jb}oKWN}jH1C&~_bbhNzlrBD)7P2zo6LKadEa2(?=
> $b)
> z%=^EY_dVu)zj;4m-hXZ0|6tzx%=`Q1ebBr|J!J41Z{9C5@0Xi*k9jXK@3)!vRpxzz
> zdB4}ZKVsgWG4KC;+>fdf*Q{x%tX~tLUAeKk0{+j{u332^bK&a1%C*pld*J_MU
> Fq6H
> z)yUIt*;)E6FUy*4GKY|fW2nz`*QQNyuq-
> NB>w&K8)pT+7nsuvJyI=vJP4mP!F>b60
> z;^Z;Ud|nA#gzv33)a%AGGqZ59$9H8eeKkX$rc;%&glBDeb@dR|h^$Mp^48C|
> Br9j=
> zf7$CV$;xKRcnH4>04iph|I4Xxx%hY$|A(Bsn>cQUTSLR1m6c<)$!P5mA2x26)m
> N{C
> zH@Dgx8#>qUutulFCPAo_+{lKFPNjHVIeeP6;>JKdEZ0ic@-
> ?g0)ZDekwP^K*+NvSw
> zeAv8(O4q_b^=huIEaV$uE6<0TlYU7}jjQ;M!0OdQ=vXDg9hx6#2*7q?u?7#Vre
> 0jL
> z=1y443OE_{u-nihv3$*1%XkSc>P&*{MFBJJf@@N-
> K^SwcNyOlUGfHJSY@UF#@4{5;
> zt6Z!5xogD@HLKTQRw%5guU}W&U?mqqi$KzKePu;;K<NK>;WIsJR?<47riC@
> @)>H_O
> zE+W_b$~DzGoMdZj)~qErt~;<QfZ*_Y70B1DYtYNBZ3xix!ey!_uTWGoU8b94a
> ZTa%
> zMJDGZ3rnm=YeF0nOgUZqhHChmt{W=r*J2_R#g*mj^cm`g>YCO1^oQkdp;=
> <VnhLhs
> zXbqTz$68t8%FNE64tLH<&4M>!A}*|6T{$FwYn~8XP}JAlQH?py=&a9Y6m*xV`
> p)IK
> zIqPR-`zr4Uz_rkqOY^JmtX^AFZw$82PYWXfa@8jrW0B-CAjS-
> 13?6Hqu~u5H(v?N!
> z6{QQS*H>0}8uV~SDFD|8)>q%L?hee&<?wzCGDZ<-
> (a=iiyoqIKlCvY}^V`VU&ABks
> zjyA((tZ1fVDToSD8>UKK7cp{;_Lym`0&NBV1^l_@qSLnC{K8@Yi-
> wV0SY5xi!H|$?
> z9*44^dNpe*M&v=O)~#;Pmjc66{XMW~SlPM_Ogt{REbB6uq?xWOp?bqbpcj
> U+z{cw$
> z$<3MW8ojXV^02ZfVR;}%32O#gT)DomDo|fivm9OvWNvbS>gUaK<xCfD#Ok
> P5V9QV*
> zGG}ATS6o%Sq5*uJ&(uGw0!*TU&!>u(X$B{zB3epe(*^K2tVC9cFQiGM7P2^;`;
> SM9
> zRrWj<U15r@&s2GwR)@HqOPx0qDop7iR!+k<bhOge=F#-
> uZP0*Ik+mMnp|A<tSBZGv
> z8r=yVeL}ZsbXd_58XcB5f~QgZgc0Mwl9k!y%0PX2)d+<1)Q(ygR?4srhMBaK+a
> @g=
> zL!VnQESrM@!(z7)g0vAA8l4aK(0bMIn-
> FL<RvK4hEM^ToXRQw)o?ztAHm*R#2)DrJ
> zTwQS1@YLTib2<DQgd{2}VDLZR9AN}GSiZ2PcEgD9mk^)i#HMP;KJ^5zx&Jq-
> Q&x1e
> zuDNkc!5!Tb9?TcPSF7v4eC58sEv`S?wP1I~M>m~w#Qb*f*1K>2&v$E={qPU#_
> GDf1
> zdcqCP2Y!;<_P6;DKmY8k&5awrdHG#;J9~cn#)Rz)#n#IT4qY$ye!S$Rs$EOI^S8b
> 8
> z3X0_If8Oog`lqRR*FJXk?mz!V`^xPt(=UJG(~n;Byp(rWN7X|w<p=JaeCzW`)k`1
> 0
> z{9A8sC^>V{o-2dNh5J&j-_;d6=F*GX>e{cIa!c8x;IF{o&+zik|NkpSI74i~K_mY1
> za7ab}IT7(6<(GH8zv9V=>gfUp39Mi3#mTaY#54jX3OOi5+!PTfA`ZPYJK8ZO8fSH
> P
> zh_Pzi%msB%9;zb}KEAcoU;gB$cmG9f)$57I9;tBR!n;5Q9n=s6om9|?1f8hJ=x8y
> <
> zptHb6XS^eAko0P!g;23!qvE*>S1)M2NP2iCtK)I8X)fStQCQ#c8P_ork2omK7Y@
> X?
> zka&U#$b@*cxZJ=aj}|?=Q>4?g@K|o^D0t&cye^ZTigXZHRv5iFz{sD<en4I_Zuj
> B3
> zl#JoB_yham5U#9$f=61!bD4PL&(E|;&uRzGo9k`zn|N6!US=2`&cy3@njDf`c)l7}
> z8ZMlP5?A1IkRX08<tEvMJM%Bam5GZq9oCkTLntn!nNPR}*Oj=e@*+YwTu3u
> t#kCq2
> z&Y2A5tC24b<>Ne{*okYFEnjo^b^6RJ#KrPoHuGJ$-w-
> ie|4gKp<I2ay`lsQpMs6A6
> zZw}G{TvwU-myeQvr<E^b(;3fNRNfGOUZl6-
> %EM*R7ZI)@`fOJTuGwZj>4)bpvhq#(
> z!H8l0NcXF_@LrHkpXI~zS6TUH`K^&DBlx=u`D`coWBKs>N349aycRVq|7(%A9T
> (ee
> zwU1*^gZ`?3X}GpPkNmhmUf?ETaZxu{A|;nDD{5NacrZ;Y8%O;YPd)fhX4+$&P
> Y()7
> zRvZxtQF-}SefjFS^YF)~##8YzJmbV*pEO=X8bxE~=@lX4FD-
> 9nigz4+=M|Ooq0h1r
> z;|HgrXdH`{Xv0PS`oLS6>N^gr*2t*nF=Jz5$Hn1OFXm7E*NgrSYGqN~rUfI6vEl+
> d
> z-
> +>S*Q_7MiB?%YpRV{29@rsas0@t%)c=3Q;gNr!AMsE)AT)6O0r<aI3>1{Rb)ncS
> I
> zT=?$P2)qe^k)Hl@;~QSW?dJdVoBjw&1;U*u+y!oYzg`r$-
> HC2@fdH5(WCDPE!gLgT
> z<-
> R}^B#MFpcVePDvA|uB=q^ASC4hxOKqN(w(~Bko6?jC_OQIOdfDB6mgak2=t&
> >bl
> zOf0~Ei3K3aC){w2!awQ*Yy6Fl9}y7|9UUDL6B8E~H(|nrgoK3T<mA-
> URF}&&ZQ3-f
> zBWBE)k)55LmzSs0FK~*2G*K`UT=3t_0+CjLb5LlDEyD&KJtHlx;Ig!WnP~-c(h3Ur
> zZ%#ql%!0Jb3PxtwprdEZm{D-$jDp-
> 51y{`|DB!=V3TEUM%(${(WQGkodIrv3Mv2ro
> zk(ww{Q~56uGj*znN*$SDgN~jN7neFAE;TVOH90OdmH(1c;}TQjCZvwcut7)9N
> JvOc
> zN=QvkNKHvdP36Co)P&^JgrwAw88+zX8M+tZj26yV;dJs}EdER|{;IKaWQGkod
> Pa1#
> zb8NITHrg2%?R4^AoHIJs89mlHGQ$QPJtHQ@85`pq7vmfs<8<=hcxTKwXH2Yf
> WQGko
> zdWJbt&%eP|bNtia;8?GNoxceeZ69vBUEs6J#N&Lf;cBqqAxrQg9(_2{<J`0!7eA
> 6n
> zdY9mtCWV)s9^|UqEPK5uP7|f$C7bkINUON+veipGm^~ejZlsEf(**sBali{9jhlY
> q
> zCQjoDngGs2^Kp&lU;P5`ED)v*BrO-NJn)f%i*>RMlW@^acA-
> MzRU!Q%E>9TVM8Ie#
> zL%>mO^z3$=ZKWSYdMfA<?<S<5$7Q$U#KZgF|4-
> Om>WGHEKy!s3*J%B95^&YTqn>2q
> z!uxl6zoKjPzF>C}58s~E=@C!G^$`%*|8~4X%ro(*pS=DahKFq3Z+-
> %dY0v@o1N|bL
> zzt(jCH(fUqa34ct;J~NU>#Rj`3Sqc-LpSQ<ivG^!?<kL!DJ#pRJIkf_R!U7}(#sXn
> zwlYbp5F4@GTqZV^i3iKXs$y+rhPXXLT)#xydY6`YjW*{REp36eXtj1prIzRSX0Oz4
> zzeDr53PF><{}sA7NhaO-
> Lv;B^(mAHsP8HW^;~h;GZ#Uw9_`PJ_jnwe}=X;IkD)au|
> zCSExFuO{50r(J*^_2rBH&=m0`uAFC$YpM6jEIW-+!UO-
> mA8ZRh0(V6PHV#JnX+rn`
> zuMIvQd@-2SUe!_CvA#p=xUXYt#}ggFj^{gG?0Bi8tK*f9-
> *o)GBh>M3#|Ir}I>esn
> zJ<dJJdt7@m_hjwK+oSGTyr*c-O?&)%s`k|GS-
> (fybKjn=d!E<>!dqdpaZ{gL{9Ms<
> kcnBIcPuq3huHdfccfGjlrCnXSUfK1VUBBOj-1C0_AJBKq+5i9m
>
> literal 0
> HcmV?d00001
>
> diff --git a/Drivers/ASpeed/License.txt b/Drivers/ASpeed/License.txt new
> file mode 100644 index 000000000000..3dc49d3aff4f
> --- /dev/null
> +++ b/Drivers/ASpeed/License.txt
> @@ -0,0 +1,25 @@
> +Copyright (c) 2020, ASPEED Technology Inc. All rights reserved.
> +
> +Redistribution and use in source and binary forms, with or without
> +modification, are permitted provided that the following conditions are
> +met:
> +
> +1. Redistributions of source code must retain the above copyright
> + notice, this list of conditions and the following disclaimer.
> +2. Redistributions in binary form must reproduce the above copyright
> + notice, this list of conditions and the following disclaimer in
> + the documentation and/or other materials provided with the
> + distribution.
> +
> +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
> CONTRIBUTORS "AS
> +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
> LIMITED
> +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
> +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
> COPYRIGHT
> +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
> INCIDENTAL,
> +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
> NOT
> +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
> USE,
> +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
> ON ANY
> +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
> +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> THE USE
> +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
> DAMAGE.
> --
> 2.17.1
>
>
>
>
>
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
[-- Attachment #2: Type: text/html, Size: 48654 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
2020-11-18 23:39 ` Nhi Pham
@ 2020-11-18 23:42 ` Samer El-Haj-Mahmoud
[not found] ` <1648BEB9C1C66CDA.13688@groups.io>
1 sibling, 0 replies; 7+ messages in thread
From: Samer El-Haj-Mahmoud @ 2020-11-18 23:42 UTC (permalink / raw)
To: Nhi Pham OS, devel@edk2.groups.io
Cc: Open Source Submission, Ray Ni, Leif Lindholm, Michael D Kinney,
Ard Biesheuvel, KuoHsiang Chou, Samer El-Haj-Mahmoud
[-- Attachment #1: Type: text/plain, Size: 38745 bytes --]
Thanks!
Ack-by: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com<mailto:Samer.El-Haj-Mahmoud@arm.com>>
From: Nhi Pham OS <nhi@os.amperecomputing.com>
Sent: Wednesday, November 18, 2020 6:39 PM
To: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com>; devel@edk2.groups.io
Cc: Open Source Submission <patches@amperecomputing.com>; Ray Ni <ray.ni@intel.com>; Leif Lindholm <leif@nuviainc.com>; Michael D Kinney <michael.d.kinney@intel.com>; Ard Biesheuvel <Ard.Biesheuvel@arm.com>; KuoHsiang Chou <kuohsiang_chou@aspeedtech.com>
Subject: Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
Yes, that's correct, Samer. This driver is going to edk2-non-osi under Drivers/ directory.
Thank you,
Nhi
________________________________
From: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com<mailto:Samer.El-Haj-Mahmoud@arm.com>>
Sent: Thursday, November 19, 2020 1:08 AM
To: devel@edk2.groups.io<mailto:devel@edk2.groups.io> <devel@edk2.groups.io<mailto:devel@edk2.groups.io>>; Nhi Pham OS <nhi@os.amperecomputing.com<mailto:nhi@os.amperecomputing.com>>
Cc: Open Source Submission <patches@amperecomputing.com<mailto:patches@amperecomputing.com>>; Ray Ni <ray.ni@intel.com<mailto:ray.ni@intel.com>>; Leif Lindholm <leif@nuviainc.com<mailto:leif@nuviainc.com>>; Michael D Kinney <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Ard Biesheuvel <Ard.Biesheuvel@arm.com<mailto:Ard.Biesheuvel@arm.com>>; KuoHsiang Chou <kuohsiang_chou@aspeedtech.com<mailto:kuohsiang_chou@aspeedtech.com>>; Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com<mailto:samer.el-haj-mahmoud@arm.com>>
Subject: RE: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
Nhi,
Thanks for the contribution! I assume this is going to edk2-non-osi, correct?
--Samer
> -----Original Message-----
> From: devel@edk2.groups.io<mailto:devel@edk2.groups.io> <devel@edk2.groups.io<mailto:devel@edk2.groups.io>> On Behalf Of Nhi
> Pham via groups.io
> Sent: Tuesday, November 17, 2020 9:00 PM
> To: devel@edk2.groups.io<mailto:devel@edk2.groups.io>
> Cc: patches@amperecomputing.com<mailto:patches@amperecomputing.com>; Nhi Pham
> <nhi@os.amperecomputing.com<mailto:nhi@os.amperecomputing.com>>; Ray Ni <ray.ni@intel.com<mailto:ray.ni@intel.com>>; Leif Lindholm
> <leif@nuviainc.com<mailto:leif@nuviainc.com>>; Michael D Kinney <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Ard
> Biesheuvel <Ard.Biesheuvel@arm.com<mailto:Ard.Biesheuvel@arm.com>>; KuoHsiang Chou
> <kuohsiang_chou@aspeedtech.com<mailto:kuohsiang_chou@aspeedtech.com>>
> Subject: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500
> GOP driver
>
> This is the AArch64 binary provided by ASpeed for AST2500 Gop driver
> version 1.10.00.
>
> Cc: Ray Ni <ray.ni@intel.com<mailto:ray.ni@intel.com>>
> Cc: Leif Lindholm <leif@nuviainc.com<mailto:leif@nuviainc.com>>
> Cc: Michael D Kinney <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>
> Cc: Ard Biesheuvel <ard.biesheuvel@arm.com<mailto:ard.biesheuvel@arm.com>>
>
> Signed-off-by: KuoHsiang Chou <kuohsiang_chou@aspeedtech.com<mailto:kuohsiang_chou@aspeedtech.com>>
> Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com<mailto:nhi@os.amperecomputing.com>>
> ---
> Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf | 33
> ++++++++++++++++++++
> Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi | Bin 0 ->
> 42880 bytes
> Drivers/ASpeed/License.txt | 25 +++++++++++++++
> 3 files changed, 58 insertions(+)
>
> diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> new file mode 100644
> index 000000000000..e30e5a160f70
> --- /dev/null
> +++ b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> @@ -0,0 +1,33 @@
> +## @file
> +# Component description file for ASPEED Graphics module # # ASPEED
> +Graphics Controller Driver.This driver is a sample implementation # of
> +the UGA Draw Protocol for the ASPEED Graphics family of PCI video
> controllers.
> +# This driver is only usable in the EFI pre-boot environment. This
> +sample is # intended to show how the UGA Draw Protocol is able to
> +function. The UGA I/O # Protocol is not implemented in this sample. A
> +fully compliant EFI UGA driver # requires both the UGA Draw and the
> +UGA I/O Protocol. Please refer to Microsoft's # documentation on UGA
> +for details on how to write a UGA driver that is able # to function both in
> the EFI pre-boot environment and from the OS runtime.
> +#
> +# Copyright (c) 2006 - 2010, Intel Corporation. All rights
> +reserved.<BR> # Copyright (c) 2020, ASPEED Technology Inc. All rights
> +reserved.<BR> # # This program and the accompanying materials # are
> +licensed and made available under the terms and conditions of the BSD
> +License # which accompanies this distribution. The full text of the
> +license may be found at #
> +http://opensource.org/licenses/bsd-license.php
> +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> +BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND,
> EITHER EXPRESS OR IMPLIED.
> +#
> +##
> +
> +[Defines]
> + INF_VERSION = 0x00010005
> + BASE_NAME = GopDxe
> + FILE_GUID = 7F81D838-F91D-4C44-8552-8FB912122FDD
> + MODULE_TYPE = UEFI_DRIVER
> + VERSION_STRING = 1.1
> +
> +[Binaries.AArch64]
> + PE32|AArch64/uefi_2500_800.efi|*
> diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> b/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> new file mode 100644
> index
> 0000000000000000000000000000000000000000..4b36e189b3a15abe2c160b948
> a1e221d4b0fd8e8
> GIT binary patch
> literal 42880
> zcmdtL3w%`7wLiYkIg<w@gdrp$glHxKHB3cf2qCdT&P;fz2<arKRcmJQfJBfy2ns^
> w
> zB%#$Bt3>ey-
> e!WL5`Mi}3dQtAfY$1@wIx{F+xFJU1GS}BMO27b^8bF%BRLsDtG)OC
> z`TRb=k>fdg?X}lld+oK?UVH6*POiUM{L4S>UoJUZuxNo06&=bj08bx?D@2Tph
> ew47
> zjyJM2q*cPqp9^<h;Xm!UVZ4~|%nPKQ7l4lj4m}H=kdci0{?QQrMc5S$mFpW=7
> H!ts
> zY29t~TtfJ-
> s0cI!0Ha*g$A|AWG@%O7bwz#U>Y8$cSBq!f?LXjo?dgBzd9Ya=Jyk4r
> zpNkO#A1R{aDIvC<!u|W=%z?l~5zcg>4uq71j%|R4l!+bZV$^|C#p-U9Ywc1>-
> yA$*
> zlxJD(go3V6J3rni?LMVQ9hwk1>CtLufe@>XM2Hg7=>d&w(9(`8S-
> {N?DIzB{IfCT|
> z0y`Z}Wr;e_`?P2!u3r?q`7!8@PZHZiswj5JA}3Kk^MmD9S`s-zyx47}gQ$<`#{W{B
> zy-
> H$71n^vcR<aI_*Sa%8N^K|+ZJ305&I~%G%Z1)9@^c&bVLcy<Ge59+ya_O9b;4
> {#
> z>rNCOd>8^fw)^9ap517((RNdIR(mOfIjEDgdQq31=gcskt+d5+&+iPLe~)s(KPk0
> 6
> zsaki_AC%hfBTXL3*FKZ>Yhkn}gweLr7H#Rb2JJ&A*Y%%Dt>+@Gd*|<z+NW%
> ^Z%a1%
> zeV<8NgRIv=)}LB+nX<Oh7VY$I(w^AS0X$1S!8euKcGS`IhEhvCX-X6cR-
> UCd)Sd50
> zB0&hPTh}8+KKk)3((cE`L^vtGE}41;y_`tBlsY0GPzRn)qAp4uy?vs!@j-{PA2NxM
> zHD4F>L{-il2&Jh59-
> ;XnlGOnjcSY8^`xU7*h<xhwEa}XFo@RA}Uv2hLCr`zA_BIOW
> z<-O{Lv}m>Nl=8@S*1Hq+IJQDhS{zQwy$_cL8q|Ni9k+PEmpU-0$mST3j-
> D=;cb`Tb
> zLe;v-
> H`_9>O4)sGsu<{*DF)6ca>r@P2spt>VxOz({%&pTb07L;G4P2L;bgs=BgFvQ
> z8JejMZ19TKKJekW*8%xX?&wE3tF6?tM6@p<>C6HDSaqOBNpw4|*4x}&UM
> 5<}D{&GM
> zjeN>P&j)V`<Zb282K=LmXAZFL#ztf8vF_exsnu`N_$dC&0oN;vQ^HvN6g1l%A}
> 3E4
> z`z1;14m~ZkK9L}{si1@Bd_V8cN%_L1`CQ_~`cRGNwD1l<M?<r~E6PM+T!ob6j!I
> K+
> zyM&mn=K)qWNo@1a6X-vYuo?HVd1#j;_8kI`lz-X-;>@&X)B(1mXQRVu^-
> FT3*v2-q
> zO(o-
> ?3&1UiGGK4So;jc@YJL#B`$10~EA}z}V(`u~r*XH&Y65hAZkWzn>7Zp_en_29
> z==g7z`<dblTn78{6Q%YQq$$hvyB*GG@L1L>TKyTKb?TiCXGNLRdi*YjbHz@!U
> +Wf9
> z!JE_2M)k+K&CJ)p8+po}VDQu(##3?_PgdIEsb{~z6M66-
> M1Q$4{$5gQpGLYLawlIE
> zUg#J2YF`JvE|*%%nndf7I)^g?{B)W9-
> 5{O$!DR5Y*R1~|jFBL0K^OQ8Tn?H)RcaqZ
> z9t?H@X;Me2vlWqs-
> W~!y>T85#j7!Ql0=PNQ7mRCn0&FS!R@Xhq`j{;CQHS6B3wT05
> zAB+@rhcG6ouVrzDZd*D_9q^-
> `X&9Tms5h|2;p_u_>Hv9>rWrcoLYm|DV~kUd*VE-*
> zjKxBXMU2@ak}+l#NuT#PPHAIkb7*J0lGyJ*?$GBW%MNh-)9&=#Zs=PT_}5-
> A`b~`x
> zIj8y@PCx1oAfK}EV=kkuqMf3RS^%A-
> d_O_|YB6UH++xbM2lh&XUCq#LJ!9E}QXx)+
> z(0=uMiZlHx*y-
> ;pS=qop1zgH)R!AIWTPvW)k<T0QXkX!QQrF7Mhx_sqw1@h%W1`qL
> z9p%JsgWpfad-
> kePBB%Jz2G8V^Jog^qoGZc3By_Y_IGlE#LlI{VTw(D%#pGGsb{@~c
> zJ>Yqs)-C_Lk`+OofvfYZ89es{98QPHGj-
> 4ESMvG;*|1gYbM}2YWHyxldxvfxt^O#7
> z4m92deF3kd^}T>Tv)+)B6lSl@zQ?@n^&7h5IOcHf!gXq+*c}=#1`1)5Xrn)b+$@
> _g
> z5qg?uw%=vWgH}3d+Jv4bjd}20l=D9gIb4ge@|0401ZnNx48JI&+u>9lqSKGNfR
> 6Nh
> z74k4`S*YBw+pPOoSlyGu>bBBW-O^)5-
> LJB)HpO}9I_S+4O6@a9QwL6MwE1hM&jSC<
> zEyZcRL%({uo^z$;|Fw-
> 3+X&A{)_mUBiEhf6IJ2t0<$D5okBkY{TjiMdJn<a~@v@j0
> zFXXB@YcYO%pufbi%ECWze+zig=#%twgE{uRX24yjpZ$e?^Krb=$F%$e-
> 1TvKA%54g
> ze$=(oc|O0Zkr&SICgOh%e!m91(fGX)@PEW_BX}7s6h|qu-
> oZ8>^@@FZ4azl+r%Wd5
> z^6YJk&Yn+R&}PE64-P)gXZ9)6hmlSbX{&mo+EOqs-
> FhDu3f*>HsE({r>i801q(|C~
> zpy|h4OF75u<6~k6$Js{02M6_fJxJe$bO`;#asi~*GT%&-&JLu>TL`?3;42dSh<>oz
> z?-
> jv%tNmlxR?G>#xJZ}sDHG4sD}+Z4!+HlBedopi7OnZ3qFaY>y;nPDodLWNaQQ1
> +
> zhT-=;Q~x3H$Jl7}DcS!`+%VX?#2Y(|CyN(-
> eS~@JFwOU8!U{*i{*$ozBVlh4wqPXe
> z*Muz`3HuMimXCz}oUj{4!nz1sY=d>Z==%|1jU!-
> NeLo=HH8wo7<9mQnu8n}RPjvk|
> zB4wj5T06#w1SuB%a>UTfo#;c(dzODq{k%a6`huYG=yx5?1dR1<9Oo!QI;8vW$k
> T+#
> z-
> G=e)85}I34=4GDd3YB2X(H)%A!F>L9LvzIu>AeV3vzzm1m6pO0Ow~5hxz2E5je
> er
> zgOga!nz!j=TRa>F4%c0Gp)G6&`TrQ>qS35_b2!_>wlsrQBi03^ozQS`JZatoSX0$~
> zK1tr^^JYF@pLA=o4lf5>e&?GyzmmMyclg<7>u)1&<u^>&_k7+<cGZ8Cc)iUg>
> _y+<
> zr=PAb0gUuWe+8Z!LEi(~X+m1n2pb4lWxrXr+&zi10&U{m$}*_$5b7Dilhd;I-&S-
> i
> zR>%9Ej^`si@Zdq+!+0Wl|GdR;nMA_=i$(mKa-
> !aT(uF_jW_xF%oRLm)+t(_VJSf9U
> zAw$ZIwv}acJ;3^(vdckv_-
> sRTncpNQWKSkPrmRWdjkGq{mdocRIVt;`85gi{Xuo4o
> zPex#<9-sWc!4Y*iNYk_#q{F&sGq$0gzekI0Zy-
> &0586guIs=%9*L>UJ#e^>8waH?Y
> z1YINzTY2Amz>~xlpPcxpPd>U+r$O595*{~fI|h)JwJkm&y_73m4*ZHHUk2*8X
> #I)#
> zo3{8Q2lD)Thv07lu5L5taO$)cYv{Bk18eSTjJaR8h0?DfL-23e!k1CLG5UU;XXa&4
> zu7F8nhG9GZdY|vd!~?7hx=fykdjK&1*5SIv8(T4+f**2BvA(i%Z9}-di-
> PrgNMr0U
> z-CoR3&jQANG25y4OFLjz`ulhm=6pceTJ{8e!}hd37L73o-
> J#ylXSVvh%y0M+)T3{M
> zMw6^|N+$1=|9yl-s-4tDOUBKFjRl@E47-
> Q0IKUjkunmO8qpS_qKv)uB5yN<1k(|AT
> z@D!A{=|weQlB)R*FE_?D`N_B@SYHl!Bj6T48KTK|8)29e$^wl;aQVj_^*51*cN
> kX|
> z&-
> jV~Yq}Ub*x*YE%Rv3N4&z=!*rmX;!R8a@2Hw|(@d^mL0(dsqRfJ^&@3vvQ*
> @Wc+
> z&j!mP>?+`u4&!|ZFv*8GQyPZJa<Kjq!fzUe9fl6N0Aqh=V2oMv;CM^{oavf#gO
> 4|P
> zL4VqC{zR4m?ToE0!)2B~Uq8;IRrcYdBgRw|;q%l^(t8l}c>gcl8*TkhUjL4@JM*kD
> zMIV8E)|;lqb9{Xq1sycka3gfEO!EzFRP=d(F&WMie+8{@T|7=$m@bA03)96v5*
> DV5
> zZxR-
> !i$@6?MHgQqJWLl~2JC!Ye7?R5aO$EghILeSwb%cUaL@VrxQ}#fdPjYH0kCj=
> z>>w;mA9oQJrjJ3w!t`+mVPX3C7-
> 3=hh@i%K`uG50VfuJ4V58|{BjAnD$EJJl9nvGY
> z`MLUy#Q!SB?IC0Cr4E$E2J6=mpSqg;s4oe+OI^{&H1u^1^3Etp?$fvkKOHG%r;
> QhN
> z&qs<9>OAodYt6pNC|3^LMEI1amC0`Eu|-El-
> mR?L^krCvup3z~_+ffyMxsvN2N=se
> z_jl;AjYfvn;=9hw`}8yDI@XTT-
> 9}mBf0gt%MHge88P7RhY;8;_P{b<mJ7FjMhXKsP
> zpCGo!`5s#Zv-
> bmjP?qZseL7f@93>{a3V(^bFczq{DI>`}6Eshw%mA)4xL%47vkTDn
> zD#YK3cREe;ktXx(ys~XB@)OqHDS#cmExFi|o7a(+P2Lj$=l%9k+8k%*{e*4CdS*
> ~g
> zT6Oy2$5IaBPQLeNJeI;XJ%Kj8i8j3@OLgsM2TSsi_XgW!lOg%~6tTT<zCH$Qr#va
> f
> z>kt#Xo1|jztp<<eiLxM{e*+HF9`G1$w~ix^^@Q84w+M$`h1;$FB;2%He$XS`7u
> fbN
> zyY*|cPRobYV^13kcaN}Niq!h^Ncdn8!~Ox=Y54~~WnDI3fO(yON%6zJ3&;9C;*
> Ega
> z=X-&8@Np;u^4Nv6OMWT0aXfq&XK+ZrcM-
> mHbU(uGBeBf(Fq(Ui?h>!)G%b0{;y&M2
> zz?p6~<<n)}?}i@OdD;QIpy<+l$3xin;5^`fKCmqJD*j@YTZnSn-w`i}9&YyoD4T)t
> zN|-EU-
> REVwI=~yHVZ0`!<%WoO3+5G$Y|3OM@gPr&@AbrsZ1)jnr}s6$r3uiF1x-V^
> zhvjGLZv>p{fBU+ZzEI=cT6gbwExvE87H{?AB;c|hJud?DRs_;DB0p54=DVakz5Q0
> +
> z8C#w@I4Aca$^&?QC2Nl5%UV3k@M&j*c18d^!>2~ObRM(J`fkViobs`Bpn&i+
> (TV+$
> zPQryq$!5A2X^Un$aP&4|ZtYTxeLeCf$Duvk&)CR4J<;(x`8+7{dk(7kVzTCIk8sYh
> z{6Er~20EY*dzQ8;5x$y`(O2*n_RCs|#m^MrNLOI*0rt&;CF$iR>gD7=eZ$xF_iy@
> |
> z<3)U9?t)|6<}E$u6<W$iuq7&FPrrXR>|<M;sMC;E@ytF+j}{X=o1`i7*D-!K$y2;)
> z+6007{=3tPUC~`B!F$9Mu}LXbvccCTWr_qmCHhcGZ>$z?^;0?WccYEm=i~Z`>m
> ^Gb
> zf%S;<qaMb}D3d|Rfik&+GC|ut$S*^itIf1sC$`yOhhwz(X3%-
> af|+!uqU`;EbwQ6p
> z2cRbhAY<%%rmdIjsw7d;i?qe3g7TYL-
> oz2GgT(z1_H*z@DElL`Y^<oOhJ5_M4*}i>
> zxJBbI+P#J}zz^%&_Y=jb$!b3NCNAsqf~IQHCXQ9!k8;|@YF^rBN?qXGV2MSu4
> Eiz^
> zb=^d|mhO+!;uYB1V!-;OVOh&#wD_ffvAzsE6F-
> ;bO#bQXvrR%s?r`3TUjW=*j4P|2
> z%UBkD(hJ=zair9@M~jj&?Da8U`sLHUo&UAJekJQejLL*z?G^Nu0miXz!MK+G
> 8e!%d
> zl5pxN$K8#D+w3dm)orTs``kulc#Q>n9e+LGjlu@QI9SZG(lCr`yh7sHU|j3XBh7T1
> zZT`9$GZ}@SS)>WL#p8UW(;T9%9eqNZZ^32J?#pCd=9nh@j}AlDdVeE*7_xkm
> Fvu_j
> z8HR*wj-
> AE~gZ7o}&?ig3gt$1{>Mxh%9AVRr*l78Y7YUnYm)&I03yPO=hiP4;)3S8T
> z;`Qe`pK87u>6}BppTT@#^$q*PYU2mMqrJCmip2IJEw8^g-
> h#bDTA)GN)Sc}%9$j+Y
> zkgc`T{R40$8{HE~L(hGL+2@Sk0NxleTz`+5mK)-R>i-2`R{dodcXu;w={tBb^j(aQ
> z1M#+4<)XKC%j!>kPnzk+APXV5=WNE!hwRnx{?_S@vTnQ6vcy2zO`<a`5BDn0
> 2hjOB
> zqEl$N9}ydbANOB~4KB>Dq1VI)mFwpnQohFcY@3uHj5T!<^(jHb=&`pwco{D2
> Zx3SM
> zcW{rC-}MmoBKolJiFia1dtKa<4`9D00{b1k$FQdj-=}}7u_qrKi~Koir++N=f3Y{`
> z!oI8vwj%-bKgQky<31Te_|k-
> Yy9S;67&sqYrVhkGkJ=?Mo4DL}w)B_%c`4+Qj`0nf
> zF&5?OB*Y^Jfx|M~kLYQZT4SLXlrzUk&))}2*4++S;Cu(_>zEUV_{vpc!1edR{pl!!
> zwMF;3GP$)Rs5rTvAWjH0ICdIkbpz?3j-
> 19wb;BX}_oUefTYW$lov@`F_WML@P)>VE
> zLq2`opcl_$)eXTW{oWZooc0p^{lSHzZX5Q*B=B?RwPJvM>LSl*uPVg8B=VJQJ
> Wn*A
> z{eb(gQU}H(9m2j|g5E~N%gUwJ-
> a@IBI>Ws+>@n^SeF^(b*xUEtEIQAPBQ4{+kNErG
> zzI8X#4@h#SL!QrI{y^QnHr%cF;pvTD%!86K55m_ur+~j`b>KLBg~(X!$8Pc-
> JNV1A
> zmpriX^i?r8b$6lv&neIm;Bfxrl^zXwAurt}zLI{mC@%1ey8F<td{%!YJH`6I8RBIK
> zb%U!y%`X-
> 4b;2RO;>Wt}KJ;U$h_35$h>~c?w^T$hucTCstdquy5;;Qa4t%IMDYH^7
> z*2ojiIu~)o*t#Cf1;p|6D^4^JI7xMw!wgz#VqK7UHzn5jb^L@nmm*58BA%L3rv
> a~2
> zTwE8_@005q!A~0Ubb4<nPQ`pqhwmyJ@{So+`d5ncGsscL`<CJyFrRzAqc}gob
> Gk#_
> zPyk*f@(wv<VE=Rq%4Td)oZN$FIqA6KJYkk=e@=0}Yn5}x4VOc`<AC40S#jdbo
> KX(v
> za{kN04LOH!y*-
> MPYp=t=717cTJ`462<PKlQ*b|4ZhuAvyhE(0Z=`rV2`Zw8%X}|Ey
> zzAnf0HNZG#gK|QPaA4j5{yv`RppS_0A;gqy!upVgUp_&%e<;5U<q#upZHpHtu
> `gJ{
> zah!qqkNG*Q$DD@<7s(>tqQQLPVXZt|Z-
> Sc7dE1V|a=BI=E5yk|rk~>3sC9oR8}x_x
> zUO!x30&lG2G;ruk@R_hvNbCIi#7X)*dVOZz-
> ;hUnSh(*Z&3c&r9iGXTMOTJj69R0g
> z?pKEEri@tT&<3qL%HsV}gLi#A+RvZa`in8Jk8#F`ZSKW<LBF)mte5@J1OJ9Lk$h-
> ~
> zQ>85tbz?A&Xp7QPMIHU=q5g_a9qKRgV$mc$J`>i9b<S%x`t6uYhUk-
> ~D~zT<+`!a<
> zA)27^I%tpw`qF7vi#qNfy$fDgz8%j)JPDCK5xSbDiaI~|PScQ&`*8k6+0^~vbXvB
> 4
> z&IoNcbns%R?r?rMFHMly9=6A9uZ(oxIK;|runfX57lN;CmJFwZ#~|WpAt^ey5j
> v7#
> z>cAG3Lz~DC;RX-
> zZ)`Fk?t{QPuV0(bpSw?^e?LP1GKTYsBDLy$f*20@tp*LA0b_iq
> z>-
> O}#gDXTG_eC`D6$P6ti7D{~SdU2}HU3>^Tgo>P_hkAZ#yZ8M_;&#N7Gm{;G1l3
> G
> z{`j>R9}^=*#*CH5$6Wq(rTBeGj`<bVMsbL>r(-?va;li{`h>QW2NK0src2S+rEgLu
> zzAHt?ybPT0Mu@LmE5%(GjjI{4&j+Dzt3cyn#K|w+6gj2wB2nC<NcpRP*N*3h5
> KHZe
> zlJXBD9YFeZNr~}Aim&v<NcqRdh_4(0{C!+Y<+zw~5f#%f<e2xRsOzSK<}akEnD
> @qe
> z@~0y|eS(O8eaw{jYXMIeaqepY>lrWQdsyE@DgV7mp8RO!MH5$=690O{l=yg
> *IW$JX
> z+!ycenIz@6!(R1F0dATnza6si;Y#1+C{B;{xnGx3<F5c+k4TPx{UVRM-L?4GAxUzt
> zAx`vC_jje__y>{qK>Ffi=?P2S4@|xudCBps08dXwdct+?Yw_HZCgtBh=2~|&c$
> hwU
> z;jzD-
> 68V|q7Q5d)E%KeQg~v{UnRgOId{8)ZdoJ_jr~4;or<1SCq<p6DV|_@cuTP0j
> zcP@4l9$<c<l>hD`PyRc2jvkj9-
> xDk1(?ztqXOWb@EA!f89>BdKDSp>9ue;|uDgVV(
> zr@IlbEr2;P=DW*rZ%!?AzfT@-
> l=5qw%iQS~i{f`2pmmFs|4u}d`<=5Q{}Ah1Cgs1J
> zv-nsK^g%dM;@=(=`T9ETeXPIUH*A;(djG6s*bK|A{}kyEa6-
> VL4(oOu={~az@m>WE
> z^&CE#`^fG7Je=j#^_=*Jkw-nZbiD7BQ5W;dU{8LC{Jzt}FfU;H2|GIs%K+>}!Ul(7
> zy;x7~0n8fzTwgxIw8<-G$#_0<Oa;Z_T=Fl_FC5o|Tl|v`mVE+cU1-AyAFA2(p-j6?
> zT#jkRSoD|zZ1$b36E<QS;`Ov0+aeQM{31D5JZsF`+VhGtK_s*^W1VjC+8d?CZ$i
> 1|
> z$YI!F!0sX~)1Ea&Yw@KfZQVvfH&_qjIIzF@>1c;skrMC0T3a|$i{VF|H<yw|8E9D
> T
> z;@*rsK5`s3ig6JMb5{xI^(ql=eP15!;y%nez#hYuZt}(XGaa}W4W$$H^yH!R$US
> W0
> zvc3s8H%wo}eug0fz9oI#QqDV=7be0VsetYpXQz{}Kkjh%;d&FXF`Q9q-
> 7Gs!(nhi^
> z^z%#Mw|8OQVfjY*eu*y4H*2NgSEVPwHX@E9K(}DAsN;UYez`4WmS1r)y;g4
> 9&bfu~
> z;uiLg)_qV;ST!BKd>Q(w9Q{%O8S85YoJreH9^ynReF^%3@V|!iL_b%IHro9$OE
> +9-
> zBj<U}jX}<lD&|1k1=eYdpEA~_`*U2s+2$F2Y%q?8GwsbQhIPaX*n5QehG7|i{R
> J=$
> zwpziwp*b>#*7S!F$6<W4hh^f2%j^XFPlS1gVNHPjjxd{^mI2mHm`zW;fc=Uv$j
> 8#v
> z48UFi%u35hH^-
> ^@R*abKISklA;8^>ELweYZSgbh@TX9&(Xj^DAbbT}Gn4<Uh*dC<&
> znCAE}@%I34L=1EkS`XT3p)AKuI{aIUo<$3L8zX6joj0X_#x;}|eb4jiQ=v2cXGJUf
> zHyyB`Fy4Lm4bDi=#<<LPAChohN>7{T5Un)yA&2iiv@e%&{x-
> 4WWt0n5$xhD!t=oH(
> zT-
> %Pcp??!QzJs_rpE+LG{%4Tp`By$4fo}5N13mo=aQ3$@BgmZb?J~5BWmyN|zeT
> Lx
> zo_-ba2&24#b7NS3{1AO3e-
> YBybKTI0wKB`$^&jlNs2e22aha|F54_(GJdO>^o?`F!
> zy!9wz3muVMmu|*78ZxARH4Sp@f-
> FPmYx{bXG5hd!EX(iwEG;j*>^~}}*NHVS`)udm
> z($=%SUYtu}og>P@URiNt#JxNCe#~2FlW4*^46zZ(b~Y*iyTDil_V*s=IHtX3yY2S
> 2
> zJT<x43%w}A9>^bIL#(}U+C<u1%hp<Tg-
> B~q<R2fT&L?#2lq1Hnp2M>2{>kT%t+m$I
> zWyH09n0!aH)h64aK3OYT!^<Ex)EQpRJX7N4enX@94&p$vyJ?<NU(fuBZGbLFf
> U|FZ
> zk96Za%)fxqN3i_pbX9F-
> +~GHr3wW_;k`8HF_Vkr7dOx$#v+RmR>ow4VyeDA1Pe`x5
> zC|-
> r1>)Iry=ysZQnCCnj$86QtM+ZSm<iy2?rie}p_CpJXy%!6{xj@IW!Co8%wr3RB
> zvo=_0irVS=?43D1xKpltzlD3MBkWnBV!o$>v+RXZE9Ii=%M|1Nlq;}~pl$JU?T&
> N*
> zshCqfDpXoS2iNb_9-MTBb7~0X62-(8D_(}P8r?jLLR$hGw9lAZWqqyvKIb+k-
> qV1s
> z2+$tMVt_b=3B-_iKAZEV3pDW7;D^@O=AP*}oE;xT-
> IVV%#Df%EGWxttD61A@ex8Qd
> ziGqviSFi?iq^kK-
> @vhls;aIg8>GV{!Gaxc^6_=WS1h%pfzO*t;%_ogQJ)NAZWE$xs
> zu$|PWM&Zg8fFW+Us#iaEE4x|0tkIT;4YD71huFaV$BbyP!OQap$s)fAYr>3FkzX
> (k
> zS0?=6Sg{ZFboW7b9aUv{UI)(R3r9?;kWZFFz5)0hk*Kc^aZkJ~+1i5VUPW=ggX>
> *f
> z$8q)J+KRpSSnN^FK>k;-jvE^+T@U4-
> 9r>Hmyth8WzDtxSLHrH#qMHBmrU_GCy;>BP
> ziZQFa+BZ`oqOo^_bT;HWK2(~gbd~14eMf419O5%8oRMzjgVMZLkuG<RagPD
> L_s5C&
> zYsdU1B~6N4H9dX2+xPX@DbbDJOnFs|i5Y~9-
> _e>=u8Dg!1+g^Hzdr@*tqEgM?{u!$
> zQ1&3|U78-}-
> lcsjWsQi7nU3<)$GxuOwTbDgwgCRBP_8Q&vv5`PT&yX;8~NLniuDIB
> z%zwWBhA%S%GK{<&?TJl`f2#^-
> O$mccu~w`Ti$!bC>A{jqfvcboGtnoP>HQ%#T!Ma>
> zhCZPG^EUPsLrSFHck~m}g^1U69X5sba2ED_W+SfrG2-
> t1`hHk~9^;VVw}X%P?_v(4
> zk3l<0SgRgmH~nSe!ya>-
> q>1!Z7%L?_^WF|$&$2&5zDU@d&$=h#d>QJFe++FnDB}$E
> z#K%%XSX1@u>yu$Vn!!g)7#}=;h5eRz)=gX9!!oev;k@9ygTc$tduqdT<&d31``9
> +x
> z&aaZLbN;c=Mxn3CEO@a6hp$9=Sn%sF0AF+gxF-
> zGI!WuxHh9lQv}N;fTO`=75MZ=l
> z0`jur$htkZY^{x_OwvkNa9$fSEO=NOQZE2cx&Yi62DjQU)&~DVZGi3NJVc#1rk}
> Sn
> z`u>;jm#9yTun|LZz8OQe<}zz9em3;rBj}NYi~KCWe84+m#E-YT-
> $<d}Gku#0?=|n~
> zz`x3TMvVAztV6!i7AdYgWa$lKj8>f(KST2b&sc+B*2(p`Rqtgct^dHCv{|Reg#FyS
> z6Mm8T+=Y7*#sTqe!Lv2zV1J~Jwvq5}5)S@_>y4B|k?6MSiZyAxfV;&v&O#S+u
> 4BBw
> znnOmcqYA}QmbY~OEc%Rfe8;3k-
> V)8{CvC8kCf+s^MjA2Z^FubgcT7Bet}PU;_tEbN
> ztMkt$4*J#fVQ`+=gl)3Xdc%b2?_hvO^7ftytGD6(hY7RlTs2Cah<EFCRoKe?(S(%
> (
> zM%t9a0TXt!iO2rbWe*!^(bxT)ur}>B%Pld>Q9egZ82x(EW*u!N%%Y`^!YlVNiJx
> yP
> z_o4~QvB4e)qcwxHprh8=8~QWcyP&<YzY~yyab>l4qe<gp&?V2T_f8Ww888d4
> &V(hH
> z^^+e<SGi{AJ`c-
> QnfX144^J|m{|$HIcG=#WahiFLnRy|cZDRSGO!y&`k20UXZQ^u&
> zHkiYB0`WM0;AdfOo7h46Ke#<7k1>R{bCMp*Ae_9yrsz1&;hC^~=cN2w@yuA
> qXyb$L
> z7I&p6&NjY#NZDZx1>dEke^OhDJXvv0G~c<P9k6`oj}!&#KdIw5{KPW64}55s>_
> nVo
> z;BdR_?4KkC{u4f7AKtb1<DKi!B*nQ|7AFFD&y#bi<y-GeR)E`<!uj%3oGCvJK0-
> <a
> zVn`#`I_zJ|23dRA>|@5xPJ@q66h}uS&ksS~*c-
> ?R$iwd@!Vf;tg*jUNM9OM(AU5|G
> zDeKSJ|D~U>wn-
> fI_b$qZFFJd+BK9TV!k*8*H*p0P;#@!8A5UK*cBDV0b|U8ANtm7v
> z;@q`8{S4yQW_lLz{T*s&7t+v?Zod2K2OZX@B0a*-
> )%R7+SPy&!>h5WrS=QwYpPaUq
> z@3@?XANdLV!83}({Y!K2`a<m#?@L)d(O84_NLkO=+F5q3@op@2sZEwosMy
> Pt(5{0r
> z-c`Y#r-U{Q;yInqXb;Y0t~vxiTY4UQMT)d4fM@@ws_wrBV)1?>)~xAx-
> `0h7F83aK
> z&9k-#^!2)MZ~jyaT#i2R<Br(HKFU&CDt5?EKvvKd>ScO@-15V-
> v^83H!$L8zxi>05
> z8gimeiz3mASly&9tPLo;3$77{;sElnjzETd_x|i!$L@1qGURv``tlj%_$l;d0Q&MV
> z^z0KQ5;_#sak^L?ICG;qu<oD8*3~a%N%7$4cTyJ5_gFgAhV!+H=ZKP=Ibz==T-
> qo1
> z97|KuP9%#bwzoxLPP23g@k1B%gR<_GC%2Re>4Z?_)~eZ}q)|?3VcUoElZNwi
> n4j1p
> zV)b?1iFap-5|7|sH{P#B?4f54_TwR6m3=V>{ahdh+G23FVG-
> dtCkOugPTavu<782?
> zAN(cWn6yJX=Q-
> AR&U<X5lGqaZvKZ(o6a)E6(rc&Xq?SiPk86jGF)1x?%9CIF1o=~H
> zChtf=U!4Z;k0HMZaacdvCYB`bpe}K3Jhk@g4^w{%tCSrso*Ua#c&q?%%JNMZ
> 7a0G5
> zl@w^$pTd4TV>Ok~DG%%t)=NIVd)$RKNT`Fhr5t%>iqukG6?jQ-
> 4RveLvBGGPPk5S0
> zI6-*%)r*f6Iz)aMU|yulR;A~qJ4I_c_GjTwv~E<ATi%i<oybs<TAs$a>1)7qKqPeF
> zjKRaKzfp)etiS)uc<&hPO}Ftv-pEgnGNpq$%6jE9n~#-
> Om95wLaVEx>Z;GBcbp%gk
> z>&p|S0Ip1&3cmC<0N-
> 1CQE|q6k=Fws>krWDGVtJas2`d<pg+Mwp}_;%kM*F0HDE$V
> zI1ffU{dwN1De+i?n(an9`r>%Kjv-
> n2^T?yOB1Ny4@}f+Bgu2;hjp#pViL@gFeN~G7
> zpp7g=KS@nbb|-
> 7NCN^%TekX5vvRhJC?JZRjPvm7iv0YMD?=4W0^yinv^SL)iiKEz$
> zIeN2_(6S%<|1XJPF3xcuh3t>!E0dr*ldxC8x)j}xa@_YpU%!iSe-`tUB#d|o`@aIP
> zjRj6Ko-
> +mSpl$6g1&n1R3Fn@Ga|_bszYlue2$%x8Wf)JyDZ}_KHt`R8;WNrxyO){i
> zjKUOmBhuHI>0WPwTT-@mFEZ1OQCktWOLiBU=@#67iuRY8V^_tv6_8Z`-
> ;rS4UBy`D
> z9&~vW;`(^@#~{v+Gw9{2a0jr5($gk76H%V|dR_w7ZO)70%b^E;mvD<%k9#cg
> ^*qFq
> z1o~4Xd)(#dM<En9=d#dB8Q;>tTs}wIAV4<+n)?wy;dta2d;)UCrdtASEBR9}25C
> >)
> zyi-r~psyX+w?MpM0?q+V*n&DxcYO1vr+4(<<JhrfQ-
> VGo8y)Jy<(rar@Ep$}d=iOg
> zco<9D@|pM8@wIX*dHfm1Ncs@mbL{vkxs_u@GGWJ8;yWl9C-
> rQPZV!@md*Fb)ESo?c
> z3QH8!TX?K|6Y2*K0paM#z!;!i2tbD9f%RK;lO}YjwLqD4;xO7f6=UbCs6!vSz->4A
> z+VYvf(?`&4@<cr$PaklcfgkUZq#g6Y3&&0y`YauD-&DjwrXfaR^qIqr7*jrCH15Ln
> zF5TAX;{|p^f*g%DC5_r9w&w`i#Wv}71?^$m*rs;aI=xNchi&3mW_#GKn_-
> tiusLj7
> zq?p`N23(IarA5Hb90T8N&@sy75|hte(4VQ`aSL>47j)<um&3g!w$MF)y=(m&z`
> q1-
> z(c1)^UC<?-
> V}2$Xd%Do4Ezqa=Rjxd&&n8*2YozRSzC6chk1U(>J3RL+;=GQSw3Bm*
> zF~^fH#_CkuNBA)2w>8eLosYSe=e?i{3eFN?t-
> $qG`rbh&{g^;J<|0kB9(oDiUUG<m
> z#>2Qr3q5XL{;b+r0iP*=`M+!@?%zQikNyCBhabXkr~I3s<MI-
> DhX*?Dg^qij#+bkT
> z6T^S7))so*&GONAVGAsO%JK#1S7GiPpicnX1Ajp3pg%zWk^aCLn?EoBf1nQ
> MZ#WL$
> z#rIQ!^edZ(ztcg#QlNjjc1g93Q?d8_n3RRMB)%OnrGxmoZ_p=>ri~MInYp4QAs
> 4>o
> zY{NGwfNwBaJh|OJ9`hLDT2mY<&I-cUq#api`3J-Ef2KbF8~(v?e)5oikO_al?jJm#
> z4P81YkMIxJZp%j?f4ZN5IX!KR;U~aHD<Q8c`~>oJC>dvi;2+Repg%!BVfKy5JIE*f
> zgs0#$yeTKc4kfp21kYK}jhj#3bL^^B@GF4xl#<etZ2A(+pU-
> )>ZP*?Jp8MbP5t_cB
> zkI-
> cE5%4}z>r=|)mNebQB)9azN0@gZ9|2?G!ahRk{{=pR!NdQCkH9{puF0^QcK<-Y
> zKbQ>vAb+B!`v;TZAGl2aU~<-z+g<Pv-
> jb6~@VRpo|DY580eu6={V08dWcUcIi#kI6
> z;5`29z~JMbh4}_w1MI0G-yl`@4Q>L=?i-
> XKUG}s=qY2}m{=qU6M=mt{f$PllVXxs2
> zEHcxUKTv3<4S!&=yTDA}i~CE^aZ4`r1scPAfhN-
> z(BKR3eKarTY@VmEd;#X`d8RKw
> ze@(^wZutUwp3N7aPbaXy_m6x5@-
> u*a6v}UojlX~07fAkJ@dfSxFYM0>jPuXy1GN7G
> zA0UJ^i41#!GoL5Cm@nxIl%Ni4J`48+_#TYi7kCfpGVl_>987&ag!#4!b89pAN%X
> !_
> z+|8Ify_hRAY(Bsi_y8XG0Hd|#AI<%Zqs;wWk8tj%z2TZ95^EC9`~8YBZn2*^i9R^
> z
> z{cnJ`Ch*32U+2r5_jkHvw-@t1cwEo9`WwJ$Ca!JX-
> <j;y=Y72`nD>7LJWEdYd7t~n
> z*1XTUN6h>1O<dshi_ZHv*XO3cUn)eWODMX}On=$W`2})E+(JLw$ul<aC46cu;
> v}iK
> zJ4L64cPZ5bd>;vLp4WGo`K8D!1-
> vv_bdCXhsGMli%Zbm7av_!nj*9uTG?jF*{)Eqq
> zG1jU31z~X{#@=z3lJOPn$15G{aPEj>P2>Jx)5y6#g!Pesg;d*vy-
> WE<tp9<_cN93!
> zKiVsf1`$UJB93$nF{A^yG<?TO2*y#wstmMML+t5Ylz|)uLX3wXjr#!OCLF_R32Z
> HV
> zn*hF(LLWZEA&h7EIj(5YSq8YV=bGeZTu;Cc<M~!U%5qMEOt3zJ%)<9l!(vSKI2zl
> }
> z_|lwz((d4GQf>ProFiE#WsL{!DYM;=pxtbzgm!Yjn6acLtn1kxzJq)k@g6_M+i9=
> d
> z`bmap4Px!mcsJsN@GaBL*b#laE}Tad4fh;_k7dM*BE`O5oK0;{U`$cQUh~9`tkZ
> ZG
> z6m=y+E_$5~tj$r*Wly6FWySnP$d~@*HaxTZqmk;sW5DOR6`XBx-
> vAlXN2mTfRQhY!
> zuk9198g!ogzX{&kfq(c}V?L42;G7HIWyuJ6&ZLLbGqCF|jd5b29d!zvRng$zGJYjM
> zXVg7y_QO!D%7|yuFHQ)FR`tZ7(|<Aivr~gk?(O(9#K7`8+1a%l@Jq30&Tr@7T>!
> ;}
> zc!*a5kDAZVvFSK-
> fO%zZd=C+MY%}w`F5~?hfp22^kr%j@?Zmjka}T~rB|&Co864lB
> z1D+`Z_5)+HD(DhVHhoer)|H+xpZnXVOrINZTK#*d&9G|<eEw#mT~>@3d+C
> V(V!t1K
> z^~UY8Q)B;wU#ssmwhMZ|`dn-
> eWH%K19fc<KmFH%#NYck?2>bSLV9ok{&<$NDInyKY
> z-LvbZtQE*_GI0dPGTQYT<ImVgED2sKIXx!ct-
> xWMc}CERNps)pYK$YRE$k2DY(4A7
> zSxx9B-qk<Rg*9ZgSw|Q6z`A^Ya0%7|QTXoLQmGc7Mcx*$<?mzubr?s;-
> ?>!Enu|QF
> zW%YKrz@r~NQI9gagS5$~daYD@2)G$brJ`)$Ej<r6X9zd67<LJ`y`Xy;@T{{L{4VRz
> zd#q>|<BOJz?fnMb_u&vyg4ZFA%0g~Q6Y`06@E~JOap6*hc#Zw*5MB9Gaq-
> MWI`-)V
> z;!EkcxbEgzBne}p4}G*5ZO~A@Od$S+e7*yt>xUA3l<Pv`;Jd6H$05&9A=cO`ct?
> AA
> z9%}{GP{FUtV280c=nixUwDv(C8J}!bp(mjXiTU{6s4MqH>@yha(#+iN;kyI+c_Q
> Eq
> zD$%-
> 5YUu{9z+R%x!;zSyR^L)jd)G<>eRoL%{Tn5m8<Pg!Zk7h#xmVKnWkbzlS|P8w
> zp(A5jF-GQwl(DUl)!b0wSbn>3Zm4-
> I;vmc)+lp^!B0r`T=Q@xdgU?}TbE&I5cf~mc
> zZOMV2?pNnaMbrU#p;Yu^<nbL3#2Rk*V~z+F#<qs0VjSX~x=?dWYY6Mq5Z-
> AE-6A?e
> zd?&aR_o(^1*{`7}d3Pvk!R|ivYbZ+D&3Doym)89W&hP}6T|j=oq5SM)Z16~oE+;
> kF
> zl#|1AjB*Mf4LjWlef%rG^QOzrHog;<$XM6o8_%*B(B~txF@!d17}G(tv#UVL3S
> gXN
> zc%|AVv@_v4+4%@?pEBiP$Mw&XveF@w!yd`WeNR8$b1S(9_5%1@N5KzW
> EoJHYu1Zeq
> zd+Kwcy-gOc)F*k7?DRsH3SD^ru-
> veVD!%hPh;KcHu>Q86KkI>BY8VSAp|4i_f^Gb7
> z)PXkbqn)tg41YL>_v83oMd%vqv&!o4Uz>6=_UZXvj&O6Y>T70Ox*#Xo1MSO
> @@gmHt
> zS4g$o_grq~hubXmD%dRGHO-
> TpGl9c>Zu0UAKI?q(Eak|t{x^IdhcdB`bB;U2mGw6E
> zz~ABiiq+0Tb4Sk0oSUvR`SIiIX)(Tm$-bd3(_Zncsg;Io^fcauz}eG@9hU)*ve9xR
> zXJ7@|=a6bCCxQCxGPCM-
> U9JukUnM(H&j9x?SqIvc<2Q9Fm<RiY`Oo`hsrG&D!E&Ck
> z$=;$vo*icSE|lkZ>w@gs$3eHQmWo0s3!3_w67r+#3G9(|F5qKxf7dD-$^-
> xK_j<3A
> zijJ~u<b}(=9adJ%k(`YaG0yX)qQfjZR<urseG*rT;tTQq+b|j-$geR8_2)`O-$Ne#
> zm_D=*a%#B{jh}_l=*oufq@evdQc=*PvCouI+GkQ-
> 2>Y)WqQyGxw#%OdS>n6iW!X~E
> zw@q3-pe3Qd&?mk_kU4qO&ng1OZv&i1-
> #in=eNOA_A^VN*H$56wU+8klc?fo)X{J=m
> zy?E|j(&zsDhr-Evev7)3s4IBBK^C)VThe01NxTnLascB38+0x3%UaXKq!X`T-60gU
> zQv;9KuV_8!b)CSw3?(d!cU>PR4=13XEu`TTC&@ScYQ7gsznbmS#}m#}4V_O6^
> XIJd
> zJhT~Qwzll!Sicmqn})VzN=5UKce9z#v4q&@QU73DH)D#N`(2ly-N4-
> m+*!cWpgS1v
> zZo7~2U3@>ruJ;RV^-=G|RLLo2LjNw2iZYPLcCw!(%$-
> e;BlW+JG;B7V{*|9)k&nPb
> z0_ME#ZIB0bfIdIYZRq`L8~3wGcbO@_0mzSOo-
> IQ0*K|F#_VSyDeMH)2ervY^zDf^l
> zF#2SlWru$UyJ|h_<MW8&Q|h{c^G7_VPWcAGC*D^(p-
> qvTE~gQTg8uEd`p7!}v&3vi
> znb{7sZ#LVP0yueP8?7@)M*9*w=7BHDg85&@Gtaha&?Vs%NAIGX&kbTONQ
> 5m-=y(`=
> z+~f&*b~Fea+GVWiI{2L$`eEVx*xO|J$r9erPD5K<iIUSFuWcXd=OdyuRp%4ub
> <y^I
> z)ZL4^z(;E@&RCQn-
> 7^vM+9W+by{`s!lJ66MZ$Nv=KhNglyOR1hjp^%dL7vfWV}4*=
> z)_KLRqyL`3^)#;E;j*78?@vSAd`SK>*3Am`&LcXWM|__8(T}xJ2xIFQ`k*UOD)L+
> m
> zJ26Qr;<td9w+`zg*4sE%b|yU_pMh^Num%0@{jDg%{G6YGIc6KvZwSuU`Msb
> u?HRNU
> zWzt(Eykl*Ax1RlWsR<8km7GT&ko3O;Fa~hFe78|v#<;TZ(jStX&A@|?*4+jFhq
> #$0
> z4bOv;^XV4J`HlM}=i87E{I+g>o1ONc&TN|tyzv{*2duO?|5<71Vh-
> oSL$3;b{#yyW
> z;5ezMhx-
> D*6t!NY*>>xjP`YlKwu8E;>jcLk_Dgy&E_lX+;{rUmxexvd(pbN&8nUI<
> zSQ_PgDbK}lox(cpwp+x)*TA>Ad*dYM#mKwioTPtKoBA600OZ_fymQb8o#no
> B1l}d0
> ztW=!e>B2lrJjYh{2jBa!{Y?a{`}tjuMy#17oZ;sBg|Ps{Vz!Uaealwbc;+0yZ}nMY
> znm!WG^E?TCaz%-K3N8<Ig5NIy&0N%DtZi_n$r{gyx!j3&sZL?c`Q@(sE}XX-
> I5()<
> zCE9JyNy%d3YaGK;LRVhF-
> w<Cj&lnnGIJpDwgKmRe*dM(8OdfT(3v|+mhZrMcc3i(~
> z^NQ9jki*Z;4(`*i2GVp}=s^6(@fvl-
> qOHPygFfnaVC*G!oWwU6G|+BD{GkW_4bKDh
> zLzeG@rb=B4JNG_-Z-rTL0`*52>F~jI{U{uMCs;q%hB^_uf^R8f94Z|z<J^s{zjK2z
> zQkG{5{O@s6?M~!vNy0aQv7ggFN!h(6$+KJU=Shy;)XRR@85w7WI6hXvR*ZPh
> rqDb)
> ztT>ML)d-vmbF}v1Y*HWWL0_TL+K2T@p9AlOT_-yG*NTDTcOi|nO8=z7-
> F?ddn<VY-
> zpEQ4WU!iEF-
> G6(d7<gwhY{4XLZqF2LF23hDw{NO8xBoJ2?(r{abKjn+&3$JU(v#%f
> zd>2Wd3s5Izu;R1D$MD|qMDj^JgI<&z#9DPM?pOonw>iW~%0CikAcSzV?84gf
> 6UbSY
> zpE-}PujrR^Tv6XJuJZRsOHSBHcklN_YYh4e-
> ^u7~zdeu_xLD+2PS~%HU7U%fK3leO
> z@Q8A>e-
> &)<5v8>s@}Pa}hdlZrkA4O1r#vVJ$ly5SMtQLPmOS2utk}kW$c62B2Xgyo
> zGJ!v0tZz}L(WVHT8H)g44)`RIIP(;RGf&aG&s_&vkh6w0Gj$}?ECv|k{MfYFPr~*-
> zk*s#AV(r6+MOAL^Ms?sVIqihk*|xnG<zk?tx$DKgD@~o^nCJt})6ipW41ALr@
> J(J3
> zwXr<wCExup=Pu~7Pb9RZ^aC$6RqFg1#%&1pi+epu&ZHfmKn7f=<4pGezJW
> Gyqpapm
> zHtA!0%<hH%(+ipKyaC7f2Ur*TA$t)Czv)W&{;^W+2RM__2fRMu-
> 2j<Q0B*F6Mt>UK
> zp|jCoUy=s;+S#5B8ZnadEuQZHUI=)(pwS-Ll^?{Kpm%CSt8ihjW-a2co76{KLfn6r
> zytavfLG*L)O31Vgd5C9i#{O-8jXKbWb#dQiQs-vHaiR};cLZ`eHPzF3x~eL-XBA>v
> z(Z{yeDDa~)w{)lFh?A#f>HeUK`1dw(5^XL?%M>RO(<q6TMFP)N&BXO7^uU7{
> ?tbid
> z>@;~3i23)Ld|^N6{<MAKq(GeYdFXxG^YB&q40=H)VpEzp8N_=b6Cs<l{{uWcr
> @e@A
> zfjeXBY5n44G|T-
> =oa~Lo{UveIk62b(7wE)@656M<Ea{}+H%?xZPBP9#8KiBMPHN-v
> zy%fgrmq;gr7m1Qr%r*pZ_KodRagOa}?471<LAg}G9*|DDT)6vzkGc*r@0ZA%V
> tjWc
> ztqU|!XWA>$N&gJop8|dc&ZiOY4Zx7soC$acW$=xc7XUvkuiM*+F@0KA_a4yi
> oA=@!
> zDx~k(`+fcX^}XNI@0<3%fcx*{o93LB@7kM#GpbLBGjlQuIL{@!*-
> kN4On~mL`Yzf*
> z_+RmNOTPNS*B_>y_BN{n*LLN#Tq~&qe?^~Ap3SiTedhDON^cqHox!-
> ^8S#feZyVy`
> z-@tR9yzb#%dE?&A7)v*b$G1}-
> L>JBvOcN&;qra#RH!IQ(ODFoM56}zhD$Wbt|1oF)
> z=e0RE8||eY)d0r6Bm8~XJ-
> q*&&=sjYjBk_NKS|oO_cZGJOy01U^W<mBq>dkpyg5&u
> zz31Vll=>mqy~?JCH_5I!38wtgFCag{DZhMEetnSN?T}xwq;+yF@rbN-
> Qihh?J}({o
> zy`}-TPREcN`{of-ZklqBZhIo|Jrzya{O~S($AY%Vk8cv}!uJ9<;d@^9jxRj6665lz
> zvv)tt@pTHZpFfG(IZr8@_nuNFzUIYP+XZ|~v<X7KuUk{Z{egSbhtr(uN#@NGk8
> G#E
> zcrR?<F_c}4JlNp`8U7A@MIU9y=Md}%eWc^JV1Bz%47^_|2Fl@Uzh8>?QEyQJ
> QwM55
> zgZ;V|wy|fWI*=ly*ZfEq$8>F98#%G182r!<N$^)T!yYdbDJ`>{k8J-T@KJxR2YcrD
> zj^Xy3712_OHsS1DE53`-`nb}t_X_ZG^`)7)sh5g5pIx#z_bCPXbQjJ$!B#C34{gUm
> zJB*z>hsMF@m483ve?R2E(9~PX|C^@#5oh0j`qOm}U;1a^JO%yzUD{1^-
> oZNcJzU3e
> zy$^ZBqTZ4(s5{o!^GNCjj+LILg?{cr!#lzpFCnD)E+X4wukURoqV)st_eFKgYGbjj
> zjh2p`!r$uR{LlV8gV-w0%DerDDfE|fT#0QFSBqkQifCoOe-
> G(MrY}|VS7zXSCPm+K
> z$?q@6JQ9QFE7W}ILTDnMv(@}V*stOHq5fR`Jw)gbp0C3Dif@Wq#C|*d^FU)3
> V!qIc
> ze)#Oy{R?gTN8{)F6U07$lJRYVO1xjc0`gsn_xg3dz&m2yx?cAk6Hd1O2zYS+3p`l1
> zV7^Vh^rhLC)A0AEv@`0%680VnFn8StTZfU@+W2GPymY<)4DEDVf;h>!CIo*t
> a(%@a
> zj-9vQ|9LQ{P&VY3yq5o36p_y-
> !6)@&gl+(jW3dYKXiM9zd0)4ql4(cf`}MgF^RmEv
> zLmIT5b~=~-
> LKNK?M#Heh77fLqf%!0mIhW<J*OM@+zV<m<=ZDeiAHk1fh#wX6@o4;f
> z3f=tXVNsM7M#t{U;JYkCJPDjPAWs)xfG5&>8+<YDU~l)^2Sx4VaM({pZGuV1jy
> rx7
> z*f)P7oV25CgB_RkJ&V59Z8PSqkbLKd9^j-
> Wv~BOX7k&rqc@O<H_<b&+Z4W&pu#ReY
> z_<-=w!8@KfzlXmE2-`znu<u^X&x-O|AIj05_hQ}HgL!YNqbncrhWviyr@It)-
> $S@#
> z-
> YgKxU%5^QLbqs3OO^2_nsL^HF?>F|RD7ds>O<Q@m@oU~wGY4F0{$K+Pth
> m)H;aMK
> z;OnJx-
> v)M;{+=wxzvgkI?&yKPSOJ^YcbTVCLF}LhzG4XH0u|^f&w9{SybV3&Jn<gv
> z$bZ0xJqtc*8{USFa;|s}HiL7^+0E)ee~UV>RiwOzZ?)$99P~n{3*WLB5F)iDgu2pE
> z*A$#7u<Cg_RedA_G7PWl1Jv~b>iPh*SqJN4ovgbTH2XkP9-F$O7c>zY-
> 2X@Hby_rg
> z6=#Qn{hV-
> `J4WF>6MXlB9^U61aKxwX;5sRUzW5`2=MnTqk;lED7tUK8+ER(Xk4G8z
> zf@V6}O&QB*_gNcFwwY}wkCuGbn*3RE<@`l@#}UK9oY_6j<dyQ=0=ne&2-
> f#q)EUsm
> z--aCcIp)}xg=oQE-
> R$=e^Lk54If1#oBpYR?3=ZzY8SD6d=u|n*a+O1`tTy62@%>gm
> zSp2ZRmzq4WkFB=84V}Y#pRJqYuqOCyu;k}s5Th0;CpccpkPdJA;j@Dy`keJNV~-
> @f
> ze`c9=okIKU`t>^M<5|^T;@<bTI<VOheNuvN-
> w$05wHW%`B!sTd)C<ZR?_BRcOW!3-
> zpHs{_>~?iDJNDvdgOi@ZISMOI@gw*T0&gC-<GVf?H;CHx$m<1d#`-
> +?#sK3aY!}Cl
> zggU-
> $mUW@;CP`VjTuZ_S*@p4EziXRt9>P0+Wo@E%1@M|i;?5y1d?+2)|A=q~@N
> K@b
> zps2kCc+9(75wEG^kLlm>d0$EC2!hvB#q+U8u>fo9g;-
> lJ!rFQ<*4B)dMi}dFGj?w7
> z^SK$vVoagjth)<7+V`=x)m{`?`u^2k;VfW%Sl_}|bTfWz-
> =F^k`ox(2U=+qn6#4<W
> z#W=k^eqqJI8RxymR?j}jAozmFYD~mBw^3wWf;`X2{M_Kbi>!9!%P-<h1msb-
> KFJhL
> z?e4YfyCBow%4+9w+-I5PLg0V1clL>=VIRBx56WUMD&qxF8;5-
> AD($2m8^N9kV<T3~
> zUFR3=V7#N7aXQ3d1m2s`V>!0=uq~(fPT@o&uAgY*cR$+W+KoD&#NO52BI_j
> 1|B&Cu
> zrV3~9_EUM}_YLq{f_u~mesgqw)#p%lJKFkFQPhjFpO;^ph1dBF=aqa~vS%!jXF
> ?cf
> z72xS`gxL2s>Y!c=@Wby~{0(%dm*Q!W6~H%mdVemmx`6Yi5qQ|QHSxOI(RaX
> W`nhoa
> z061!@a3&)5$Nu=WS;p#*-RKWB2%Q3c2IkHV<a5j%y1g$?la-
> bp^jj02OU=JSRSx-Y
> z786fMJhK7YmM+9~F4(CN@!2D$o>8aG_v^oB)@$nVetZ+S)&m=JI8W4m8+
> m@jP58|K
> zf26T58p1pF7)$zhmMDvKe51xCgd2NIBgTuhPc{p_@)Nc?sKZ@|D@kJzUz#my
> 8(0V4
> z?bZ;Z^WPI)tVN1^?pHwP^!L1n=t9>lp10WOVeIW!Ulz3i{C%d3S)$gDJnAd=%>
> !c%
> zo?ZC6azkT`ZKpoQ81D?$h0zKf5w(Y~r+YX{)Lw7WVjMbwK0o&85O;W7^NJDs
> bQ}vj
> z6A4?o58s;KUam<y3UL-
> o;F)=WjZ@yx$BS9FVN3LLdAco;9b(@ylMmWG$N=YrW(}SF
> zaUBv_681=YFBe6bz?**_?(mtSu7g59XR&jJ$hru4o8?6P9R|w8+Rw7vqe$2zeS
> BN7
> zPqQDnPf30I3-oX^;;$k2?9-~s^Bh%E^QdcQVHX&ijTAD@1Hm4`x8Lj#-
> wOhtc$Gqa
> z?Ppb&<b4V}wtcLpxOjoDq;$c;Yf2aRe9L^U%;JVX!@9Muxvop<r;imgt7`73oVl
> UA
> zw7jZv&CJS*RoOGIuc$0qwQ}Z?>azMk{f3##D_2y{udlwdvVOsuhWZUfHPvex
> W`+Z<
> zC>QDH)iGWFBkGzYjNfIrjTP{`Y`;PLkUt6+-
> gVWhD`qaMZK$qU<Ey!Y9QhV3S>P#N
> zP`aqFFeh)O$KxwpoSQQe#Zz3gV8Q%F^?}-
> |>hiVo*H_LwA2NS|cln~3o^=g1iz?TE
> z@$)cD{zhSH1Uu)I3#$vHGc&!*mVxP|(=)T?&b@N_bW!MYRRz|%ynzZ=arM
> eI=!$y8
> z8}#25Pni#2@K$Y>v+iH8`2QOEGbSJZQ@LGVQ&G8={Q{F;Bo^Sm`NAa@iFy$b
> wW3N?
> zi*m6RkRnkiuEE_SD)gKNQ3)LJPs_~*R<*d(#I9Vk^2?QL1a6~g;TP)g<tqd8>jQU
> z
> z_5Y~|maS{3UDq%=p|IiU4XmxazVeQm`VAPcGjFb}uR-
> cY41n6odJss@^sZa6qO#sK
> zcdjcl^Uj*;3YUAjD{H#z(o0=S(CCIL*E}SJ`Fu67veqvQ`z>Fx#5Kc}x%`@?B}=E9
> z^uFY}a{6fP{D<rn*4$AWs3*U}9L}#?+fa>xfN^e;P9MptD6UyoUtW2E%uJK>8
> Q{nD
> zIoLn1y6NJJlCbkL9p-};)^$lB^OB0`SK<D-jcR4tx|Qg(;)aR^_4PC7n@M!q!kYR!
> z0u8QkIgFxJVbZ3p_SV!i6j#>YSzTVawj@xtx{`Wvp$t^E@|rsWD=QZV)>N#nJg
> >@?
> z#U<y%yv66iJ|Am_o_bcVt|{01o1BdT15-
> s{X)SBX5}BUWFqC&xu4!;x>ar!+;nS(s
> zS;AKtSZ$P;=hE+DxQ^oLyDLABUbw!PUQ?jHb!!@`@2DJA*cZs7yrC@NJ*(T`&
> 4Y-3
> z<M;VwIlq!UToh=iq7;Wy%Nwd!S2tAa7IY~r>3MYxqn?*#4TO1fU27q>niZ~0P
> U`a)
> z+;C0dg3=;S$>P!?-?EZrh0B&e^spdSfva6v>$9@5uEYgfqKiDdiJz}kmaZE91!scQ
> z5SfwkR<Eh3UbFH%uD=*%)BuY5z*w{n)-
> aq;J?A`VQGHEAO?l1gQHw0CX{cVYVd1(p
> z<uqdFmGxDwtX|ttuWS5ynM(tAoZm$T!IIk5RNPrtiX}DWtIjJ~R9{_FU)`|5hBIT
> H
> zj)^g`U_~__eU+;#F+Wu36wF*S*vwtNrg{xjC9oQOJpyHzfTz4}U3EQjN8^(kFq
> %LJ
> zzag-C-T4i3j}9(gS6f?C-%wexB(P@XI&0|Lr>oB~C^!*9CTkj~L)HVjIy2LpxOCUI
> zzG2x4W294qskWFlbR%NJGwg411E{V12WX?yu@^qC(>T7fuFRg5Gdp)qUcSd
> $IDf&y
> z)^8Ik#FOUz1@r#0dH<7n|Jb}oKWN}jH1C&~_bbhNzlrBD)7P2zo6LKadEa2(?=
> $b)
> z%=^EY_dVu)zj;4m-hXZ0|6tzx%=`Q1ebBr|J!J41Z{9C5@0Xi*k9jXK@3)!vRpxzz
> zdB4}ZKVsgWG4KC;+>fdf*Q{x%tX~tLUAeKk0{+j{u332^bK&a1%C*pld*J_MU
> Fq6H
> z)yUIt*;)E6FUy*4GKY|fW2nz`*QQNyuq-
> NB>w&K8)pT+7nsuvJyI=vJP4mP!F>b60
> z;^Z;Ud|nA#gzv33)a%AGGqZ59$9H8eeKkX$rc;%&glBDeb@dR|h^$Mp^48C|
> Br9j=
> zf7$CV$;xKRcnH4>04iph|I4Xxx%hY$|A(Bsn>cQUTSLR1m6c<)$!P5mA2x26)m
> N{C
> zH@Dgx8#>qUutulFCPAo_+{lKFPNjHVIeeP6;>JKdEZ0ic@-
> ?g0)ZDekwP^K*+NvSw
> zeAv8(O4q_b^=huIEaV$uE6<0TlYU7}jjQ;M!0OdQ=vXDg9hx6#2*7q?u?7#Vre
> 0jL
> z=1y443OE_{u-nihv3$*1%XkSc>P&*{MFBJJf@@N-
> K^SwcNyOlUGfHJSY@UF#@4{5;
> zt6Z!5xogD@HLKTQRw%5guU}W&U?mqqi$KzKePu;;K<NK>;WIsJR?<47riC@
> @)>H_O
> zE+W_b$~DzGoMdZj)~qErt~;<QfZ*_Y70B1DYtYNBZ3xix!ey!_uTWGoU8b94a
> ZTa%
> zMJDGZ3rnm=YeF0nOgUZqhHChmt{W=r*J2_R#g*mj^cm`g>YCO1^oQkdp;=
> <VnhLhs
> zXbqTz$68t8%FNE64tLH<&4M>!A}*|6T{$FwYn~8XP}JAlQH?py=&a9Y6m*xV`
> p)IK
> zIqPR-`zr4Uz_rkqOY^JmtX^AFZw$82PYWXfa@8jrW0B-CAjS-
> 13?6Hqu~u5H(v?N!
> z6{QQS*H>0}8uV~SDFD|8)>q%L?hee&<?wzCGDZ<-
> (a=iiyoqIKlCvY}^V`VU&ABks
> zjyA((tZ1fVDToSD8>UKK7cp{;_Lym`0&NBV1^l_@qSLnC{K8@Yi-
> wV0SY5xi!H|$?
> z9*44^dNpe*M&v=O)~#;Pmjc66{XMW~SlPM_Ogt{REbB6uq?xWOp?bqbpcj
> U+z{cw$
> z$<3MW8ojXV^02ZfVR;}%32O#gT)DomDo|fivm9OvWNvbS>gUaK<xCfD#Ok
> P5V9QV*
> zGG}ATS6o%Sq5*uJ&(uGw0!*TU&!>u(X$B{zB3epe(*^K2tVC9cFQiGM7P2^;`;
> SM9
> zRrWj<U15r@&s2GwR)@HqOPx0qDop7iR!+k<bhOge=F#-
> uZP0*Ik+mMnp|A<tSBZGv
> z8r=yVeL}ZsbXd_58XcB5f~QgZgc0Mwl9k!y%0PX2)d+<1)Q(ygR?4srhMBaK+a
> @g=
> zL!VnQESrM@!(z7)g0vAA8l4aK(0bMIn-
> FL<RvK4hEM^ToXRQw)o?ztAHm*R#2)DrJ
> zTwQS1@YLTib2<DQgd{2}VDLZR9AN}GSiZ2PcEgD9mk^)i#HMP;KJ^5zx&Jq-
> Q&x1e
> zuDNkc!5!Tb9?TcPSF7v4eC58sEv`S?wP1I~M>m~w#Qb*f*1K>2&v$E={qPU#_
> GDf1
> zdcqCP2Y!;<_P6;DKmY8k&5awrdHG#;J9~cn#)Rz)#n#IT4qY$ye!S$Rs$EOI^S8b
> 8
> z3X0_If8Oog`lqRR*FJXk?mz!V`^xPt(=UJG(~n;Byp(rWN7X|w<p=JaeCzW`)k`1
> 0
> z{9A8sC^>V{o-2dNh5J&j-_;d6=F*GX>e{cIa!c8x;IF{o&+zik|NkpSI74i~K_mY1
> za7ab}IT7(6<(GH8zv9V=>gfUp39Mi3#mTaY#54jX3OOi5+!PTfA`ZPYJK8ZO8fSH
> P
> zh_Pzi%msB%9;zb}KEAcoU;gB$cmG9f)$57I9;tBR!n;5Q9n=s6om9|?1f8hJ=x8y
> <
> zptHb6XS^eAko0P!g;23!qvE*>S1)M2NP2iCtK)I8X)fStQCQ#c8P_ork2omK7Y@
> X?
> zka&U#$b@*cxZJ=aj}|?=Q>4?g@K|o^D0t&cye^ZTigXZHRv5iFz{sD<en4I_Zuj
> B3
> zl#JoB_yham5U#9$f=61!bD4PL&(E|;&uRzGo9k`zn|N6!US=2`&cy3@njDf`c)l7}
> z8ZMlP5?A1IkRX08<tEvMJM%Bam5GZq9oCkTLntn!nNPR}*Oj=e@*+YwTu3u
> t#kCq2
> z&Y2A5tC24b<>Ne{*okYFEnjo^b^6RJ#KrPoHuGJ$-w-
> ie|4gKp<I2ay`lsQpMs6A6
> zZw}G{TvwU-myeQvr<E^b(;3fNRNfGOUZl6-
> %EM*R7ZI)@`fOJTuGwZj>4)bpvhq#(
> z!H8l0NcXF_@LrHkpXI~zS6TUH`K^&DBlx=u`D`coWBKs>N349aycRVq|7(%A9T
> (ee
> zwU1*^gZ`?3X}GpPkNmhmUf?ETaZxu{A|;nDD{5NacrZ;Y8%O;YPd)fhX4+$&P
> Y()7
> zRvZxtQF-}SefjFS^YF)~##8YzJmbV*pEO=X8bxE~=@lX4FD-
> 9nigz4+=M|Ooq0h1r
> z;|HgrXdH`{Xv0PS`oLS6>N^gr*2t*nF=Jz5$Hn1OFXm7E*NgrSYGqN~rUfI6vEl+
> d
> z-
> +>S*Q_7MiB?%YpRV{29@rsas0@t%)c=3Q;gNr!AMsE)AT)6O0r<aI3>1{Rb)ncS
> I
> zT=?$P2)qe^k)Hl@;~QSW?dJdVoBjw&1;U*u+y!oYzg`r$-
> HC2@fdH5(WCDPE!gLgT
> z<-
> R}^B#MFpcVePDvA|uB=q^ASC4hxOKqN(w(~Bko6?jC_OQIOdfDB6mgak2=t&
> >bl
> zOf0~Ei3K3aC){w2!awQ*Yy6Fl9}y7|9UUDL6B8E~H(|nrgoK3T<mA-
> URF}&&ZQ3-f
> zBWBE)k)55LmzSs0FK~*2G*K`UT=3t_0+CjLb5LlDEyD&KJtHlx;Ig!WnP~-c(h3Ur
> zZ%#ql%!0Jb3PxtwprdEZm{D-$jDp-
> 51y{`|DB!=V3TEUM%(${(WQGkodIrv3Mv2ro
> zk(ww{Q~56uGj*znN*$SDgN~jN7neFAE;TVOH90OdmH(1c;}TQjCZvwcut7)9N
> JvOc
> zN=QvkNKHvdP36Co)P&^JgrwAw88+zX8M+tZj26yV;dJs}EdER|{;IKaWQGkod
> Pa1#
> zb8NITHrg2%?R4^AoHIJs89mlHGQ$QPJtHQ@85`pq7vmfs<8<=hcxTKwXH2Yf
> WQGko
> zdWJbt&%eP|bNtia;8?GNoxceeZ69vBUEs6J#N&Lf;cBqqAxrQg9(_2{<J`0!7eA
> 6n
> zdY9mtCWV)s9^|UqEPK5uP7|f$C7bkINUON+veipGm^~ejZlsEf(**sBali{9jhlY
> q
> zCQjoDngGs2^Kp&lU;P5`ED)v*BrO-NJn)f%i*>RMlW@^acA-
> MzRU!Q%E>9TVM8Ie#
> zL%>mO^z3$=ZKWSYdMfA<?<S<5$7Q$U#KZgF|4-
> Om>WGHEKy!s3*J%B95^&YTqn>2q
> z!uxl6zoKjPzF>C}58s~E=@C!G^$`%*|8~4X%ro(*pS=DahKFq3Z+-
> %dY0v@o1N|bL
> zzt(jCH(fUqa34ct;J~NU>#Rj`3Sqc-LpSQ<ivG^!?<kL!DJ#pRJIkf_R!U7}(#sXn
> zwlYbp5F4@GTqZV^i3iKXs$y+rhPXXLT)#xydY6`YjW*{REp36eXtj1prIzRSX0Oz4
> zzeDr53PF><{}sA7NhaO-
> Lv;B^(mAHsP8HW^;~h;GZ#Uw9_`PJ_jnwe}=X;IkD)au|
> zCSExFuO{50r(J*^_2rBH&=m0`uAFC$YpM6jEIW-+!UO-
> mA8ZRh0(V6PHV#JnX+rn`
> zuMIvQd@-2SUe!_CvA#p=xUXYt#}ggFj^{gG?0Bi8tK*f9-
> *o)GBh>M3#|Ir}I>esn
> zJ<dJJdt7@m_hjwK+oSGTyr*c-O?&)%s`k|GS-
> (fybKjn=d!E<>!dqdpaZ{gL{9Ms<
> kcnBIcPuq3huHdfccfGjlrCnXSUfK1VUBBOj-1C0_AJBKq+5i9m
>
> literal 0
> HcmV?d00001
>
> diff --git a/Drivers/ASpeed/License.txt b/Drivers/ASpeed/License.txt new
> file mode 100644 index 000000000000..3dc49d3aff4f
> --- /dev/null
> +++ b/Drivers/ASpeed/License.txt
> @@ -0,0 +1,25 @@
> +Copyright (c) 2020, ASPEED Technology Inc. All rights reserved.
> +
> +Redistribution and use in source and binary forms, with or without
> +modification, are permitted provided that the following conditions are
> +met:
> +
> +1. Redistributions of source code must retain the above copyright
> + notice, this list of conditions and the following disclaimer.
> +2. Redistributions in binary form must reproduce the above copyright
> + notice, this list of conditions and the following disclaimer in
> + the documentation and/or other materials provided with the
> + distribution.
> +
> +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
> CONTRIBUTORS "AS
> +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
> LIMITED
> +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
> +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
> COPYRIGHT
> +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
> INCIDENTAL,
> +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
> NOT
> +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
> USE,
> +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
> ON ANY
> +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
> +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> THE USE
> +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
> DAMAGE.
> --
> 2.17.1
>
>
>
>
>
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
[-- Attachment #2: Type: text/html, Size: 52832 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
[not found] ` <1648BEB9C1C66CDA.13688@groups.io>
@ 2020-11-24 12:13 ` Samer El-Haj-Mahmoud
2020-11-24 12:21 ` Ard Biesheuvel
0 siblings, 1 reply; 7+ messages in thread
From: Samer El-Haj-Mahmoud @ 2020-11-24 12:13 UTC (permalink / raw)
To: devel@edk2.groups.io, Samer El-Haj-Mahmoud, Nhi Pham OS
Cc: Open Source Submission, Ray Ni, Leif Lindholm, Michael D Kinney,
Ard Biesheuvel, KuoHsiang Chou, Samer El-Haj-Mahmoud
[-- Attachment #1: Type: text/plain, Size: 40113 bytes --]
One comment is that while the driver name suggest GOP, the comments in GopDxe.inf are all about UGA. The comments need to be updated
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Samer El-Haj-Mahmoud via groups.io
Sent: Wednesday, November 18, 2020 6:43 PM
To: Nhi Pham OS <nhi@os.amperecomputing.com>; devel@edk2.groups.io
Cc: Open Source Submission <patches@amperecomputing.com>; Ray Ni <ray.ni@intel.com>; Leif Lindholm <leif@nuviainc.com>; Michael D Kinney <michael.d.kinney@intel.com>; Ard Biesheuvel <Ard.Biesheuvel@arm.com>; KuoHsiang Chou <kuohsiang_chou@aspeedtech.com>; Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com>
Subject: Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
Thanks!
Ack-by: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com<mailto:Samer.El-Haj-Mahmoud@arm.com>>
From: Nhi Pham OS <nhi@os.amperecomputing.com<mailto:nhi@os.amperecomputing.com>>
Sent: Wednesday, November 18, 2020 6:39 PM
To: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com<mailto:Samer.El-Haj-Mahmoud@arm.com>>; devel@edk2.groups.io<mailto:devel@edk2.groups.io>
Cc: Open Source Submission <patches@amperecomputing.com<mailto:patches@amperecomputing.com>>; Ray Ni <ray.ni@intel.com<mailto:ray.ni@intel.com>>; Leif Lindholm <leif@nuviainc.com<mailto:leif@nuviainc.com>>; Michael D Kinney <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Ard Biesheuvel <Ard.Biesheuvel@arm.com<mailto:Ard.Biesheuvel@arm.com>>; KuoHsiang Chou <kuohsiang_chou@aspeedtech.com<mailto:kuohsiang_chou@aspeedtech.com>>
Subject: Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
Yes, that's correct, Samer. This driver is going to edk2-non-osi under Drivers/ directory.
Thank you,
Nhi
________________________________
From: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com<mailto:Samer.El-Haj-Mahmoud@arm.com>>
Sent: Thursday, November 19, 2020 1:08 AM
To: devel@edk2.groups.io<mailto:devel@edk2.groups.io> <devel@edk2.groups.io<mailto:devel@edk2.groups.io>>; Nhi Pham OS <nhi@os.amperecomputing.com<mailto:nhi@os.amperecomputing.com>>
Cc: Open Source Submission <patches@amperecomputing.com<mailto:patches@amperecomputing.com>>; Ray Ni <ray.ni@intel.com<mailto:ray.ni@intel.com>>; Leif Lindholm <leif@nuviainc.com<mailto:leif@nuviainc.com>>; Michael D Kinney <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Ard Biesheuvel <Ard.Biesheuvel@arm.com<mailto:Ard.Biesheuvel@arm.com>>; KuoHsiang Chou <kuohsiang_chou@aspeedtech.com<mailto:kuohsiang_chou@aspeedtech.com>>; Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com<mailto:samer.el-haj-mahmoud@arm.com>>
Subject: RE: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
Nhi,
Thanks for the contribution! I assume this is going to edk2-non-osi, correct?
--Samer
> -----Original Message-----
> From: devel@edk2.groups.io<mailto:devel@edk2.groups.io> <devel@edk2.groups.io<mailto:devel@edk2.groups.io>> On Behalf Of Nhi
> Pham via groups.io
> Sent: Tuesday, November 17, 2020 9:00 PM
> To: devel@edk2.groups.io<mailto:devel@edk2.groups.io>
> Cc: patches@amperecomputing.com<mailto:patches@amperecomputing.com>; Nhi Pham
> <nhi@os.amperecomputing.com<mailto:nhi@os.amperecomputing.com>>; Ray Ni <ray.ni@intel.com<mailto:ray.ni@intel.com>>; Leif Lindholm
> <leif@nuviainc.com<mailto:leif@nuviainc.com>>; Michael D Kinney <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Ard
> Biesheuvel <Ard.Biesheuvel@arm.com<mailto:Ard.Biesheuvel@arm.com>>; KuoHsiang Chou
> <kuohsiang_chou@aspeedtech.com<mailto:kuohsiang_chou@aspeedtech.com>>
> Subject: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500
> GOP driver
>
> This is the AArch64 binary provided by ASpeed for AST2500 Gop driver
> version 1.10.00.
>
> Cc: Ray Ni <ray.ni@intel.com<mailto:ray.ni@intel.com>>
> Cc: Leif Lindholm <leif@nuviainc.com<mailto:leif@nuviainc.com>>
> Cc: Michael D Kinney <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>
> Cc: Ard Biesheuvel <ard.biesheuvel@arm.com<mailto:ard.biesheuvel@arm.com>>
>
> Signed-off-by: KuoHsiang Chou <kuohsiang_chou@aspeedtech.com<mailto:kuohsiang_chou@aspeedtech.com>>
> Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com<mailto:nhi@os.amperecomputing.com>>
> ---
> Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf | 33
> ++++++++++++++++++++
> Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi | Bin 0 ->
> 42880 bytes
> Drivers/ASpeed/License.txt | 25 +++++++++++++++
> 3 files changed, 58 insertions(+)
>
> diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> new file mode 100644
> index 000000000000..e30e5a160f70
> --- /dev/null
> +++ b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> @@ -0,0 +1,33 @@
> +## @file
> +# Component description file for ASPEED Graphics module # # ASPEED
> +Graphics Controller Driver.This driver is a sample implementation # of
> +the UGA Draw Protocol for the ASPEED Graphics family of PCI video
> controllers.
> +# This driver is only usable in the EFI pre-boot environment. This
> +sample is # intended to show how the UGA Draw Protocol is able to
> +function. The UGA I/O # Protocol is not implemented in this sample. A
> +fully compliant EFI UGA driver # requires both the UGA Draw and the
> +UGA I/O Protocol. Please refer to Microsoft's # documentation on UGA
> +for details on how to write a UGA driver that is able # to function both in
> the EFI pre-boot environment and from the OS runtime.
> +#
> +# Copyright (c) 2006 - 2010, Intel Corporation. All rights
> +reserved.<BR> # Copyright (c) 2020, ASPEED Technology Inc. All rights
> +reserved.<BR> # # This program and the accompanying materials # are
> +licensed and made available under the terms and conditions of the BSD
> +License # which accompanies this distribution. The full text of the
> +license may be found at #
> +http://opensource.org/licenses/bsd-license.php
> +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> +BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND,
> EITHER EXPRESS OR IMPLIED.
> +#
> +##
> +
> +[Defines]
> + INF_VERSION = 0x00010005
> + BASE_NAME = GopDxe
> + FILE_GUID = 7F81D838-F91D-4C44-8552-8FB912122FDD
> + MODULE_TYPE = UEFI_DRIVER
> + VERSION_STRING = 1.1
> +
> +[Binaries.AArch64]
> + PE32|AArch64/uefi_2500_800.efi|*
> diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> b/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> new file mode 100644
> index
> 0000000000000000000000000000000000000000..4b36e189b3a15abe2c160b948
> a1e221d4b0fd8e8
> GIT binary patch
> literal 42880
> zcmdtL3w%`7wLiYkIg<w@gdrp$glHxKHB3cf2qCdT&P;fz2<arKRcmJQfJBfy2ns^
> w
> zB%#$Bt3>ey-
> e!WL5`Mi}3dQtAfY$1@wIx{F+xFJU1GS}BMO27b^8bF%BRLsDtG)OC
> z`TRb=k>fdg?X}lld+oK?UVH6*POiUM{L4S>UoJUZuxNo06&=bj08bx?D@2Tph
> ew47
> zjyJM2q*cPqp9^<h;Xm!UVZ4~|%nPKQ7l4lj4m}H=kdci0{?QQrMc5S$mFpW=7
> H!ts
> zY29t~TtfJ-
> s0cI!0Ha*g$A|AWG@%O7bwz#U>Y8$cSBq!f?LXjo?dgBzd9Ya=Jyk4r
> zpNkO#A1R{aDIvC<!u|W=%z?l~5zcg>4uq71j%|R4l!+bZV$^|C#p-U9Ywc1>-
> yA$*
> zlxJD(go3V6J3rni?LMVQ9hwk1>CtLufe@>XM2Hg7=>d&w(9(`8S-
> {N?DIzB{IfCT|
> z0y`Z}Wr;e_`?P2!u3r?q`7!8@PZHZiswj5JA}3Kk^MmD9S`s-zyx47}gQ$<`#{W{B
> zy-
> H$71n^vcR<aI_*Sa%8N^K|+ZJ305&I~%G%Z1)9@^c&bVLcy<Ge59+ya_O9b;4
> {#
> z>rNCOd>8^fw)^9ap517((RNdIR(mOfIjEDgdQq31=gcskt+d5+&+iPLe~)s(KPk0
> 6
> zsaki_AC%hfBTXL3*FKZ>Yhkn}gweLr7H#Rb2JJ&A*Y%%Dt>+@Gd*|<z+NW%
> ^Z%a1%
> zeV<8NgRIv=)}LB+nX<Oh7VY$I(w^AS0X$1S!8euKcGS`IhEhvCX-X6cR-
> UCd)Sd50
> zB0&hPTh}8+KKk)3((cE`L^vtGE}41;y_`tBlsY0GPzRn)qAp4uy?vs!@j-{PA2NxM
> zHD4F>L{-il2&Jh59-
> ;XnlGOnjcSY8^`xU7*h<xhwEa}XFo@RA}Uv2hLCr`zA_BIOW
> z<-O{Lv}m>Nl=8@S*1Hq+IJQDhS{zQwy$_cL8q|Ni9k+PEmpU-0$mST3j-
> D=;cb`Tb
> zLe;v-
> H`_9>O4)sGsu<{*DF)6ca>r@P2spt>VxOz({%&pTb07L;G4P2L;bgs=BgFvQ
> z8JejMZ19TKKJekW*8%xX?&wE3tF6?tM6@p<>C6HDSaqOBNpw4|*4x}&UM
> 5<}D{&GM
> zjeN>P&j)V`<Zb282K=LmXAZFL#ztf8vF_exsnu`N_$dC&0oN;vQ^HvN6g1l%A}
> 3E4
> z`z1;14m~ZkK9L}{si1@Bd_V8cN%_L1`CQ_~`cRGNwD1l<M?<r~E6PM+T!ob6j!I
> K+
> zyM&mn=K)qWNo@1a6X-vYuo?HVd1#j;_8kI`lz-X-;>@&X)B(1mXQRVu^-
> FT3*v2-q
> zO(o-
> ?3&1UiGGK4So;jc@YJL#B`$10~EA}z}V(`u~r*XH&Y65hAZkWzn>7Zp_en_29
> z==g7z`<dblTn78{6Q%YQq$$hvyB*GG@L1L>TKyTKb?TiCXGNLRdi*YjbHz@!U
> +Wf9
> z!JE_2M)k+K&CJ)p8+po}VDQu(##3?_PgdIEsb{~z6M66-
> M1Q$4{$5gQpGLYLawlIE
> zUg#J2YF`JvE|*%%nndf7I)^g?{B)W9-
> 5{O$!DR5Y*R1~|jFBL0K^OQ8Tn?H)RcaqZ
> z9t?H@X;Me2vlWqs-
> W~!y>T85#j7!Ql0=PNQ7mRCn0&FS!R@Xhq`j{;CQHS6B3wT05
> zAB+@rhcG6ouVrzDZd*D_9q^-
> `X&9Tms5h|2;p_u_>Hv9>rWrcoLYm|DV~kUd*VE-*
> zjKxBXMU2@ak}+l#NuT#PPHAIkb7*J0lGyJ*?$GBW%MNh-)9&=#Zs=PT_}5-
> A`b~`x
> zIj8y@PCx1oAfK}EV=kkuqMf3RS^%A-
> d_O_|YB6UH++xbM2lh&XUCq#LJ!9E}QXx)+
> z(0=uMiZlHx*y-
> ;pS=qop1zgH)R!AIWTPvW)k<T0QXkX!QQrF7Mhx_sqw1@h%W1`qL
> z9p%JsgWpfad-
> kePBB%Jz2G8V^Jog^qoGZc3By_Y_IGlE#LlI{VTw(D%#pGGsb{@~c
> zJ>Yqs)-C_Lk`+OofvfYZ89es{98QPHGj-
> 4ESMvG;*|1gYbM}2YWHyxldxvfxt^O#7
> z4m92deF3kd^}T>Tv)+)B6lSl@zQ?@n^&7h5IOcHf!gXq+*c}=#1`1)5Xrn)b+$@
> _g
> z5qg?uw%=vWgH}3d+Jv4bjd}20l=D9gIb4ge@|0401ZnNx48JI&+u>9lqSKGNfR
> 6Nh
> z74k4`S*YBw+pPOoSlyGu>bBBW-O^)5-
> LJB)HpO}9I_S+4O6@a9QwL6MwE1hM&jSC<
> zEyZcRL%({uo^z$;|Fw-
> 3+X&A{)_mUBiEhf6IJ2t0<$D5okBkY{TjiMdJn<a~@v@j0
> zFXXB@YcYO%pufbi%ECWze+zig=#%twgE{uRX24yjpZ$e?^Krb=$F%$e-
> 1TvKA%54g
> ze$=(oc|O0Zkr&SICgOh%e!m91(fGX)@PEW_BX}7s6h|qu-
> oZ8>^@@FZ4azl+r%Wd5
> z^6YJk&Yn+R&}PE64-P)gXZ9)6hmlSbX{&mo+EOqs-
> FhDu3f*>HsE({r>i801q(|C~
> zpy|h4OF75u<6~k6$Js{02M6_fJxJe$bO`;#asi~*GT%&-&JLu>TL`?3;42dSh<>oz
> z?-
> jv%tNmlxR?G>#xJZ}sDHG4sD}+Z4!+HlBedopi7OnZ3qFaY>y;nPDodLWNaQQ1
> +
> zhT-=;Q~x3H$Jl7}DcS!`+%VX?#2Y(|CyN(-
> eS~@JFwOU8!U{*i{*$ozBVlh4wqPXe
> z*Muz`3HuMimXCz}oUj{4!nz1sY=d>Z==%|1jU!-
> NeLo=HH8wo7<9mQnu8n}RPjvk|
> zB4wj5T06#w1SuB%a>UTfo#;c(dzODq{k%a6`huYG=yx5?1dR1<9Oo!QI;8vW$k
> T+#
> z-
> G=e)85}I34=4GDd3YB2X(H)%A!F>L9LvzIu>AeV3vzzm1m6pO0Ow~5hxz2E5je
> er
> zgOga!nz!j=TRa>F4%c0Gp)G6&`TrQ>qS35_b2!_>wlsrQBi03^ozQS`JZatoSX0$~
> zK1tr^^JYF@pLA=o4lf5>e&?GyzmmMyclg<7>u)1&<u^>&_k7+<cGZ8Cc)iUg>
> _y+<
> zr=PAb0gUuWe+8Z!LEi(~X+m1n2pb4lWxrXr+&zi10&U{m$}*_$5b7Dilhd;I-&S-
> i
> zR>%9Ej^`si@Zdq+!+0Wl|GdR;nMA_=i$(mKa-
> !aT(uF_jW_xF%oRLm)+t(_VJSf9U
> zAw$ZIwv}acJ;3^(vdckv_-
> sRTncpNQWKSkPrmRWdjkGq{mdocRIVt;`85gi{Xuo4o
> zPex#<9-sWc!4Y*iNYk_#q{F&sGq$0gzekI0Zy-
> &0586guIs=%9*L>UJ#e^>8waH?Y
> z1YINzTY2Amz>~xlpPcxpPd>U+r$O595*{~fI|h)JwJkm&y_73m4*ZHHUk2*8X
> #I)#
> zo3{8Q2lD)Thv07lu5L5taO$)cYv{Bk18eSTjJaR8h0?DfL-23e!k1CLG5UU;XXa&4
> zu7F8nhG9GZdY|vd!~?7hx=fykdjK&1*5SIv8(T4+f**2BvA(i%Z9}-di-
> PrgNMr0U
> z-CoR3&jQANG25y4OFLjz`ulhm=6pceTJ{8e!}hd37L73o-
> J#ylXSVvh%y0M+)T3{M
> zMw6^|N+$1=|9yl-s-4tDOUBKFjRl@E47-
> Q0IKUjkunmO8qpS_qKv)uB5yN<1k(|AT
> z@D!A{=|weQlB)R*FE_?D`N_B@SYHl!Bj6T48KTK|8)29e$^wl;aQVj_^*51*cN
> kX|
> z&-
> jV~Yq}Ub*x*YE%Rv3N4&z=!*rmX;!R8a@2Hw|(@d^mL0(dsqRfJ^&@3vvQ*
> @Wc+
> z&j!mP>?+`u4&!|ZFv*8GQyPZJa<Kjq!fzUe9fl6N0Aqh=V2oMv;CM^{oavf#gO
> 4|P
> zL4VqC{zR4m?ToE0!)2B~Uq8;IRrcYdBgRw|;q%l^(t8l}c>gcl8*TkhUjL4@JM*kD
> zMIV8E)|;lqb9{Xq1sycka3gfEO!EzFRP=d(F&WMie+8{@T|7=$m@bA03)96v5*
> DV5
> zZxR-
> !i$@6?MHgQqJWLl~2JC!Ye7?R5aO$EghILeSwb%cUaL@VrxQ}#fdPjYH0kCj=
> z>>w;mA9oQJrjJ3w!t`+mVPX3C7-
> 3=hh@i%K`uG50VfuJ4V58|{BjAnD$EJJl9nvGY
> z`MLUy#Q!SB?IC0Cr4E$E2J6=mpSqg;s4oe+OI^{&H1u^1^3Etp?$fvkKOHG%r;
> QhN
> z&qs<9>OAodYt6pNC|3^LMEI1amC0`Eu|-El-
> mR?L^krCvup3z~_+ffyMxsvN2N=se
> z_jl;AjYfvn;=9hw`}8yDI@XTT-
> 9}mBf0gt%MHge88P7RhY;8;_P{b<mJ7FjMhXKsP
> zpCGo!`5s#Zv-
> bmjP?qZseL7f@93>{a3V(^bFczq{DI>`}6Eshw%mA)4xL%47vkTDn
> zD#YK3cREe;ktXx(ys~XB@)OqHDS#cmExFi|o7a(+P2Lj$=l%9k+8k%*{e*4CdS*
> ~g
> zT6Oy2$5IaBPQLeNJeI;XJ%Kj8i8j3@OLgsM2TSsi_XgW!lOg%~6tTT<zCH$Qr#va
> f
> z>kt#Xo1|jztp<<eiLxM{e*+HF9`G1$w~ix^^@Q84w+M$`h1;$FB;2%He$XS`7u
> fbN
> zyY*|cPRobYV^13kcaN}Niq!h^Ncdn8!~Ox=Y54~~WnDI3fO(yON%6zJ3&;9C;*
> Ega
> z=X-&8@Np;u^4Nv6OMWT0aXfq&XK+ZrcM-
> mHbU(uGBeBf(Fq(Ui?h>!)G%b0{;y&M2
> zz?p6~<<n)}?}i@OdD;QIpy<+l$3xin;5^`fKCmqJD*j@YTZnSn-w`i}9&YyoD4T)t
> zN|-EU-
> REVwI=~yHVZ0`!<%WoO3+5G$Y|3OM@gPr&@AbrsZ1)jnr}s6$r3uiF1x-V^
> zhvjGLZv>p{fBU+ZzEI=cT6gbwExvE87H{?AB;c|hJud?DRs_;DB0p54=DVakz5Q0
> +
> z8C#w@I4Aca$^&?QC2Nl5%UV3k@M&j*c18d^!>2~ObRM(J`fkViobs`Bpn&i+
> (TV+$
> zPQryq$!5A2X^Un$aP&4|ZtYTxeLeCf$Duvk&)CR4J<;(x`8+7{dk(7kVzTCIk8sYh
> z{6Er~20EY*dzQ8;5x$y`(O2*n_RCs|#m^MrNLOI*0rt&;CF$iR>gD7=eZ$xF_iy@
> |
> z<3)U9?t)|6<}E$u6<W$iuq7&FPrrXR>|<M;sMC;E@ytF+j}{X=o1`i7*D-!K$y2;)
> z+6007{=3tPUC~`B!F$9Mu}LXbvccCTWr_qmCHhcGZ>$z?^;0?WccYEm=i~Z`>m
> ^Gb
> zf%S;<qaMb}D3d|Rfik&+GC|ut$S*^itIf1sC$`yOhhwz(X3%-
> af|+!uqU`;EbwQ6p
> z2cRbhAY<%%rmdIjsw7d;i?qe3g7TYL-
> oz2GgT(z1_H*z@DElL`Y^<oOhJ5_M4*}i>
> zxJBbI+P#J}zz^%&_Y=jb$!b3NCNAsqf~IQHCXQ9!k8;|@YF^rBN?qXGV2MSu4
> Eiz^
> zb=^d|mhO+!;uYB1V!-;OVOh&#wD_ffvAzsE6F-
> ;bO#bQXvrR%s?r`3TUjW=*j4P|2
> z%UBkD(hJ=zair9@M~jj&?Da8U`sLHUo&UAJekJQejLL*z?G^Nu0miXz!MK+G
> 8e!%d
> zl5pxN$K8#D+w3dm)orTs``kulc#Q>n9e+LGjlu@QI9SZG(lCr`yh7sHU|j3XBh7T1
> zZT`9$GZ}@SS)>WL#p8UW(;T9%9eqNZZ^32J?#pCd=9nh@j}AlDdVeE*7_xkm
> Fvu_j
> z8HR*wj-
> AE~gZ7o}&?ig3gt$1{>Mxh%9AVRr*l78Y7YUnYm)&I03yPO=hiP4;)3S8T
> z;`Qe`pK87u>6}BppTT@#^$q*PYU2mMqrJCmip2IJEw8^g-
> h#bDTA)GN)Sc}%9$j+Y
> zkgc`T{R40$8{HE~L(hGL+2@Sk0NxleTz`+5mK)-R>i-2`R{dodcXu;w={tBb^j(aQ
> z1M#+4<)XKC%j!>kPnzk+APXV5=WNE!hwRnx{?_S@vTnQ6vcy2zO`<a`5BDn0
> 2hjOB
> zqEl$N9}ydbANOB~4KB>Dq1VI)mFwpnQohFcY@3uHj5T!<^(jHb=&`pwco{D2
> Zx3SM
> zcW{rC-}MmoBKolJiFia1dtKa<4`9D00{b1k$FQdj-=}}7u_qrKi~Koir++N=f3Y{`
> z!oI8vwj%-bKgQky<31Te_|k-
> Yy9S;67&sqYrVhkGkJ=?Mo4DL}w)B_%c`4+Qj`0nf
> zF&5?OB*Y^Jfx|M~kLYQZT4SLXlrzUk&))}2*4++S;Cu(_>zEUV_{vpc!1edR{pl!!
> zwMF;3GP$)Rs5rTvAWjH0ICdIkbpz?3j-
> 19wb;BX}_oUefTYW$lov@`F_WML@P)>VE
> zLq2`opcl_$)eXTW{oWZooc0p^{lSHzZX5Q*B=B?RwPJvM>LSl*uPVg8B=VJQJ
> Wn*A
> z{eb(gQU}H(9m2j|g5E~N%gUwJ-
> a@IBI>Ws+>@n^SeF^(b*xUEtEIQAPBQ4{+kNErG
> zzI8X#4@h#SL!QrI{y^QnHr%cF;pvTD%!86K55m_ur+~j`b>KLBg~(X!$8Pc-
> JNV1A
> zmpriX^i?r8b$6lv&neIm;Bfxrl^zXwAurt}zLI{mC@%1ey8F<td{%!YJH`6I8RBIK
> zb%U!y%`X-
> 4b;2RO;>Wt}KJ;U$h_35$h>~c?w^T$hucTCstdquy5;;Qa4t%IMDYH^7
> z*2ojiIu~)o*t#Cf1;p|6D^4^JI7xMw!wgz#VqK7UHzn5jb^L@nmm*58BA%L3rv
> a~2
> zTwE8_@005q!A~0Ubb4<nPQ`pqhwmyJ@{So+`d5ncGsscL`<CJyFrRzAqc}gob
> Gk#_
> zPyk*f@(wv<VE=Rq%4Td)oZN$FIqA6KJYkk=e@=0}Yn5}x4VOc`<AC40S#jdbo
> KX(v
> za{kN04LOH!y*-
> MPYp=t=717cTJ`462<PKlQ*b|4ZhuAvyhE(0Z=`rV2`Zw8%X}|Ey
> zzAnf0HNZG#gK|QPaA4j5{yv`RppS_0A;gqy!upVgUp_&%e<;5U<q#upZHpHtu
> `gJ{
> zah!qqkNG*Q$DD@<7s(>tqQQLPVXZt|Z-
> Sc7dE1V|a=BI=E5yk|rk~>3sC9oR8}x_x
> zUO!x30&lG2G;ruk@R_hvNbCIi#7X)*dVOZz-
> ;hUnSh(*Z&3c&r9iGXTMOTJj69R0g
> z?pKEEri@tT&<3qL%HsV}gLi#A+RvZa`in8Jk8#F`ZSKW<LBF)mte5@J1OJ9Lk$h-
> ~
> zQ>85tbz?A&Xp7QPMIHU=q5g_a9qKRgV$mc$J`>i9b<S%x`t6uYhUk-
> ~D~zT<+`!a<
> zA)27^I%tpw`qF7vi#qNfy$fDgz8%j)JPDCK5xSbDiaI~|PScQ&`*8k6+0^~vbXvB
> 4
> z&IoNcbns%R?r?rMFHMly9=6A9uZ(oxIK;|runfX57lN;CmJFwZ#~|WpAt^ey5j
> v7#
> z>cAG3Lz~DC;RX-
> zZ)`Fk?t{QPuV0(bpSw?^e?LP1GKTYsBDLy$f*20@tp*LA0b_iq
> z>-
> O}#gDXTG_eC`D6$P6ti7D{~SdU2}HU3>^Tgo>P_hkAZ#yZ8M_;&#N7Gm{;G1l3
> G
> z{`j>R9}^=*#*CH5$6Wq(rTBeGj`<bVMsbL>r(-?va;li{`h>QW2NK0src2S+rEgLu
> zzAHt?ybPT0Mu@LmE5%(GjjI{4&j+Dzt3cyn#K|w+6gj2wB2nC<NcpRP*N*3h5
> KHZe
> zlJXBD9YFeZNr~}Aim&v<NcqRdh_4(0{C!+Y<+zw~5f#%f<e2xRsOzSK<}akEnD
> @qe
> z@~0y|eS(O8eaw{jYXMIeaqepY>lrWQdsyE@DgV7mp8RO!MH5$=690O{l=yg
> *IW$JX
> z+!ycenIz@6!(R1F0dATnza6si;Y#1+C{B;{xnGx3<F5c+k4TPx{UVRM-L?4GAxUzt
> zAx`vC_jje__y>{qK>Ffi=?P2S4@|xudCBps08dXwdct+?Yw_HZCgtBh=2~|&c$
> hwU
> z;jzD-
> 68V|q7Q5d)E%KeQg~v{UnRgOId{8)ZdoJ_jr~4;or<1SCq<p6DV|_@cuTP0j
> zcP@4l9$<c<l>hD`PyRc2jvkj9-
> xDk1(?ztqXOWb@EA!f89>BdKDSp>9ue;|uDgVV(
> zr@IlbEr2;P=DW*rZ%!?AzfT@-
> l=5qw%iQS~i{f`2pmmFs|4u}d`<=5Q{}Ah1Cgs1J
> zv-nsK^g%dM;@=(=`T9ETeXPIUH*A;(djG6s*bK|A{}kyEa6-
> VL4(oOu={~az@m>WE
> z^&CE#`^fG7Je=j#^_=*Jkw-nZbiD7BQ5W;dU{8LC{Jzt}FfU;H2|GIs%K+>}!Ul(7
> zy;x7~0n8fzTwgxIw8<-G$#_0<Oa;Z_T=Fl_FC5o|Tl|v`mVE+cU1-AyAFA2(p-j6?
> zT#jkRSoD|zZ1$b36E<QS;`Ov0+aeQM{31D5JZsF`+VhGtK_s*^W1VjC+8d?CZ$i
> 1|
> z$YI!F!0sX~)1Ea&Yw@KfZQVvfH&_qjIIzF@>1c;skrMC0T3a|$i{VF|H<yw|8E9D
> T
> z;@*rsK5`s3ig6JMb5{xI^(ql=eP15!;y%nez#hYuZt}(XGaa}W4W$$H^yH!R$US
> W0
> zvc3s8H%wo}eug0fz9oI#QqDV=7be0VsetYpXQz{}Kkjh%;d&FXF`Q9q-
> 7Gs!(nhi^
> z^z%#Mw|8OQVfjY*eu*y4H*2NgSEVPwHX@E9K(}DAsN;UYez`4WmS1r)y;g4
> 9&bfu~
> z;uiLg)_qV;ST!BKd>Q(w9Q{%O8S85YoJreH9^ynReF^%3@V|!iL_b%IHro9$OE
> +9-
> zBj<U}jX}<lD&|1k1=eYdpEA~_`*U2s+2$F2Y%q?8GwsbQhIPaX*n5QehG7|i{R
> J=$
> zwpziwp*b>#*7S!F$6<W4hh^f2%j^XFPlS1gVNHPjjxd{^mI2mHm`zW;fc=Uv$j
> 8#v
> z48UFi%u35hH^-
> ^@R*abKISklA;8^>ELweYZSgbh@TX9&(Xj^DAbbT}Gn4<Uh*dC<&
> znCAE}@%I34L=1EkS`XT3p)AKuI{aIUo<$3L8zX6joj0X_#x;}|eb4jiQ=v2cXGJUf
> zHyyB`Fy4Lm4bDi=#<<LPAChohN>7{T5Un)yA&2iiv@e%&{x-
> 4WWt0n5$xhD!t=oH(
> zT-
> %Pcp??!QzJs_rpE+LG{%4Tp`By$4fo}5N13mo=aQ3$@BgmZb?J~5BWmyN|zeT
> Lx
> zo_-ba2&24#b7NS3{1AO3e-
> YBybKTI0wKB`$^&jlNs2e22aha|F54_(GJdO>^o?`F!
> zy!9wz3muVMmu|*78ZxARH4Sp@f-
> FPmYx{bXG5hd!EX(iwEG;j*>^~}}*NHVS`)udm
> z($=%SUYtu}og>P@URiNt#JxNCe#~2FlW4*^46zZ(b~Y*iyTDil_V*s=IHtX3yY2S
> 2
> zJT<x43%w}A9>^bIL#(}U+C<u1%hp<Tg-
> B~q<R2fT&L?#2lq1Hnp2M>2{>kT%t+m$I
> zWyH09n0!aH)h64aK3OYT!^<Ex)EQpRJX7N4enX@94&p$vyJ?<NU(fuBZGbLFf
> U|FZ
> zk96Za%)fxqN3i_pbX9F-
> +~GHr3wW_;k`8HF_Vkr7dOx$#v+RmR>ow4VyeDA1Pe`x5
> zC|-
> r1>)Iry=ysZQnCCnj$86QtM+ZSm<iy2?rie}p_CpJXy%!6{xj@IW!Co8%wr3RB
> zvo=_0irVS=?43D1xKpltzlD3MBkWnBV!o$>v+RXZE9Ii=%M|1Nlq;}~pl$JU?T&
> N*
> zshCqfDpXoS2iNb_9-MTBb7~0X62-(8D_(}P8r?jLLR$hGw9lAZWqqyvKIb+k-
> qV1s
> z2+$tMVt_b=3B-_iKAZEV3pDW7;D^@O=AP*}oE;xT-
> IVV%#Df%EGWxttD61A@ex8Qd
> ziGqviSFi?iq^kK-
> @vhls;aIg8>GV{!Gaxc^6_=WS1h%pfzO*t;%_ogQJ)NAZWE$xs
> zu$|PWM&Zg8fFW+Us#iaEE4x|0tkIT;4YD71huFaV$BbyP!OQap$s)fAYr>3FkzX
> (k
> zS0?=6Sg{ZFboW7b9aUv{UI)(R3r9?;kWZFFz5)0hk*Kc^aZkJ~+1i5VUPW=ggX>
> *f
> z$8q)J+KRpSSnN^FK>k;-jvE^+T@U4-
> 9r>Hmyth8WzDtxSLHrH#qMHBmrU_GCy;>BP
> ziZQFa+BZ`oqOo^_bT;HWK2(~gbd~14eMf419O5%8oRMzjgVMZLkuG<RagPD
> L_s5C&
> zYsdU1B~6N4H9dX2+xPX@DbbDJOnFs|i5Y~9-
> _e>=u8Dg!1+g^Hzdr@*tqEgM?{u!$
> zQ1&3|U78-}-
> lcsjWsQi7nU3<)$GxuOwTbDgwgCRBP_8Q&vv5`PT&yX;8~NLniuDIB
> z%zwWBhA%S%GK{<&?TJl`f2#^-
> O$mccu~w`Ti$!bC>A{jqfvcboGtnoP>HQ%#T!Ma>
> zhCZPG^EUPsLrSFHck~m}g^1U69X5sba2ED_W+SfrG2-
> t1`hHk~9^;VVw}X%P?_v(4
> zk3l<0SgRgmH~nSe!ya>-
> q>1!Z7%L?_^WF|$&$2&5zDU@d&$=h#d>QJFe++FnDB}$E
> z#K%%XSX1@u>yu$Vn!!g)7#}=;h5eRz)=gX9!!oev;k@9ygTc$tduqdT<&d31``9
> +x
> z&aaZLbN;c=Mxn3CEO@a6hp$9=Sn%sF0AF+gxF-
> zGI!WuxHh9lQv}N;fTO`=75MZ=l
> z0`jur$htkZY^{x_OwvkNa9$fSEO=NOQZE2cx&Yi62DjQU)&~DVZGi3NJVc#1rk}
> Sn
> z`u>;jm#9yTun|LZz8OQe<}zz9em3;rBj}NYi~KCWe84+m#E-YT-
> $<d}Gku#0?=|n~
> zz`x3TMvVAztV6!i7AdYgWa$lKj8>f(KST2b&sc+B*2(p`Rqtgct^dHCv{|Reg#FyS
> z6Mm8T+=Y7*#sTqe!Lv2zV1J~Jwvq5}5)S@_>y4B|k?6MSiZyAxfV;&v&O#S+u
> 4BBw
> znnOmcqYA}QmbY~OEc%Rfe8;3k-
> V)8{CvC8kCf+s^MjA2Z^FubgcT7Bet}PU;_tEbN
> ztMkt$4*J#fVQ`+=gl)3Xdc%b2?_hvO^7ftytGD6(hY7RlTs2Cah<EFCRoKe?(S(%
> (
> zM%t9a0TXt!iO2rbWe*!^(bxT)ur}>B%Pld>Q9egZ82x(EW*u!N%%Y`^!YlVNiJx
> yP
> z_o4~QvB4e)qcwxHprh8=8~QWcyP&<YzY~yyab>l4qe<gp&?V2T_f8Ww888d4
> &V(hH
> z^^+e<SGi{AJ`c-
> QnfX144^J|m{|$HIcG=#WahiFLnRy|cZDRSGO!y&`k20UXZQ^u&
> zHkiYB0`WM0;AdfOo7h46Ke#<7k1>R{bCMp*Ae_9yrsz1&;hC^~=cN2w@yuA
> qXyb$L
> z7I&p6&NjY#NZDZx1>dEke^OhDJXvv0G~c<P9k6`oj}!&#KdIw5{KPW64}55s>_
> nVo
> z;BdR_?4KkC{u4f7AKtb1<DKi!B*nQ|7AFFD&y#bi<y-GeR)E`<!uj%3oGCvJK0-
> <a
> zVn`#`I_zJ|23dRA>|@5xPJ@q66h}uS&ksS~*c-
> ?R$iwd@!Vf;tg*jUNM9OM(AU5|G
> zDeKSJ|D~U>wn-
> fI_b$qZFFJd+BK9TV!k*8*H*p0P;#@!8A5UK*cBDV0b|U8ANtm7v
> z;@q`8{S4yQW_lLz{T*s&7t+v?Zod2K2OZX@B0a*-
> )%R7+SPy&!>h5WrS=QwYpPaUq
> z@3@?XANdLV!83}({Y!K2`a<m#?@L)d(O84_NLkO=+F5q3@op@2sZEwosMy
> Pt(5{0r
> z-c`Y#r-U{Q;yInqXb;Y0t~vxiTY4UQMT)d4fM@@ws_wrBV)1?>)~xAx-
> `0h7F83aK
> z&9k-#^!2)MZ~jyaT#i2R<Br(HKFU&CDt5?EKvvKd>ScO@-15V-
> v^83H!$L8zxi>05
> z8gimeiz3mASly&9tPLo;3$77{;sElnjzETd_x|i!$L@1qGURv``tlj%_$l;d0Q&MV
> z^z0KQ5;_#sak^L?ICG;qu<oD8*3~a%N%7$4cTyJ5_gFgAhV!+H=ZKP=Ibz==T-
> qo1
> z97|KuP9%#bwzoxLPP23g@k1B%gR<_GC%2Re>4Z?_)~eZ}q)|?3VcUoElZNwi
> n4j1p
> zV)b?1iFap-5|7|sH{P#B?4f54_TwR6m3=V>{ahdh+G23FVG-
> dtCkOugPTavu<782?
> zAN(cWn6yJX=Q-
> AR&U<X5lGqaZvKZ(o6a)E6(rc&Xq?SiPk86jGF)1x?%9CIF1o=~H
> zChtf=U!4Z;k0HMZaacdvCYB`bpe}K3Jhk@g4^w{%tCSrso*Ua#c&q?%%JNMZ
> 7a0G5
> zl@w^$pTd4TV>Ok~DG%%t)=NIVd)$RKNT`Fhr5t%>iqukG6?jQ-
> 4RveLvBGGPPk5S0
> zI6-*%)r*f6Iz)aMU|yulR;A~qJ4I_c_GjTwv~E<ATi%i<oybs<TAs$a>1)7qKqPeF
> zjKRaKzfp)etiS)uc<&hPO}Ftv-pEgnGNpq$%6jE9n~#-
> Om95wLaVEx>Z;GBcbp%gk
> z>&p|S0Ip1&3cmC<0N-
> 1CQE|q6k=Fws>krWDGVtJas2`d<pg+Mwp}_;%kM*F0HDE$V
> zI1ffU{dwN1De+i?n(an9`r>%Kjv-
> n2^T?yOB1Ny4@}f+Bgu2;hjp#pViL@gFeN~G7
> zpp7g=KS@nbb|-
> 7NCN^%TekX5vvRhJC?JZRjPvm7iv0YMD?=4W0^yinv^SL)iiKEz$
> zIeN2_(6S%<|1XJPF3xcuh3t>!E0dr*ldxC8x)j}xa@_YpU%!iSe-`tUB#d|o`@aIP
> zjRj6Ko-
> +mSpl$6g1&n1R3Fn@Ga|_bszYlue2$%x8Wf)JyDZ}_KHt`R8;WNrxyO){i
> zjKUOmBhuHI>0WPwTT-@mFEZ1OQCktWOLiBU=@#67iuRY8V^_tv6_8Z`-
> ;rS4UBy`D
> z9&~vW;`(^@#~{v+Gw9{2a0jr5($gk76H%V|dR_w7ZO)70%b^E;mvD<%k9#cg
> ^*qFq
> z1o~4Xd)(#dM<En9=d#dB8Q;>tTs}wIAV4<+n)?wy;dta2d;)UCrdtASEBR9}25C
> >)
> zyi-r~psyX+w?MpM0?q+V*n&DxcYO1vr+4(<<JhrfQ-
> VGo8y)Jy<(rar@Ep$}d=iOg
> zco<9D@|pM8@wIX*dHfm1Ncs@mbL{vkxs_u@GGWJ8;yWl9C-
> rQPZV!@md*Fb)ESo?c
> z3QH8!TX?K|6Y2*K0paM#z!;!i2tbD9f%RK;lO}YjwLqD4;xO7f6=UbCs6!vSz->4A
> z+VYvf(?`&4@<cr$PaklcfgkUZq#g6Y3&&0y`YauD-&DjwrXfaR^qIqr7*jrCH15Ln
> zF5TAX;{|p^f*g%DC5_r9w&w`i#Wv}71?^$m*rs;aI=xNchi&3mW_#GKn_-
> tiusLj7
> zq?p`N23(IarA5Hb90T8N&@sy75|hte(4VQ`aSL>47j)<um&3g!w$MF)y=(m&z`
> q1-
> z(c1)^UC<?-
> V}2$Xd%Do4Ezqa=Rjxd&&n8*2YozRSzC6chk1U(>J3RL+;=GQSw3Bm*
> zF~^fH#_CkuNBA)2w>8eLosYSe=e?i{3eFN?t-
> $qG`rbh&{g^;J<|0kB9(oDiUUG<m
> z#>2Qr3q5XL{;b+r0iP*=`M+!@?%zQikNyCBhabXkr~I3s<MI-
> DhX*?Dg^qij#+bkT
> z6T^S7))so*&GONAVGAsO%JK#1S7GiPpicnX1Ajp3pg%zWk^aCLn?EoBf1nQ
> MZ#WL$
> z#rIQ!^edZ(ztcg#QlNjjc1g93Q?d8_n3RRMB)%OnrGxmoZ_p=>ri~MInYp4QAs
> 4>o
> zY{NGwfNwBaJh|OJ9`hLDT2mY<&I-cUq#api`3J-Ef2KbF8~(v?e)5oikO_al?jJm#
> z4P81YkMIxJZp%j?f4ZN5IX!KR;U~aHD<Q8c`~>oJC>dvi;2+Repg%!BVfKy5JIE*f
> zgs0#$yeTKc4kfp21kYK}jhj#3bL^^B@GF4xl#<etZ2A(+pU-
> )>ZP*?Jp8MbP5t_cB
> zkI-
> cE5%4}z>r=|)mNebQB)9azN0@gZ9|2?G!ahRk{{=pR!NdQCkH9{puF0^QcK<-Y
> zKbQ>vAb+B!`v;TZAGl2aU~<-z+g<Pv-
> jb6~@VRpo|DY580eu6={V08dWcUcIi#kI6
> z;5`29z~JMbh4}_w1MI0G-yl`@4Q>L=?i-
> XKUG}s=qY2}m{=qU6M=mt{f$PllVXxs2
> zEHcxUKTv3<4S!&=yTDA}i~CE^aZ4`r1scPAfhN-
> z(BKR3eKarTY@VmEd;#X`d8RKw
> ze@(^wZutUwp3N7aPbaXy_m6x5@-
> u*a6v}UojlX~07fAkJ@dfSxFYM0>jPuXy1GN7G
> zA0UJ^i41#!GoL5Cm@nxIl%Ni4J`48+_#TYi7kCfpGVl_>987&ag!#4!b89pAN%X
> !_
> z+|8Ify_hRAY(Bsi_y8XG0Hd|#AI<%Zqs;wWk8tj%z2TZ95^EC9`~8YBZn2*^i9R^
> z
> z{cnJ`Ch*32U+2r5_jkHvw-@t1cwEo9`WwJ$Ca!JX-
> <j;y=Y72`nD>7LJWEdYd7t~n
> z*1XTUN6h>1O<dshi_ZHv*XO3cUn)eWODMX}On=$W`2})E+(JLw$ul<aC46cu;
> v}iK
> zJ4L64cPZ5bd>;vLp4WGo`K8D!1-
> vv_bdCXhsGMli%Zbm7av_!nj*9uTG?jF*{)Eqq
> zG1jU31z~X{#@=z3lJOPn$15G{aPEj>P2>Jx)5y6#g!Pesg;d*vy-
> WE<tp9<_cN93!
> zKiVsf1`$UJB93$nF{A^yG<?TO2*y#wstmMML+t5Ylz|)uLX3wXjr#!OCLF_R32Z
> HV
> zn*hF(LLWZEA&h7EIj(5YSq8YV=bGeZTu;Cc<M~!U%5qMEOt3zJ%)<9l!(vSKI2zl
> }
> z_|lwz((d4GQf>ProFiE#WsL{!DYM;=pxtbzgm!Yjn6acLtn1kxzJq)k@g6_M+i9=
> d
> z`bmap4Px!mcsJsN@GaBL*b#laE}Tad4fh;_k7dM*BE`O5oK0;{U`$cQUh~9`tkZ
> ZG
> z6m=y+E_$5~tj$r*Wly6FWySnP$d~@*HaxTZqmk;sW5DOR6`XBx-
> vAlXN2mTfRQhY!
> zuk9198g!ogzX{&kfq(c}V?L42;G7HIWyuJ6&ZLLbGqCF|jd5b29d!zvRng$zGJYjM
> zXVg7y_QO!D%7|yuFHQ)FR`tZ7(|<Aivr~gk?(O(9#K7`8+1a%l@Jq30&Tr@7T>!
> ;}
> zc!*a5kDAZVvFSK-
> fO%zZd=C+MY%}w`F5~?hfp22^kr%j@?Zmjka}T~rB|&Co864lB
> z1D+`Z_5)+HD(DhVHhoer)|H+xpZnXVOrINZTK#*d&9G|<eEw#mT~>@3d+C
> V(V!t1K
> z^~UY8Q)B;wU#ssmwhMZ|`dn-
> eWH%K19fc<KmFH%#NYck?2>bSLV9ok{&<$NDInyKY
> z-LvbZtQE*_GI0dPGTQYT<ImVgED2sKIXx!ct-
> xWMc}CERNps)pYK$YRE$k2DY(4A7
> zSxx9B-qk<Rg*9ZgSw|Q6z`A^Ya0%7|QTXoLQmGc7Mcx*$<?mzubr?s;-
> ?>!Enu|QF
> zW%YKrz@r~NQI9gagS5$~daYD@2)G$brJ`)$Ej<r6X9zd67<LJ`y`Xy;@T{{L{4VRz
> zd#q>|<BOJz?fnMb_u&vyg4ZFA%0g~Q6Y`06@E~JOap6*hc#Zw*5MB9Gaq-
> MWI`-)V
> z;!EkcxbEgzBne}p4}G*5ZO~A@Od$S+e7*yt>xUA3l<Pv`;Jd6H$05&9A=cO`ct?
> AA
> z9%}{GP{FUtV280c=nixUwDv(C8J}!bp(mjXiTU{6s4MqH>@yha(#+iN;kyI+c_Q
> Eq
> zD$%-
> 5YUu{9z+R%x!;zSyR^L)jd)G<>eRoL%{Tn5m8<Pg!Zk7h#xmVKnWkbzlS|P8w
> zp(A5jF-GQwl(DUl)!b0wSbn>3Zm4-
> I;vmc)+lp^!B0r`T=Q@xdgU?}TbE&I5cf~mc
> zZOMV2?pNnaMbrU#p;Yu^<nbL3#2Rk*V~z+F#<qs0VjSX~x=?dWYY6Mq5Z-
> AE-6A?e
> zd?&aR_o(^1*{`7}d3Pvk!R|ivYbZ+D&3Doym)89W&hP}6T|j=oq5SM)Z16~oE+;
> kF
> zl#|1AjB*Mf4LjWlef%rG^QOzrHog;<$XM6o8_%*B(B~txF@!d17}G(tv#UVL3S
> gXN
> zc%|AVv@_v4+4%@?pEBiP$Mw&XveF@w!yd`WeNR8$b1S(9_5%1@N5KzW
> EoJHYu1Zeq
> zd+Kwcy-gOc)F*k7?DRsH3SD^ru-
> veVD!%hPh;KcHu>Q86KkI>BY8VSAp|4i_f^Gb7
> z)PXkbqn)tg41YL>_v83oMd%vqv&!o4Uz>6=_UZXvj&O6Y>T70Ox*#Xo1MSO
> @@gmHt
> zS4g$o_grq~hubXmD%dRGHO-
> TpGl9c>Zu0UAKI?q(Eak|t{x^IdhcdB`bB;U2mGw6E
> zz~ABiiq+0Tb4Sk0oSUvR`SIiIX)(Tm$-bd3(_Zncsg;Io^fcauz}eG@9hU)*ve9xR
> zXJ7@|=a6bCCxQCxGPCM-
> U9JukUnM(H&j9x?SqIvc<2Q9Fm<RiY`Oo`hsrG&D!E&Ck
> z$=;$vo*icSE|lkZ>w@gs$3eHQmWo0s3!3_w67r+#3G9(|F5qKxf7dD-$^-
> xK_j<3A
> zijJ~u<b}(=9adJ%k(`YaG0yX)qQfjZR<urseG*rT;tTQq+b|j-$geR8_2)`O-$Ne#
> zm_D=*a%#B{jh}_l=*oufq@evdQc=*PvCouI+GkQ-
> 2>Y)WqQyGxw#%OdS>n6iW!X~E
> zw@q3-pe3Qd&?mk_kU4qO&ng1OZv&i1-
> #in=eNOA_A^VN*H$56wU+8klc?fo)X{J=m
> zy?E|j(&zsDhr-Evev7)3s4IBBK^C)VThe01NxTnLascB38+0x3%UaXKq!X`T-60gU
> zQv;9KuV_8!b)CSw3?(d!cU>PR4=13XEu`TTC&@ScYQ7gsznbmS#}m#}4V_O6^
> XIJd
> zJhT~Qwzll!Sicmqn})VzN=5UKce9z#v4q&@QU73DH)D#N`(2ly-N4-
> m+*!cWpgS1v
> zZo7~2U3@>ruJ;RV^-=G|RLLo2LjNw2iZYPLcCw!(%$-
> e;BlW+JG;B7V{*|9)k&nPb
> z0_ME#ZIB0bfIdIYZRq`L8~3wGcbO@_0mzSOo-
> IQ0*K|F#_VSyDeMH)2ervY^zDf^l
> zF#2SlWru$UyJ|h_<MW8&Q|h{c^G7_VPWcAGC*D^(p-
> qvTE~gQTg8uEd`p7!}v&3vi
> znb{7sZ#LVP0yueP8?7@)M*9*w=7BHDg85&@Gtaha&?Vs%NAIGX&kbTONQ
> 5m-=y(`=
> z+~f&*b~Fea+GVWiI{2L$`eEVx*xO|J$r9erPD5K<iIUSFuWcXd=OdyuRp%4ub
> <y^I
> z)ZL4^z(;E@&RCQn-
> 7^vM+9W+by{`s!lJ66MZ$Nv=KhNglyOR1hjp^%dL7vfWV}4*=
> z)_KLRqyL`3^)#;E;j*78?@vSAd`SK>*3Am`&LcXWM|__8(T}xJ2xIFQ`k*UOD)L+
> m
> zJ26Qr;<td9w+`zg*4sE%b|yU_pMh^Num%0@{jDg%{G6YGIc6KvZwSuU`Msb
> u?HRNU
> zWzt(Eykl*Ax1RlWsR<8km7GT&ko3O;Fa~hFe78|v#<;TZ(jStX&A@|?*4+jFhq
> #$0
> z4bOv;^XV4J`HlM}=i87E{I+g>o1ONc&TN|tyzv{*2duO?|5<71Vh-
> oSL$3;b{#yyW
> z;5ezMhx-
> D*6t!NY*>>xjP`YlKwu8E;>jcLk_Dgy&E_lX+;{rUmxexvd(pbN&8nUI<
> zSQ_PgDbK}lox(cpwp+x)*TA>Ad*dYM#mKwioTPtKoBA600OZ_fymQb8o#no
> B1l}d0
> ztW=!e>B2lrJjYh{2jBa!{Y?a{`}tjuMy#17oZ;sBg|Ps{Vz!Uaealwbc;+0yZ}nMY
> znm!WG^E?TCaz%-K3N8<Ig5NIy&0N%DtZi_n$r{gyx!j3&sZL?c`Q@(sE}XX-
> I5()<
> zCE9JyNy%d3YaGK;LRVhF-
> w<Cj&lnnGIJpDwgKmRe*dM(8OdfT(3v|+mhZrMcc3i(~
> z^NQ9jki*Z;4(`*i2GVp}=s^6(@fvl-
> qOHPygFfnaVC*G!oWwU6G|+BD{GkW_4bKDh
> zLzeG@rb=B4JNG_-Z-rTL0`*52>F~jI{U{uMCs;q%hB^_uf^R8f94Z|z<J^s{zjK2z
> zQkG{5{O@s6?M~!vNy0aQv7ggFN!h(6$+KJU=Shy;)XRR@85w7WI6hXvR*ZPh
> rqDb)
> ztT>ML)d-vmbF}v1Y*HWWL0_TL+K2T@p9AlOT_-yG*NTDTcOi|nO8=z7-
> F?ddn<VY-
> zpEQ4WU!iEF-
> G6(d7<gwhY{4XLZqF2LF23hDw{NO8xBoJ2?(r{abKjn+&3$JU(v#%f
> zd>2Wd3s5Izu;R1D$MD|qMDj^JgI<&z#9DPM?pOonw>iW~%0CikAcSzV?84gf
> 6UbSY
> zpE-}PujrR^Tv6XJuJZRsOHSBHcklN_YYh4e-
> ^u7~zdeu_xLD+2PS~%HU7U%fK3leO
> z@Q8A>e-
> &)<5v8>s@}Pa}hdlZrkA4O1r#vVJ$ly5SMtQLPmOS2utk}kW$c62B2Xgyo
> zGJ!v0tZz}L(WVHT8H)g44)`RIIP(;RGf&aG&s_&vkh6w0Gj$}?ECv|k{MfYFPr~*-
> zk*s#AV(r6+MOAL^Ms?sVIqihk*|xnG<zk?tx$DKgD@~o^nCJt})6ipW41ALr@
> J(J3
> zwXr<wCExup=Pu~7Pb9RZ^aC$6RqFg1#%&1pi+epu&ZHfmKn7f=<4pGezJW
> Gyqpapm
> zHtA!0%<hH%(+ipKyaC7f2Ur*TA$t)Czv)W&{;^W+2RM__2fRMu-
> 2j<Q0B*F6Mt>UK
> zp|jCoUy=s;+S#5B8ZnadEuQZHUI=)(pwS-Ll^?{Kpm%CSt8ihjW-a2co76{KLfn6r
> zytavfLG*L)O31Vgd5C9i#{O-8jXKbWb#dQiQs-vHaiR};cLZ`eHPzF3x~eL-XBA>v
> z(Z{yeDDa~)w{)lFh?A#f>HeUK`1dw(5^XL?%M>RO(<q6TMFP)N&BXO7^uU7{
> ?tbid
> z>@;~3i23)Ld|^N6{<MAKq(GeYdFXxG^YB&q40=H)VpEzp8N_=b6Cs<l{{uWcr
> @e@A
> zfjeXBY5n44G|T-
> =oa~Lo{UveIk62b(7wE)@656M<Ea{}+H%?xZPBP9#8KiBMPHN-v
> zy%fgrmq;gr7m1Qr%r*pZ_KodRagOa}?471<LAg}G9*|DDT)6vzkGc*r@0ZA%V
> tjWc
> ztqU|!XWA>$N&gJop8|dc&ZiOY4Zx7soC$acW$=xc7XUvkuiM*+F@0KA_a4yi
> oA=@!
> zDx~k(`+fcX^}XNI@0<3%fcx*{o93LB@7kM#GpbLBGjlQuIL{@!*-
> kN4On~mL`Yzf*
> z_+RmNOTPNS*B_>y_BN{n*LLN#Tq~&qe?^~Ap3SiTedhDON^cqHox!-
> ^8S#feZyVy`
> z-@tR9yzb#%dE?&A7)v*b$G1}-
> L>JBvOcN&;qra#RH!IQ(ODFoM56}zhD$Wbt|1oF)
> z=e0RE8||eY)d0r6Bm8~XJ-
> q*&&=sjYjBk_NKS|oO_cZGJOy01U^W<mBq>dkpyg5&u
> zz31Vll=>mqy~?JCH_5I!38wtgFCag{DZhMEetnSN?T}xwq;+yF@rbN-
> Qihh?J}({o
> zy`}-TPREcN`{of-ZklqBZhIo|Jrzya{O~S($AY%Vk8cv}!uJ9<;d@^9jxRj6665lz
> zvv)tt@pTHZpFfG(IZr8@_nuNFzUIYP+XZ|~v<X7KuUk{Z{egSbhtr(uN#@NGk8
> G#E
> zcrR?<F_c}4JlNp`8U7A@MIU9y=Md}%eWc^JV1Bz%47^_|2Fl@Uzh8>?QEyQJ
> QwM55
> zgZ;V|wy|fWI*=ly*ZfEq$8>F98#%G182r!<N$^)T!yYdbDJ`>{k8J-T@KJxR2YcrD
> zj^Xy3712_OHsS1DE53`-`nb}t_X_ZG^`)7)sh5g5pIx#z_bCPXbQjJ$!B#C34{gUm
> zJB*z>hsMF@m483ve?R2E(9~PX|C^@#5oh0j`qOm}U;1a^JO%yzUD{1^-
> oZNcJzU3e
> zy$^ZBqTZ4(s5{o!^GNCjj+LILg?{cr!#lzpFCnD)E+X4wukURoqV)st_eFKgYGbjj
> zjh2p`!r$uR{LlV8gV-w0%DerDDfE|fT#0QFSBqkQifCoOe-
> G(MrY}|VS7zXSCPm+K
> z$?q@6JQ9QFE7W}ILTDnMv(@}V*stOHq5fR`Jw)gbp0C3Dif@Wq#C|*d^FU)3
> V!qIc
> ze)#Oy{R?gTN8{)F6U07$lJRYVO1xjc0`gsn_xg3dz&m2yx?cAk6Hd1O2zYS+3p`l1
> zV7^Vh^rhLC)A0AEv@`0%680VnFn8StTZfU@+W2GPymY<)4DEDVf;h>!CIo*t
> a(%@a
> zj-9vQ|9LQ{P&VY3yq5o36p_y-
> !6)@&gl+(jW3dYKXiM9zd0)4ql4(cf`}MgF^RmEv
> zLmIT5b~=~-
> LKNK?M#Heh77fLqf%!0mIhW<J*OM@+zV<m<=ZDeiAHk1fh#wX6@o4;f
> z3f=tXVNsM7M#t{U;JYkCJPDjPAWs)xfG5&>8+<YDU~l)^2Sx4VaM({pZGuV1jy
> rx7
> z*f)P7oV25CgB_RkJ&V59Z8PSqkbLKd9^j-
> Wv~BOX7k&rqc@O<H_<b&+Z4W&pu#ReY
> z_<-=w!8@KfzlXmE2-`znu<u^X&x-O|AIj05_hQ}HgL!YNqbncrhWviyr@It)-
> $S@#
> z-
> YgKxU%5^QLbqs3OO^2_nsL^HF?>F|RD7ds>O<Q@m@oU~wGY4F0{$K+Pth
> m)H;aMK
> z;OnJx-
> v)M;{+=wxzvgkI?&yKPSOJ^YcbTVCLF}LhzG4XH0u|^f&w9{SybV3&Jn<gv
> z$bZ0xJqtc*8{USFa;|s}HiL7^+0E)ee~UV>RiwOzZ?)$99P~n{3*WLB5F)iDgu2pE
> z*A$#7u<Cg_RedA_G7PWl1Jv~b>iPh*SqJN4ovgbTH2XkP9-F$O7c>zY-
> 2X@Hby_rg
> z6=#Qn{hV-
> `J4WF>6MXlB9^U61aKxwX;5sRUzW5`2=MnTqk;lED7tUK8+ER(Xk4G8z
> zf@V6}O&QB*_gNcFwwY}wkCuGbn*3RE<@`l@#}UK9oY_6j<dyQ=0=ne&2-
> f#q)EUsm
> z--aCcIp)}xg=oQE-
> R$=e^Lk54If1#oBpYR?3=ZzY8SD6d=u|n*a+O1`tTy62@%>gm
> zSp2ZRmzq4WkFB=84V}Y#pRJqYuqOCyu;k}s5Th0;CpccpkPdJA;j@Dy`keJNV~-
> @f
> ze`c9=okIKU`t>^M<5|^T;@<bTI<VOheNuvN-
> w$05wHW%`B!sTd)C<ZR?_BRcOW!3-
> zpHs{_>~?iDJNDvdgOi@ZISMOI@gw*T0&gC-<GVf?H;CHx$m<1d#`-
> +?#sK3aY!}Cl
> zggU-
> $mUW@;CP`VjTuZ_S*@p4EziXRt9>P0+Wo@E%1@M|i;?5y1d?+2)|A=q~@N
> K@b
> zps2kCc+9(75wEG^kLlm>d0$EC2!hvB#q+U8u>fo9g;-
> lJ!rFQ<*4B)dMi}dFGj?w7
> z^SK$vVoagjth)<7+V`=x)m{`?`u^2k;VfW%Sl_}|bTfWz-
> =F^k`ox(2U=+qn6#4<W
> z#W=k^eqqJI8RxymR?j}jAozmFYD~mBw^3wWf;`X2{M_Kbi>!9!%P-<h1msb-
> KFJhL
> z?e4YfyCBow%4+9w+-I5PLg0V1clL>=VIRBx56WUMD&qxF8;5-
> AD($2m8^N9kV<T3~
> zUFR3=V7#N7aXQ3d1m2s`V>!0=uq~(fPT@o&uAgY*cR$+W+KoD&#NO52BI_j
> 1|B&Cu
> zrV3~9_EUM}_YLq{f_u~mesgqw)#p%lJKFkFQPhjFpO;^ph1dBF=aqa~vS%!jXF
> ?cf
> z72xS`gxL2s>Y!c=@Wby~{0(%dm*Q!W6~H%mdVemmx`6Yi5qQ|QHSxOI(RaX
> W`nhoa
> z061!@a3&)5$Nu=WS;p#*-RKWB2%Q3c2IkHV<a5j%y1g$?la-
> bp^jj02OU=JSRSx-Y
> z786fMJhK7YmM+9~F4(CN@!2D$o>8aG_v^oB)@$nVetZ+S)&m=JI8W4m8+
> m@jP58|K
> zf26T58p1pF7)$zhmMDvKe51xCgd2NIBgTuhPc{p_@)Nc?sKZ@|D@kJzUz#my
> 8(0V4
> z?bZ;Z^WPI)tVN1^?pHwP^!L1n=t9>lp10WOVeIW!Ulz3i{C%d3S)$gDJnAd=%>
> !c%
> zo?ZC6azkT`ZKpoQ81D?$h0zKf5w(Y~r+YX{)Lw7WVjMbwK0o&85O;W7^NJDs
> bQ}vj
> z6A4?o58s;KUam<y3UL-
> o;F)=WjZ@yx$BS9FVN3LLdAco;9b(@ylMmWG$N=YrW(}SF
> zaUBv_681=YFBe6bz?**_?(mtSu7g59XR&jJ$hru4o8?6P9R|w8+Rw7vqe$2zeS
> BN7
> zPqQDnPf30I3-oX^;;$k2?9-~s^Bh%E^QdcQVHX&ijTAD@1Hm4`x8Lj#-
> wOhtc$Gqa
> z?Ppb&<b4V}wtcLpxOjoDq;$c;Yf2aRe9L^U%;JVX!@9Muxvop<r;imgt7`73oVl
> UA
> zw7jZv&CJS*RoOGIuc$0qwQ}Z?>azMk{f3##D_2y{udlwdvVOsuhWZUfHPvex
> W`+Z<
> zC>QDH)iGWFBkGzYjNfIrjTP{`Y`;PLkUt6+-
> gVWhD`qaMZK$qU<Ey!Y9QhV3S>P#N
> zP`aqFFeh)O$KxwpoSQQe#Zz3gV8Q%F^?}-
> |>hiVo*H_LwA2NS|cln~3o^=g1iz?TE
> z@$)cD{zhSH1Uu)I3#$vHGc&!*mVxP|(=)T?&b@N_bW!MYRRz|%ynzZ=arM
> eI=!$y8
> z8}#25Pni#2@K$Y>v+iH8`2QOEGbSJZQ@LGVQ&G8={Q{F;Bo^Sm`NAa@iFy$b
> wW3N?
> zi*m6RkRnkiuEE_SD)gKNQ3)LJPs_~*R<*d(#I9Vk^2?QL1a6~g;TP)g<tqd8>jQU
> z
> z_5Y~|maS{3UDq%=p|IiU4XmxazVeQm`VAPcGjFb}uR-
> cY41n6odJss@^sZa6qO#sK
> zcdjcl^Uj*;3YUAjD{H#z(o0=S(CCIL*E}SJ`Fu67veqvQ`z>Fx#5Kc}x%`@?B}=E9
> z^uFY}a{6fP{D<rn*4$AWs3*U}9L}#?+fa>xfN^e;P9MptD6UyoUtW2E%uJK>8
> Q{nD
> zIoLn1y6NJJlCbkL9p-};)^$lB^OB0`SK<D-jcR4tx|Qg(;)aR^_4PC7n@M!q!kYR!
> z0u8QkIgFxJVbZ3p_SV!i6j#>YSzTVawj@xtx{`Wvp$t^E@|rsWD=QZV)>N#nJg
> >@?
> z#U<y%yv66iJ|Am_o_bcVt|{01o1BdT15-
> s{X)SBX5}BUWFqC&xu4!;x>ar!+;nS(s
> zS;AKtSZ$P;=hE+DxQ^oLyDLABUbw!PUQ?jHb!!@`@2DJA*cZs7yrC@NJ*(T`&
> 4Y-3
> z<M;VwIlq!UToh=iq7;Wy%Nwd!S2tAa7IY~r>3MYxqn?*#4TO1fU27q>niZ~0P
> U`a)
> z+;C0dg3=;S$>P!?-?EZrh0B&e^spdSfva6v>$9@5uEYgfqKiDdiJz}kmaZE91!scQ
> z5SfwkR<Eh3UbFH%uD=*%)BuY5z*w{n)-
> aq;J?A`VQGHEAO?l1gQHw0CX{cVYVd1(p
> z<uqdFmGxDwtX|ttuWS5ynM(tAoZm$T!IIk5RNPrtiX}DWtIjJ~R9{_FU)`|5hBIT
> H
> zj)^g`U_~__eU+;#F+Wu36wF*S*vwtNrg{xjC9oQOJpyHzfTz4}U3EQjN8^(kFq
> %LJ
> zzag-C-T4i3j}9(gS6f?C-%wexB(P@XI&0|Lr>oB~C^!*9CTkj~L)HVjIy2LpxOCUI
> zzG2x4W294qskWFlbR%NJGwg411E{V12WX?yu@^qC(>T7fuFRg5Gdp)qUcSd
> $IDf&y
> z)^8Ik#FOUz1@r#0dH<7n|Jb}oKWN}jH1C&~_bbhNzlrBD)7P2zo6LKadEa2(?=
> $b)
> z%=^EY_dVu)zj;4m-hXZ0|6tzx%=`Q1ebBr|J!J41Z{9C5@0Xi*k9jXK@3)!vRpxzz
> zdB4}ZKVsgWG4KC;+>fdf*Q{x%tX~tLUAeKk0{+j{u332^bK&a1%C*pld*J_MU
> Fq6H
> z)yUIt*;)E6FUy*4GKY|fW2nz`*QQNyuq-
> NB>w&K8)pT+7nsuvJyI=vJP4mP!F>b60
> z;^Z;Ud|nA#gzv33)a%AGGqZ59$9H8eeKkX$rc;%&glBDeb@dR|h^$Mp^48C|
> Br9j=
> zf7$CV$;xKRcnH4>04iph|I4Xxx%hY$|A(Bsn>cQUTSLR1m6c<)$!P5mA2x26)m
> N{C
> zH@Dgx8#>qUutulFCPAo_+{lKFPNjHVIeeP6;>JKdEZ0ic@-
> ?g0)ZDekwP^K*+NvSw
> zeAv8(O4q_b^=huIEaV$uE6<0TlYU7}jjQ;M!0OdQ=vXDg9hx6#2*7q?u?7#Vre
> 0jL
> z=1y443OE_{u-nihv3$*1%XkSc>P&*{MFBJJf@@N-
> K^SwcNyOlUGfHJSY@UF#@4{5;
> zt6Z!5xogD@HLKTQRw%5guU}W&U?mqqi$KzKePu;;K<NK>;WIsJR?<47riC@
> @)>H_O
> zE+W_b$~DzGoMdZj)~qErt~;<QfZ*_Y70B1DYtYNBZ3xix!ey!_uTWGoU8b94a
> ZTa%
> zMJDGZ3rnm=YeF0nOgUZqhHChmt{W=r*J2_R#g*mj^cm`g>YCO1^oQkdp;=
> <VnhLhs
> zXbqTz$68t8%FNE64tLH<&4M>!A}*|6T{$FwYn~8XP}JAlQH?py=&a9Y6m*xV`
> p)IK
> zIqPR-`zr4Uz_rkqOY^JmtX^AFZw$82PYWXfa@8jrW0B-CAjS-
> 13?6Hqu~u5H(v?N!
> z6{QQS*H>0}8uV~SDFD|8)>q%L?hee&<?wzCGDZ<-
> (a=iiyoqIKlCvY}^V`VU&ABks
> zjyA((tZ1fVDToSD8>UKK7cp{;_Lym`0&NBV1^l_@qSLnC{K8@Yi-
> wV0SY5xi!H|$?
> z9*44^dNpe*M&v=O)~#;Pmjc66{XMW~SlPM_Ogt{REbB6uq?xWOp?bqbpcj
> U+z{cw$
> z$<3MW8ojXV^02ZfVR;}%32O#gT)DomDo|fivm9OvWNvbS>gUaK<xCfD#Ok
> P5V9QV*
> zGG}ATS6o%Sq5*uJ&(uGw0!*TU&!>u(X$B{zB3epe(*^K2tVC9cFQiGM7P2^;`;
> SM9
> zRrWj<U15r@&s2GwR)@HqOPx0qDop7iR!+k<bhOge=F#-
> uZP0*Ik+mMnp|A<tSBZGv
> z8r=yVeL}ZsbXd_58XcB5f~QgZgc0Mwl9k!y%0PX2)d+<1)Q(ygR?4srhMBaK+a
> @g=
> zL!VnQESrM@!(z7)g0vAA8l4aK(0bMIn-
> FL<RvK4hEM^ToXRQw)o?ztAHm*R#2)DrJ
> zTwQS1@YLTib2<DQgd{2}VDLZR9AN}GSiZ2PcEgD9mk^)i#HMP;KJ^5zx&Jq-
> Q&x1e
> zuDNkc!5!Tb9?TcPSF7v4eC58sEv`S?wP1I~M>m~w#Qb*f*1K>2&v$E={qPU#_
> GDf1
> zdcqCP2Y!;<_P6;DKmY8k&5awrdHG#;J9~cn#)Rz)#n#IT4qY$ye!S$Rs$EOI^S8b
> 8
> z3X0_If8Oog`lqRR*FJXk?mz!V`^xPt(=UJG(~n;Byp(rWN7X|w<p=JaeCzW`)k`1
> 0
> z{9A8sC^>V{o-2dNh5J&j-_;d6=F*GX>e{cIa!c8x;IF{o&+zik|NkpSI74i~K_mY1
> za7ab}IT7(6<(GH8zv9V=>gfUp39Mi3#mTaY#54jX3OOi5+!PTfA`ZPYJK8ZO8fSH
> P
> zh_Pzi%msB%9;zb}KEAcoU;gB$cmG9f)$57I9;tBR!n;5Q9n=s6om9|?1f8hJ=x8y
> <
> zptHb6XS^eAko0P!g;23!qvE*>S1)M2NP2iCtK)I8X)fStQCQ#c8P_ork2omK7Y@
> X?
> zka&U#$b@*cxZJ=aj}|?=Q>4?g@K|o^D0t&cye^ZTigXZHRv5iFz{sD<en4I_Zuj
> B3
> zl#JoB_yham5U#9$f=61!bD4PL&(E|;&uRzGo9k`zn|N6!US=2`&cy3@njDf`c)l7}
> z8ZMlP5?A1IkRX08<tEvMJM%Bam5GZq9oCkTLntn!nNPR}*Oj=e@*+YwTu3u
> t#kCq2
> z&Y2A5tC24b<>Ne{*okYFEnjo^b^6RJ#KrPoHuGJ$-w-
> ie|4gKp<I2ay`lsQpMs6A6
> zZw}G{TvwU-myeQvr<E^b(;3fNRNfGOUZl6-
> %EM*R7ZI)@`fOJTuGwZj>4)bpvhq#(
> z!H8l0NcXF_@LrHkpXI~zS6TUH`K^&DBlx=u`D`coWBKs>N349aycRVq|7(%A9T
> (ee
> zwU1*^gZ`?3X}GpPkNmhmUf?ETaZxu{A|;nDD{5NacrZ;Y8%O;YPd)fhX4+$&P
> Y()7
> zRvZxtQF-}SefjFS^YF)~##8YzJmbV*pEO=X8bxE~=@lX4FD-
> 9nigz4+=M|Ooq0h1r
> z;|HgrXdH`{Xv0PS`oLS6>N^gr*2t*nF=Jz5$Hn1OFXm7E*NgrSYGqN~rUfI6vEl+
> d
> z-
> +>S*Q_7MiB?%YpRV{29@rsas0@t%)c=3Q;gNr!AMsE)AT)6O0r<aI3>1{Rb)ncS
> I
> zT=?$P2)qe^k)Hl@;~QSW?dJdVoBjw&1;U*u+y!oYzg`r$-
> HC2@fdH5(WCDPE!gLgT
> z<-
> R}^B#MFpcVePDvA|uB=q^ASC4hxOKqN(w(~Bko6?jC_OQIOdfDB6mgak2=t&
> >bl
> zOf0~Ei3K3aC){w2!awQ*Yy6Fl9}y7|9UUDL6B8E~H(|nrgoK3T<mA-
> URF}&&ZQ3-f
> zBWBE)k)55LmzSs0FK~*2G*K`UT=3t_0+CjLb5LlDEyD&KJtHlx;Ig!WnP~-c(h3Ur
> zZ%#ql%!0Jb3PxtwprdEZm{D-$jDp-
> 51y{`|DB!=V3TEUM%(${(WQGkodIrv3Mv2ro
> zk(ww{Q~56uGj*znN*$SDgN~jN7neFAE;TVOH90OdmH(1c;}TQjCZvwcut7)9N
> JvOc
> zN=QvkNKHvdP36Co)P&^JgrwAw88+zX8M+tZj26yV;dJs}EdER|{;IKaWQGkod
> Pa1#
> zb8NITHrg2%?R4^AoHIJs89mlHGQ$QPJtHQ@85`pq7vmfs<8<=hcxTKwXH2Yf
> WQGko
> zdWJbt&%eP|bNtia;8?GNoxceeZ69vBUEs6J#N&Lf;cBqqAxrQg9(_2{<J`0!7eA
> 6n
> zdY9mtCWV)s9^|UqEPK5uP7|f$C7bkINUON+veipGm^~ejZlsEf(**sBali{9jhlY
> q
> zCQjoDngGs2^Kp&lU;P5`ED)v*BrO-NJn)f%i*>RMlW@^acA-
> MzRU!Q%E>9TVM8Ie#
> zL%>mO^z3$=ZKWSYdMfA<?<S<5$7Q$U#KZgF|4-
> Om>WGHEKy!s3*J%B95^&YTqn>2q
> z!uxl6zoKjPzF>C}58s~E=@C!G^$`%*|8~4X%ro(*pS=DahKFq3Z+-
> %dY0v@o1N|bL
> zzt(jCH(fUqa34ct;J~NU>#Rj`3Sqc-LpSQ<ivG^!?<kL!DJ#pRJIkf_R!U7}(#sXn
> zwlYbp5F4@GTqZV^i3iKXs$y+rhPXXLT)#xydY6`YjW*{REp36eXtj1prIzRSX0Oz4
> zzeDr53PF><{}sA7NhaO-
> Lv;B^(mAHsP8HW^;~h;GZ#Uw9_`PJ_jnwe}=X;IkD)au|
> zCSExFuO{50r(J*^_2rBH&=m0`uAFC$YpM6jEIW-+!UO-
> mA8ZRh0(V6PHV#JnX+rn`
> zuMIvQd@-2SUe!_CvA#p=xUXYt#}ggFj^{gG?0Bi8tK*f9-
> *o)GBh>M3#|Ir}I>esn
> zJ<dJJdt7@m_hjwK+oSGTyr*c-O?&)%s`k|GS-
> (fybKjn=d!E<>!dqdpaZ{gL{9Ms<
> kcnBIcPuq3huHdfccfGjlrCnXSUfK1VUBBOj-1C0_AJBKq+5i9m
>
> literal 0
> HcmV?d00001
>
> diff --git a/Drivers/ASpeed/License.txt b/Drivers/ASpeed/License.txt new
> file mode 100644 index 000000000000..3dc49d3aff4f
> --- /dev/null
> +++ b/Drivers/ASpeed/License.txt
> @@ -0,0 +1,25 @@
> +Copyright (c) 2020, ASPEED Technology Inc. All rights reserved.
> +
> +Redistribution and use in source and binary forms, with or without
> +modification, are permitted provided that the following conditions are
> +met:
> +
> +1. Redistributions of source code must retain the above copyright
> + notice, this list of conditions and the following disclaimer.
> +2. Redistributions in binary form must reproduce the above copyright
> + notice, this list of conditions and the following disclaimer in
> + the documentation and/or other materials provided with the
> + distribution.
> +
> +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
> CONTRIBUTORS "AS
> +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
> LIMITED
> +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
> +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
> COPYRIGHT
> +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
> INCIDENTAL,
> +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
> NOT
> +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
> USE,
> +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
> ON ANY
> +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
> +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> THE USE
> +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
> DAMAGE.
> --
> 2.17.1
>
>
>
>
>
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
[-- Attachment #2: Type: text/html, Size: 54962 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
2020-11-24 12:13 ` Samer El-Haj-Mahmoud
@ 2020-11-24 12:21 ` Ard Biesheuvel
2020-11-24 14:43 ` Nhi Pham
0 siblings, 1 reply; 7+ messages in thread
From: Ard Biesheuvel @ 2020-11-24 12:21 UTC (permalink / raw)
To: Samer El-Haj-Mahmoud, devel@edk2.groups.io, Nhi Pham OS
Cc: Open Source Submission, Ray Ni, Leif Lindholm, Michael D Kinney,
KuoHsiang Chou
On 11/24/20 1:13 PM, Samer El-Haj-Mahmoud wrote:
> One comment is that while the driver name suggest GOP, the comments in
> GopDxe.inf are all about UGA. The comments need to be updated
>
Linux/arm64 does not support UGA only GOP.
> *From:* devel@edk2.groups.io <devel@edk2.groups.io> *On Behalf Of *Samer
> El-Haj-Mahmoud via groups.io
> *Sent:* Wednesday, November 18, 2020 6:43 PM
> *To:* Nhi Pham OS <nhi@os.amperecomputing.com>; devel@edk2.groups.io
> *Cc:* Open Source Submission <patches@amperecomputing.com>; Ray Ni
> <ray.ni@intel.com>; Leif Lindholm <leif@nuviainc.com>; Michael D Kinney
> <michael.d.kinney@intel.com>; Ard Biesheuvel <Ard.Biesheuvel@arm.com>;
> KuoHsiang Chou <kuohsiang_chou@aspeedtech.com>; Samer El-Haj-Mahmoud
> <Samer.El-Haj-Mahmoud@arm.com>
> *Subject:* Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed
> AST2500 GOP driver
>
> Thanks!
>
> Ack-by: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com
> <mailto:Samer.El-Haj-Mahmoud@arm.com>>
>
> *From:* Nhi Pham OS <nhi@os.amperecomputing.com
> <mailto:nhi@os.amperecomputing.com>>
> *Sent:* Wednesday, November 18, 2020 6:39 PM
> *To:* Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com
> <mailto:Samer.El-Haj-Mahmoud@arm.com>>; devel@edk2.groups.io
> <mailto:devel@edk2.groups.io>
> *Cc:* Open Source Submission <patches@amperecomputing.com
> <mailto:patches@amperecomputing.com>>; Ray Ni <ray.ni@intel.com
> <mailto:ray.ni@intel.com>>; Leif Lindholm <leif@nuviainc.com
> <mailto:leif@nuviainc.com>>; Michael D Kinney
> <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com>>; Ard
> Biesheuvel <Ard.Biesheuvel@arm.com <mailto:Ard.Biesheuvel@arm.com>>;
> KuoHsiang Chou <kuohsiang_chou@aspeedtech.com
> <mailto:kuohsiang_chou@aspeedtech.com>>
> *Subject:* Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed
> AST2500 GOP driver
>
> Yes, that's correct, Samer. This driver is going to edk2-non-osi under
> Drivers/ directory.
>
> Thank you,
>
> Nhi
>
> ------------------------------------------------------------------------
>
> *From:*Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com
> <mailto:Samer.El-Haj-Mahmoud@arm.com>>
> *Sent:* Thursday, November 19, 2020 1:08 AM
> *To:* devel@edk2.groups.io <mailto:devel@edk2.groups.io>
> <devel@edk2.groups.io <mailto:devel@edk2.groups.io>>; Nhi Pham OS
> <nhi@os.amperecomputing.com <mailto:nhi@os.amperecomputing.com>>
> *Cc:* Open Source Submission <patches@amperecomputing.com
> <mailto:patches@amperecomputing.com>>; Ray Ni <ray.ni@intel.com
> <mailto:ray.ni@intel.com>>; Leif Lindholm <leif@nuviainc.com
> <mailto:leif@nuviainc.com>>; Michael D Kinney
> <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com>>; Ard
> Biesheuvel <Ard.Biesheuvel@arm.com <mailto:Ard.Biesheuvel@arm.com>>;
> KuoHsiang Chou <kuohsiang_chou@aspeedtech.com
> <mailto:kuohsiang_chou@aspeedtech.com>>; Samer El-Haj-Mahmoud
> <samer.el-haj-mahmoud@arm.com <mailto:samer.el-haj-mahmoud@arm.com>>
> *Subject:* RE: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed
> AST2500 GOP driver
>
> Nhi,
>
> Thanks for the contribution! I assume this is going to edk2-non-osi,
> correct?
>
> --Samer
>
>
>
> > -----Original Message-----
> > From: devel@edk2.groups.io <mailto:devel@edk2.groups.io>
> <devel@edk2.groups.io <mailto:devel@edk2.groups.io>> On Behalf Of Nhi
> > Pham via groups.io
> > Sent: Tuesday, November 17, 2020 9:00 PM
> > To: devel@edk2.groups.io <mailto:devel@edk2.groups.io>
> > Cc: patches@amperecomputing.com <mailto:patches@amperecomputing.com>;
> Nhi Pham
> > <nhi@os.amperecomputing.com <mailto:nhi@os.amperecomputing.com>>; Ray
> Ni <ray.ni@intel.com <mailto:ray.ni@intel.com>>; Leif Lindholm
> > <leif@nuviainc.com <mailto:leif@nuviainc.com>>; Michael D Kinney
> <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com>>; Ard
> > Biesheuvel <Ard.Biesheuvel@arm.com <mailto:Ard.Biesheuvel@arm.com>>;
> KuoHsiang Chou
> > <kuohsiang_chou@aspeedtech.com <mailto:kuohsiang_chou@aspeedtech.com>>
> > Subject: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500
> > GOP driver
> >
> > This is the AArch64 binary provided by ASpeed for AST2500 Gop driver
> > version 1.10.00.
> >
> > Cc: Ray Ni <ray.ni@intel.com <mailto:ray.ni@intel.com>>
> > Cc: Leif Lindholm <leif@nuviainc.com <mailto:leif@nuviainc.com>>
> > Cc: Michael D Kinney <michael.d.kinney@intel.com
> <mailto:michael.d.kinney@intel.com>>
> > Cc: Ard Biesheuvel <ard.biesheuvel@arm.com
> <mailto:ard.biesheuvel@arm.com>>
> >
> > Signed-off-by: KuoHsiang Chou <kuohsiang_chou@aspeedtech.com
> <mailto:kuohsiang_chou@aspeedtech.com>>
> > Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com
> <mailto:nhi@os.amperecomputing.com>>
> > ---
> > Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf | 33
> > ++++++++++++++++++++
> > Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi | Bin 0 ->
> > 42880 bytes
> > Drivers/ASpeed/License.txt | 25
> +++++++++++++++
> > 3 files changed, 58 insertions(+)
> >
> > diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> > b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> > new file mode 100644
> > index 000000000000..e30e5a160f70
> > --- /dev/null
> > +++ b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> > @@ -0,0 +1,33 @@
> > +## @file
> > +# Component description file for ASPEED Graphics module # # ASPEED
> > +Graphics Controller Driver.This driver is a sample implementation # of
> > +the UGA Draw Protocol for the ASPEED Graphics family of PCI video
> > controllers.
> > +# This driver is only usable in the EFI pre-boot environment. This
> > +sample is # intended to show how the UGA Draw Protocol is able to
> > +function. The UGA I/O # Protocol is not implemented in this sample. A
> > +fully compliant EFI UGA driver # requires both the UGA Draw and the
> > +UGA I/O Protocol. Please refer to Microsoft's # documentation on UGA
> > +for details on how to write a UGA driver that is able # to function
> both in
> > the EFI pre-boot environment and from the OS runtime.
> > +#
> > +# Copyright (c) 2006 - 2010, Intel Corporation. All rights
> > +reserved.<BR> # Copyright (c) 2020, ASPEED Technology Inc. All rights
> > +reserved.<BR> # # This program and the accompanying materials # are
> > +licensed and made available under the terms and conditions of the BSD
> > +License # which accompanies this distribution. The full text of the
> > +license may be found at #
> > +http://opensource.org/licenses/bsd-license.php
> > +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> > +BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND,
> > EITHER EXPRESS OR IMPLIED.
> > +#
> > +##
> > +
> > +[Defines]
> > + INF_VERSION = 0x00010005
> > + BASE_NAME = GopDxe
> > + FILE_GUID = 7F81D838-F91D-4C44-8552-8FB912122FDD
> > + MODULE_TYPE = UEFI_DRIVER
> > + VERSION_STRING = 1.1
> > +
> > +[Binaries.AArch64]
> > + PE32|AArch64/uefi_2500_800.efi|*
> > diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> > b/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> > new file mode 100644
> > index
> > 0000000000000000000000000000000000000000..4b36e189b3a15abe2c160b948
> > a1e221d4b0fd8e8
> > GIT binary patch
> > literal 42880
> > zcmdtL3w%`7wLiYkIg<w@gdrp$glHxKHB3cf2qCdT&P;fz2<arKRcmJQfJBfy2ns^
> > w
> > zB%#$Bt3>ey-
> > e!WL5`Mi}3dQtAfY$1@wIx{F+xFJU1GS}BMO27b^8bF%BRLsDtG)OC
> > z`TRb=k>fdg?X}lld+oK?UVH6*POiUM{L4S>UoJUZuxNo06&=bj08bx?D@2Tph
> > ew47
> > zjyJM2q*cPqp9^<h;Xm!UVZ4~|%nPKQ7l4lj4m}H=kdci0{?QQrMc5S$mFpW=7
> > H!ts
> > zY29t~TtfJ-
> > s0cI!0Ha*g$A|AWG@%O7bwz#U>Y8$cSBq!f?LXjo?dgBzd9Ya=Jyk4r
> > zpNkO#A1R{aDIvC<!u|W=%z?l~5zcg>4uq71j%|R4l!+bZV$^|C#p-U9Ywc1>-
> > yA$*
> > zlxJD(go3V6J3rni?LMVQ9hwk1>CtLufe@>XM2Hg7=>d&w(9(`8S-
> > {N?DIzB{IfCT|
> > z0y`Z}Wr;e_`?P2!u3r?q`7!8@PZHZiswj5JA}3Kk^MmD9S`s-zyx47}gQ$<`#{W{B
> > zy-
> > H$71n^vcR<aI_*Sa%8N^K|+ZJ305&I~%G%Z1)9@^c&bVLcy<Ge59+ya_O9b;4
> > {#
> > z>rNCOd>8^fw)^9ap517((RNdIR(mOfIjEDgdQq31=gcskt+d5+&+iPLe~)s(KPk0
> > 6
> > zsaki_AC%hfBTXL3*FKZ>Yhkn}gweLr7H#Rb2JJ&A*Y%%Dt>+@Gd*|<z+NW%
> > ^Z%a1%
> > zeV<8NgRIv=)}LB+nX<Oh7VY$I(w^AS0X$1S!8euKcGS`IhEhvCX-X6cR-
> > UCd)Sd50
> > zB0&hPTh}8+KKk)3((cE`L^vtGE}41;y_`tBlsY0GPzRn)qAp4uy?vs!@j-{PA2NxM
> > zHD4F>L{-il2&Jh59-
> > ;XnlGOnjcSY8^`xU7*h<xhwEa}XFo@RA}Uv2hLCr`zA_BIOW
> > z<-O{Lv}m>Nl=8@S*1Hq+IJQDhS{zQwy$_cL8q|Ni9k+PEmpU-0$mST3j-
> > D=;cb`Tb
> > zLe;v-
> > H`_9>O4)sGsu<{*DF)6ca>r@P2spt>VxOz({%&pTb07L;G4P2L;bgs=BgFvQ
> > z8JejMZ19TKKJekW*8%xX?&wE3tF6?tM6@p<>C6HDSaqOBNpw4|*4x}&UM
> > 5<}D{&GM
> > zjeN>P&j)V`<Zb282K=LmXAZFL#ztf8vF_exsnu`N_$dC&0oN;vQ^HvN6g1l%A}
> > 3E4
> > z`z1;14m~ZkK9L}{si1@Bd_V8cN%_L1`CQ_~`cRGNwD1l<M?<r~E6PM+T!ob6j!I
> > K+
> > zyM&mn=K)qWNo@1a6X-vYuo?HVd1#j;_8kI`lz-X-;>@&X)B(1mXQRVu^-
> > FT3*v2-q
> > zO(o-
> > ?3&1UiGGK4So;jc@YJL#B`$10~EA}z}V(`u~r*XH&Y65hAZkWzn>7Zp_en_29
> > z==g7z`<dblTn78{6Q%YQq$$hvyB*GG@L1L>TKyTKb?TiCXGNLRdi*YjbHz@!U
> > +Wf9
> > z!JE_2M)k+K&CJ)p8+po}VDQu(##3?_PgdIEsb{~z6M66-
> > M1Q$4{$5gQpGLYLawlIE
> > zUg#J2YF`JvE|*%%nndf7I)^g?{B)W9-
> > 5{O$!DR5Y*R1~|jFBL0K^OQ8Tn?H)RcaqZ
> > z9t?H@X;Me2vlWqs-
> > W~!y>T85#j7!Ql0=PNQ7mRCn0&FS!R@Xhq`j{;CQHS6B3wT05
> > zAB+@rhcG6ouVrzDZd*D_9q^-
> > `X&9Tms5h|2;p_u_>Hv9>rWrcoLYm|DV~kUd*VE-*
> > zjKxBXMU2@ak}+l#NuT#PPHAIkb7*J0lGyJ*?$GBW%MNh-)9&=#Zs=PT_}5-
> > A`b~`x
> > zIj8y@PCx1oAfK}EV=kkuqMf3RS^%A-
> > d_O_|YB6UH++xbM2lh&XUCq#LJ!9E}QXx)+
> > z(0=uMiZlHx*y-
> > ;pS=qop1zgH)R!AIWTPvW)k<T0QXkX!QQrF7Mhx_sqw1@h%W1`qL
> > z9p%JsgWpfad-
> > kePBB%Jz2G8V^Jog^qoGZc3By_Y_IGlE#LlI{VTw(D%#pGGsb{@~c
> > zJ>Yqs)-C_Lk`+OofvfYZ89es{98QPHGj-
> > 4ESMvG;*|1gYbM}2YWHyxldxvfxt^O#7
> > z4m92deF3kd^}T>Tv)+)B6lSl@zQ?@n^&7h5IOcHf!gXq+*c}=#1`1)5Xrn)b+$@
> > _g
> > z5qg?uw%=vWgH}3d+Jv4bjd}20l=D9gIb4ge@|0401ZnNx48JI&+u>9lqSKGNfR
> > 6Nh
> > z74k4`S*YBw+pPOoSlyGu>bBBW-O^)5-
> > LJB)HpO}9I_S+4O6@a9QwL6MwE1hM&jSC<
> > zEyZcRL%({uo^z$;|Fw-
> > 3+X&A{)_mUBiEhf6IJ2t0<$D5okBkY{TjiMdJn<a~@v@j0
> > zFXXB@YcYO%pufbi%ECWze+zig=#%twgE{uRX24yjpZ$e?^Krb=$F%$e-
> > 1TvKA%54g
> > ze$=(oc|O0Zkr&SICgOh%e!m91(fGX)@PEW_BX}7s6h|qu-
> > oZ8>^@@FZ4azl+r%Wd5
> > z^6YJk&Yn+R&}PE64-P)gXZ9)6hmlSbX{&mo+EOqs-
> > FhDu3f*>HsE({r>i801q(|C~
> > zpy|h4OF75u<6~k6$Js{02M6_fJxJe$bO`;#asi~*GT%&-&JLu>TL`?3;42dSh<>oz
> > z?-
> > jv%tNmlxR?G>#xJZ}sDHG4sD}+Z4!+HlBedopi7OnZ3qFaY>y;nPDodLWNaQQ1
> > +
> > zhT-=;Q~x3H$Jl7}DcS!`+%VX?#2Y(|CyN(-
> > eS~@JFwOU8!U{*i{*$ozBVlh4wqPXe
> > z*Muz`3HuMimXCz}oUj{4!nz1sY=d>Z==%|1jU!-
> > NeLo=HH8wo7<9mQnu8n}RPjvk|
> > zB4wj5T06#w1SuB%a>UTfo#;c(dzODq{k%a6`huYG=yx5?1dR1<9Oo!QI;8vW$k
> > T+#
> > z-
> > G=e)85}I34=4GDd3YB2X(H)%A!F>L9LvzIu>AeV3vzzm1m6pO0Ow~5hxz2E5je
> > er
> > zgOga!nz!j=TRa>F4%c0Gp)G6&`TrQ>qS35_b2!_>wlsrQBi03^ozQS`JZatoSX0$~
> > zK1tr^^JYF@pLA=o4lf5>e&?GyzmmMyclg<7>u)1&<u^>&_k7+<cGZ8Cc)iUg>
> > _y+<
> > zr=PAb0gUuWe+8Z!LEi(~X+m1n2pb4lWxrXr+&zi10&U{m$}*_$5b7Dilhd;I-&S-
> > i
> > zR>%9Ej^`si@Zdq+!+0Wl|GdR;nMA_=i$(mKa-
> > !aT(uF_jW_xF%oRLm)+t(_VJSf9U
> > zAw$ZIwv}acJ;3^(vdckv_-
> > sRTncpNQWKSkPrmRWdjkGq{mdocRIVt;`85gi{Xuo4o
> > zPex#<9-sWc!4Y*iNYk_#q{F&sGq$0gzekI0Zy-
> > &0586guIs=%9*L>UJ#e^>8waH?Y
> > z1YINzTY2Amz>~xlpPcxpPd>U+r$O595*{~fI|h)JwJkm&y_73m4*ZHHUk2*8X
> > #I)#
> > zo3{8Q2lD)Thv07lu5L5taO$)cYv{Bk18eSTjJaR8h0?DfL-23e!k1CLG5UU;XXa&4
> > zu7F8nhG9GZdY|vd!~?7hx=fykdjK&1*5SIv8(T4+f**2BvA(i%Z9}-di-
> > PrgNMr0U
> > z-CoR3&jQANG25y4OFLjz`ulhm=6pceTJ{8e!}hd37L73o-
> > J#ylXSVvh%y0M+)T3{M
> > zMw6^|N+$1=|9yl-s-4tDOUBKFjRl@E47-
> > Q0IKUjkunmO8qpS_qKv)uB5yN<1k(|AT
> > z@D!A{=|weQlB)R*FE_?D`N_B@SYHl!Bj6T48KTK|8)29e$^wl;aQVj_^*51*cN
> > kX|
> > z&-
> > jV~Yq}Ub*x*YE%Rv3N4&z=!*rmX;!R8a@2Hw|(@d^mL0(dsqRfJ^&@3vvQ*
> > @Wc+
> > z&j!mP>?+`u4&!|ZFv*8GQyPZJa<Kjq!fzUe9fl6N0Aqh=V2oMv;CM^{oavf#gO
> > 4|P
> > zL4VqC{zR4m?ToE0!)2B~Uq8;IRrcYdBgRw|;q%l^(t8l}c>gcl8*TkhUjL4@JM*kD
> > zMIV8E)|;lqb9{Xq1sycka3gfEO!EzFRP=d(F&WMie+8{@T|7=$m@bA03)96v5*
> > DV5
> > zZxR-
> > !i$@6?MHgQqJWLl~2JC!Ye7?R5aO$EghILeSwb%cUaL@VrxQ}#fdPjYH0kCj=
> > z>>w;mA9oQJrjJ3w!t`+mVPX3C7-
> > 3=hh@i%K`uG50VfuJ4V58|{BjAnD$EJJl9nvGY
> > z`MLUy#Q!SB?IC0Cr4E$E2J6=mpSqg;s4oe+OI^{&H1u^1^3Etp?$fvkKOHG%r;
> > QhN
> > z&qs<9>OAodYt6pNC|3^LMEI1amC0`Eu|-El-
> > mR?L^krCvup3z~_+ffyMxsvN2N=se
> > z_jl;AjYfvn;=9hw`}8yDI@XTT-
> > 9}mBf0gt%MHge88P7RhY;8;_P{b<mJ7FjMhXKsP
> > zpCGo!`5s#Zv-
> > bmjP?qZseL7f@93>{a3V(^bFczq{DI>`}6Eshw%mA)4xL%47vkTDn
> > zD#YK3cREe;ktXx(ys~XB@)OqHDS#cmExFi|o7a(+P2Lj$=l%9k+8k%*{e*4CdS*
> > ~g
> > zT6Oy2$5IaBPQLeNJeI;XJ%Kj8i8j3@OLgsM2TSsi_XgW!lOg%~6tTT<zCH$Qr#va
> > f
> > z>kt#Xo1|jztp<<eiLxM{e*+HF9`G1$w~ix^^@Q84w+M$`h1;$FB;2%He$XS`7u
> > fbN
> > zyY*|cPRobYV^13kcaN}Niq!h^Ncdn8!~Ox=Y54~~WnDI3fO(yON%6zJ3&;9C;*
> > Ega
> > z=X-&8@Np;u^4Nv6OMWT0aXfq&XK+ZrcM-
> > mHbU(uGBeBf(Fq(Ui?h>!)G%b0{;y&M2
> > zz?p6~<<n)}?}i@OdD;QIpy<+l$3xin;5^`fKCmqJD*j@YTZnSn-w`i}9&YyoD4T)t
> > zN|-EU-
> > REVwI=~yHVZ0`!<%WoO3+5G$Y|3OM@gPr&@AbrsZ1)jnr}s6$r3uiF1x-V^
> > zhvjGLZv>p{fBU+ZzEI=cT6gbwExvE87H{?AB;c|hJud?DRs_;DB0p54=DVakz5Q0
> > +
> > z8C#w@I4Aca$^&?QC2Nl5%UV3k@M&j*c18d^!>2~ObRM(J`fkViobs`Bpn&i+
> > (TV+$
> > zPQryq$!5A2X^Un$aP&4|ZtYTxeLeCf$Duvk&)CR4J<;(x`8+7{dk(7kVzTCIk8sYh
> > z{6Er~20EY*dzQ8;5x$y`(O2*n_RCs|#m^MrNLOI*0rt&;CF$iR>gD7=eZ$xF_iy@
> > |
> > z<3)U9?t)|6<}E$u6<W$iuq7&FPrrXR>|<M;sMC;E@ytF+j}{X=o1`i7*D-!K$y2;)
> > z+6007{=3tPUC~`B!F$9Mu}LXbvccCTWr_qmCHhcGZ>$z?^;0?WccYEm=i~Z`>m
> > ^Gb
> > zf%S;<qaMb}D3d|Rfik&+GC|ut$S*^itIf1sC$`yOhhwz(X3%-
> > af|+!uqU`;EbwQ6p
> > z2cRbhAY<%%rmdIjsw7d;i?qe3g7TYL-
> > oz2GgT(z1_H*z@DElL`Y^<oOhJ5_M4*}i>
> > zxJBbI+P#J}zz^%&_Y=jb$!b3NCNAsqf~IQHCXQ9!k8;|@YF^rBN?qXGV2MSu4
> > Eiz^
> > zb=^d|mhO+!;uYB1V!-;OVOh&#wD_ffvAzsE6F-
> > ;bO#bQXvrR%s?r`3TUjW=*j4P|2
> > z%UBkD(hJ=zair9@M~jj&?Da8U`sLHUo&UAJekJQejLL*z?G^Nu0miXz!MK+G
> > 8e!%d
> > zl5pxN$K8#D+w3dm)orTs``kulc#Q>n9e+LGjlu@QI9SZG(lCr`yh7sHU|j3XBh7T1
> > zZT`9$GZ}@SS)>WL#p8UW(;T9%9eqNZZ^32J?#pCd=9nh@j}AlDdVeE*7_xkm
> > Fvu_j
> > z8HR*wj-
> > AE~gZ7o}&?ig3gt$1{>Mxh%9AVRr*l78Y7YUnYm)&I03yPO=hiP4;)3S8T
> > z;`Qe`pK87u>6}BppTT@#^$q*PYU2mMqrJCmip2IJEw8^g-
> > h#bDTA)GN)Sc}%9$j+Y
> > zkgc`T{R40$8{HE~L(hGL+2@Sk0NxleTz`+5mK)-R>i-2`R{dodcXu;w={tBb^j(aQ
> > z1M#+4<)XKC%j!>kPnzk+APXV5=WNE!hwRnx{?_S@vTnQ6vcy2zO`<a`5BDn0
> > 2hjOB
> > zqEl$N9}ydbANOB~4KB>Dq1VI)mFwpnQohFcY@3uHj5T!<^(jHb=&`pwco{D2
> > Zx3SM
> > zcW{rC-}MmoBKolJiFia1dtKa<4`9D00{b1k$FQdj-=}}7u_qrKi~Koir++N=f3Y{`
> > z!oI8vwj%-bKgQky<31Te_|k-
> > Yy9S;67&sqYrVhkGkJ=?Mo4DL}w)B_%c`4+Qj`0nf
> > zF&5?OB*Y^Jfx|M~kLYQZT4SLXlrzUk&))}2*4++S;Cu(_>zEUV_{vpc!1edR{pl!!
> > zwMF;3GP$)Rs5rTvAWjH0ICdIkbpz?3j-
> > 19wb;BX}_oUefTYW$lov@`F_WML@P)>VE
> > zLq2`opcl_$)eXTW{oWZooc0p^{lSHzZX5Q*B=B?RwPJvM>LSl*uPVg8B=VJQJ
> > Wn*A
> > z{eb(gQU}H(9m2j|g5E~N%gUwJ-
> > a@IBI>Ws+>@n^SeF^(b*xUEtEIQAPBQ4{+kNErG
> > zzI8X#4@h#SL!QrI{y^QnHr%cF;pvTD%!86K55m_ur+~j`b>KLBg~(X!$8Pc-
> > JNV1A
> > zmpriX^i?r8b$6lv&neIm;Bfxrl^zXwAurt}zLI{mC@%1ey8F<td{%!YJH`6I8RBIK
> > zb%U!y%`X-
> > 4b;2RO;>Wt}KJ;U$h_35$h>~c?w^T$hucTCstdquy5;;Qa4t%IMDYH^7
> > z*2ojiIu~)o*t#Cf1;p|6D^4^JI7xMw!wgz#VqK7UHzn5jb^L@nmm*58BA%L3rv
> > a~2
> > zTwE8_@005q!A~0Ubb4<nPQ`pqhwmyJ@{So+`d5ncGsscL`<CJyFrRzAqc}gob
> > Gk#_
> > zPyk*f@(wv<VE=Rq%4Td)oZN$FIqA6KJYkk=e@=0}Yn5}x4VOc`<AC40S#jdbo
> > KX(v
> > za{kN04LOH!y*-
> > MPYp=t=717cTJ`462<PKlQ*b|4ZhuAvyhE(0Z=`rV2`Zw8%X}|Ey
> > zzAnf0HNZG#gK|QPaA4j5{yv`RppS_0A;gqy!upVgUp_&%e<;5U<q#upZHpHtu
> > `gJ{
> > zah!qqkNG*Q$DD@<7s(>tqQQLPVXZt|Z-
> > Sc7dE1V|a=BI=E5yk|rk~>3sC9oR8}x_x
> > zUO!x30&lG2G;ruk@R_hvNbCIi#7X)*dVOZz-
> > ;hUnSh(*Z&3c&r9iGXTMOTJj69R0g
> > z?pKEEri@tT&<3qL%HsV}gLi#A+RvZa`in8Jk8#F`ZSKW<LBF)mte5@J1OJ9Lk$h-
> > ~
> > zQ>85tbz?A&Xp7QPMIHU=q5g_a9qKRgV$mc$J`>i9b<S%x`t6uYhUk-
> > ~D~zT<+`!a<
> > zA)27^I%tpw`qF7vi#qNfy$fDgz8%j)JPDCK5xSbDiaI~|PScQ&`*8k6+0^~vbXvB
> > 4
> > z&IoNcbns%R?r?rMFHMly9=6A9uZ(oxIK;|runfX57lN;CmJFwZ#~|WpAt^ey5j
> > v7#
> > z>cAG3Lz~DC;RX-
> > zZ)`Fk?t{QPuV0(bpSw?^e?LP1GKTYsBDLy$f*20@tp*LA0b_iq
> > z>-
> > O}#gDXTG_eC`D6$P6ti7D{~SdU2}HU3>^Tgo>P_hkAZ#yZ8M_;&#N7Gm{;G1l3
> > G
> > z{`j>R9}^=*#*CH5$6Wq(rTBeGj`<bVMsbL>r(-?va;li{`h>QW2NK0src2S+rEgLu
> > zzAHt?ybPT0Mu@LmE5%(GjjI{4&j+Dzt3cyn#K|w+6gj2wB2nC<NcpRP*N*3h5
> > KHZe
> > zlJXBD9YFeZNr~}Aim&v<NcqRdh_4(0{C!+Y<+zw~5f#%f<e2xRsOzSK<}akEnD
> > @qe
> > z@~0y|eS(O8eaw{jYXMIeaqepY>lrWQdsyE@DgV7mp8RO!MH5$=690O{l=yg
> > *IW$JX
> > z+!ycenIz@6!(R1F0dATnza6si;Y#1+C{B;{xnGx3<F5c+k4TPx{UVRM-L?4GAxUzt
> > zAx`vC_jje__y>{qK>Ffi=?P2S4@|xudCBps08dXwdct+?Yw_HZCgtBh=2~|&c$
> > hwU
> > z;jzD-
> > 68V|q7Q5d)E%KeQg~v{UnRgOId{8)ZdoJ_jr~4;or<1SCq<p6DV|_@cuTP0j
> > zcP@4l9$<c<l>hD`PyRc2jvkj9-
> > xDk1(?ztqXOWb@EA!f89>BdKDSp>9ue;|uDgVV(
> > zr@IlbEr2;P=DW*rZ%!?AzfT@-
> > l=5qw%iQS~i{f`2pmmFs|4u}d`<=5Q{}Ah1Cgs1J
> > zv-nsK^g%dM;@=(=`T9ETeXPIUH*A;(djG6s*bK|A{}kyEa6-
> > VL4(oOu={~az@m>WE
> > z^&CE#`^fG7Je=j#^_=*Jkw-nZbiD7BQ5W;dU{8LC{Jzt}FfU;H2|GIs%K+>}!Ul(7
> > zy;x7~0n8fzTwgxIw8<-G$#_0<Oa;Z_T=Fl_FC5o|Tl|v`mVE+cU1-AyAFA2(p-j6?
> > zT#jkRSoD|zZ1$b36E<QS;`Ov0+aeQM{31D5JZsF`+VhGtK_s*^W1VjC+8d?CZ$i
> > 1|
> > z$YI!F!0sX~)1Ea&Yw@KfZQVvfH&_qjIIzF@>1c;skrMC0T3a|$i{VF|H<yw|8E9D
> > T
> > z;@*rsK5`s3ig6JMb5{xI^(ql=eP15!;y%nez#hYuZt}(XGaa}W4W$$H^yH!R$US
> > W0
> > zvc3s8H%wo}eug0fz9oI#QqDV=7be0VsetYpXQz{}Kkjh%;d&FXF`Q9q-
> > 7Gs!(nhi^
> > z^z%#Mw|8OQVfjY*eu*y4H*2NgSEVPwHX@E9K(}DAsN;UYez`4WmS1r)y;g4
> > 9&bfu~
> > z;uiLg)_qV;ST!BKd>Q(w9Q{%O8S85YoJreH9^ynReF^%3@V|!iL_b%IHro9$OE
> > +9-
> > zBj<U}jX}<lD&|1k1=eYdpEA~_`*U2s+2$F2Y%q?8GwsbQhIPaX*n5QehG7|i{R
> > J=$
> > zwpziwp*b>#*7S!F$6<W4hh^f2%j^XFPlS1gVNHPjjxd{^mI2mHm`zW;fc=Uv$j
> > 8#v
> > z48UFi%u35hH^-
> > ^@R*abKISklA;8^>ELweYZSgbh@TX9&(Xj^DAbbT}Gn4<Uh*dC<&
> > znCAE}@%I34L=1EkS`XT3p)AKuI{aIUo<$3L8zX6joj0X_#x;}|eb4jiQ=v2cXGJUf
> > zHyyB`Fy4Lm4bDi=#<<LPAChohN>7{T5Un)yA&2iiv@e%&{x-
> > 4WWt0n5$xhD!t=oH(
> > zT-
> > %Pcp??!QzJs_rpE+LG{%4Tp`By$4fo}5N13mo=aQ3$@BgmZb?J~5BWmyN|zeT
> > Lx
> > zo_-ba2&24#b7NS3{1AO3e-
> > YBybKTI0wKB`$^&jlNs2e22aha|F54_(GJdO>^o?`F!
> > zy!9wz3muVMmu|*78ZxARH4Sp@f-
> > FPmYx{bXG5hd!EX(iwEG;j*>^~}}*NHVS`)udm
> > z($=%SUYtu}og>P@URiNt#JxNCe#~2FlW4*^46zZ(b~Y*iyTDil_V*s=IHtX3yY2S
> > 2
> > zJT<x43%w}A9>^bIL#(}U+C<u1%hp<Tg-
> > B~q<R2fT&L?#2lq1Hnp2M>2{>kT%t+m$I
> > zWyH09n0!aH)h64aK3OYT!^<Ex)EQpRJX7N4enX@94&p$vyJ?<NU(fuBZGbLFf
> > U|FZ
> > zk96Za%)fxqN3i_pbX9F-
> > +~GHr3wW_;k`8HF_Vkr7dOx$#v+RmR>ow4VyeDA1Pe`x5
> > zC|-
> > r1>)Iry=ysZQnCCnj$86QtM+ZSm<iy2?rie}p_CpJXy%!6{xj@IW!Co8%wr3RB
> > zvo=_0irVS=?43D1xKpltzlD3MBkWnBV!o$>v+RXZE9Ii=%M|1Nlq;}~pl$JU?T&
> > N*
> > zshCqfDpXoS2iNb_9-MTBb7~0X62-(8D_(}P8r?jLLR$hGw9lAZWqqyvKIb+k-
> > qV1s
> > z2+$tMVt_b=3B-_iKAZEV3pDW7;D^@O=AP*}oE;xT-
> > IVV%#Df%EGWxttD61A@ex8Qd
> > ziGqviSFi?iq^kK-
> > @vhls;aIg8>GV{!Gaxc^6_=WS1h%pfzO*t;%_ogQJ)NAZWE$xs
> > zu$|PWM&Zg8fFW+Us#iaEE4x|0tkIT;4YD71huFaV$BbyP!OQap$s)fAYr>3FkzX
> > (k
> > zS0?=6Sg{ZFboW7b9aUv{UI)(R3r9?;kWZFFz5)0hk*Kc^aZkJ~+1i5VUPW=ggX>
> > *f
> > z$8q)J+KRpSSnN^FK>k;-jvE^+T@U4-
> > 9r>Hmyth8WzDtxSLHrH#qMHBmrU_GCy;>BP
> > ziZQFa+BZ`oqOo^_bT;HWK2(~gbd~14eMf419O5%8oRMzjgVMZLkuG<RagPD
> > L_s5C&
> > zYsdU1B~6N4H9dX2+xPX@DbbDJOnFs|i5Y~9-
> > _e>=u8Dg!1+g^Hzdr@*tqEgM?{u!$
> > zQ1&3|U78-}-
> > lcsjWsQi7nU3<)$GxuOwTbDgwgCRBP_8Q&vv5`PT&yX;8~NLniuDIB
> > z%zwWBhA%S%GK{<&?TJl`f2#^-
> > O$mccu~w`Ti$!bC>A{jqfvcboGtnoP>HQ%#T!Ma>
> > zhCZPG^EUPsLrSFHck~m}g^1U69X5sba2ED_W+SfrG2-
> > t1`hHk~9^;VVw}X%P?_v(4
> > zk3l<0SgRgmH~nSe!ya>-
> > q>1!Z7%L?_^WF|$&$2&5zDU@d&$=h#d>QJFe++FnDB}$E
> > z#K%%XSX1@u>yu$Vn!!g)7#}=;h5eRz)=gX9!!oev;k@9ygTc$tduqdT<&d31``9
> > +x
> > z&aaZLbN;c=Mxn3CEO@a6hp$9=Sn%sF0AF+gxF-
> > zGI!WuxHh9lQv}N;fTO`=75MZ=l
> > z0`jur$htkZY^{x_OwvkNa9$fSEO=NOQZE2cx&Yi62DjQU)&~DVZGi3NJVc#1rk}
> > Sn
> > z`u>;jm#9yTun|LZz8OQe<}zz9em3;rBj}NYi~KCWe84+m#E-YT-
> > $<d}Gku#0?=|n~
> > zz`x3TMvVAztV6!i7AdYgWa$lKj8>f(KST2b&sc+B*2(p`Rqtgct^dHCv{|Reg#FyS
> > z6Mm8T+=Y7*#sTqe!Lv2zV1J~Jwvq5}5)S@_>y4B|k?6MSiZyAxfV;&v&O#S+u
> > 4BBw
> > znnOmcqYA}QmbY~OEc%Rfe8;3k-
> > V)8{CvC8kCf+s^MjA2Z^FubgcT7Bet}PU;_tEbN
> > ztMkt$4*J#fVQ`+=gl)3Xdc%b2?_hvO^7ftytGD6(hY7RlTs2Cah<EFCRoKe?(S(%
> > (
> > zM%t9a0TXt!iO2rbWe*!^(bxT)ur}>B%Pld>Q9egZ82x(EW*u!N%%Y`^!YlVNiJx
> > yP
> > z_o4~QvB4e)qcwxHprh8=8~QWcyP&<YzY~yyab>l4qe<gp&?V2T_f8Ww888d4
> > &V(hH
> > z^^+e<SGi{AJ`c-
> > QnfX144^J|m{|$HIcG=#WahiFLnRy|cZDRSGO!y&`k20UXZQ^u&
> > zHkiYB0`WM0;AdfOo7h46Ke#<7k1>R{bCMp*Ae_9yrsz1&;hC^~=cN2w@yuA
> > qXyb$L
> > z7I&p6&NjY#NZDZx1>dEke^OhDJXvv0G~c<P9k6`oj}!&#KdIw5{KPW64}55s>_
> > nVo
> > z;BdR_?4KkC{u4f7AKtb1<DKi!B*nQ|7AFFD&y#bi<y-GeR)E`<!uj%3oGCvJK0-
> > <a
> > zVn`#`I_zJ|23dRA>|@5xPJ@q66h}uS&ksS~*c-
> > ?R$iwd@!Vf;tg*jUNM9OM(AU5|G
> > zDeKSJ|D~U>wn-
> > fI_b$qZFFJd+BK9TV!k*8*H*p0P;#@!8A5UK*cBDV0b|U8ANtm7v
> > z;@q`8{S4yQW_lLz{T*s&7t+v?Zod2K2OZX@B0a*-
> > )%R7+SPy&!>h5WrS=QwYpPaUq
> > z@3@?XANdLV!83}({Y!K2`a<m#?@L)d(O84_NLkO=+F5q3@op@2sZEwosMy
> > Pt(5{0r
> > z-c`Y#r-U{Q;yInqXb;Y0t~vxiTY4UQMT)d4fM@@ws_wrBV)1?>)~xAx-
> > `0h7F83aK
> > z&9k-#^!2)MZ~jyaT#i2R<Br(HKFU&CDt5?EKvvKd>ScO@-15V-
> > v^83H!$L8zxi>05
> > z8gimeiz3mASly&9tPLo;3$77{;sElnjzETd_x|i!$L@1qGURv``tlj%_$l;d0Q&MV
> > z^z0KQ5;_#sak^L?ICG;qu<oD8*3~a%N%7$4cTyJ5_gFgAhV!+H=ZKP=Ibz==T-
> > qo1
> > z97|KuP9%#bwzoxLPP23g@k1B%gR<_GC%2Re>4Z?_)~eZ}q)|?3VcUoElZNwi
> > n4j1p
> > zV)b?1iFap-5|7|sH{P#B?4f54_TwR6m3=V>{ahdh+G23FVG-
> > dtCkOugPTavu<782?
> > zAN(cWn6yJX=Q-
> > AR&U<X5lGqaZvKZ(o6a)E6(rc&Xq?SiPk86jGF)1x?%9CIF1o=~H
> > zChtf=U!4Z;k0HMZaacdvCYB`bpe}K3Jhk@g4^w{%tCSrso*Ua#c&q?%%JNMZ
> > 7a0G5
> > zl@w^$pTd4TV>Ok~DG%%t)=NIVd)$RKNT`Fhr5t%>iqukG6?jQ-
> > 4RveLvBGGPPk5S0
> > zI6-*%)r*f6Iz)aMU|yulR;A~qJ4I_c_GjTwv~E<ATi%i<oybs<TAs$a>1)7qKqPeF
> > zjKRaKzfp)etiS)uc<&hPO}Ftv-pEgnGNpq$%6jE9n~#-
> > Om95wLaVEx>Z;GBcbp%gk
> > z>&p|S0Ip1&3cmC<0N-
> > 1CQE|q6k=Fws>krWDGVtJas2`d<pg+Mwp}_;%kM*F0HDE$V
> > zI1ffU{dwN1De+i?n(an9`r>%Kjv-
> > n2^T?yOB1Ny4@}f+Bgu2;hjp#pViL@gFeN~G7
> > zpp7g=KS@nbb|-
> > 7NCN^%TekX5vvRhJC?JZRjPvm7iv0YMD?=4W0^yinv^SL)iiKEz$
> > zIeN2_(6S%<|1XJPF3xcuh3t>!E0dr*ldxC8x)j}xa@_YpU%!iSe-`tUB#d|o`@aIP
> > zjRj6Ko-
> > +mSpl$6g1&n1R3Fn@Ga|_bszYlue2$%x8Wf)JyDZ}_KHt`R8;WNrxyO){i
> > zjKUOmBhuHI>0WPwTT-@mFEZ1OQCktWOLiBU=@#67iuRY8V^_tv6_8Z`-
> > ;rS4UBy`D
> > z9&~vW;`(^@#~{v+Gw9{2a0jr5($gk76H%V|dR_w7ZO)70%b^E;mvD<%k9#cg
> > ^*qFq
> > z1o~4Xd)(#dM<En9=d#dB8Q;>tTs}wIAV4<+n)?wy;dta2d;)UCrdtASEBR9}25C
> > >)
> > zyi-r~psyX+w?MpM0?q+V*n&DxcYO1vr+4(<<JhrfQ-
> > VGo8y)Jy<(rar@Ep$}d=iOg
> > zco<9D@|pM8@wIX*dHfm1Ncs@mbL{vkxs_u@GGWJ8;yWl9C-
> > rQPZV!@md*Fb)ESo?c
> > z3QH8!TX?K|6Y2*K0paM#z!;!i2tbD9f%RK;lO}YjwLqD4;xO7f6=UbCs6!vSz->4A
> > z+VYvf(?`&4@<cr$PaklcfgkUZq#g6Y3&&0y`YauD-&DjwrXfaR^qIqr7*jrCH15Ln
> > zF5TAX;{|p^f*g%DC5_r9w&w`i#Wv}71?^$m*rs;aI=xNchi&3mW_#GKn_-
> > tiusLj7
> > zq?p`N23(IarA5Hb90T8N&@sy75|hte(4VQ`aSL>47j)<um&3g!w$MF)y=(m&z`
> > q1-
> > z(c1)^UC<?-
> > V}2$Xd%Do4Ezqa=Rjxd&&n8*2YozRSzC6chk1U(>J3RL+;=GQSw3Bm*
> > zF~^fH#_CkuNBA)2w>8eLosYSe=e?i{3eFN?t-
> > $qG`rbh&{g^;J<|0kB9(oDiUUG<m
> > z#>2Qr3q5XL{;b+r0iP*=`M+!@?%zQikNyCBhabXkr~I3s<MI-
> > DhX*?Dg^qij#+bkT
> > z6T^S7))so*&GONAVGAsO%JK#1S7GiPpicnX1Ajp3pg%zWk^aCLn?EoBf1nQ
> > MZ#WL$
> > z#rIQ!^edZ(ztcg#QlNjjc1g93Q?d8_n3RRMB)%OnrGxmoZ_p=>ri~MInYp4QAs
> > 4>o
> > zY{NGwfNwBaJh|OJ9`hLDT2mY<&I-cUq#api`3J-Ef2KbF8~(v?e)5oikO_al?jJm#
> > z4P81YkMIxJZp%j?f4ZN5IX!KR;U~aHD<Q8c`~>oJC>dvi;2+Repg%!BVfKy5JIE*f
> > zgs0#$yeTKc4kfp21kYK}jhj#3bL^^B@GF4xl#<etZ2A(+pU-
> > )>ZP*?Jp8MbP5t_cB
> > zkI-
> > cE5%4}z>r=|)mNebQB)9azN0@gZ9|2?G!ahRk{{=pR!NdQCkH9{puF0^QcK<-Y
> > zKbQ>vAb+B!`v;TZAGl2aU~<-z+g<Pv-
> > jb6~@VRpo|DY580eu6={V08dWcUcIi#kI6
> > z;5`29z~JMbh4}_w1MI0G-yl`@4Q>L=?i-
> > XKUG}s=qY2}m{=qU6M=mt{f$PllVXxs2
> > zEHcxUKTv3<4S!&=yTDA}i~CE^aZ4`r1scPAfhN-
> > z(BKR3eKarTY@VmEd;#X`d8RKw
> > ze@(^wZutUwp3N7aPbaXy_m6x5@-
> > u*a6v}UojlX~07fAkJ@dfSxFYM0>jPuXy1GN7G
> > zA0UJ^i41#!GoL5Cm@nxIl%Ni4J`48+_#TYi7kCfpGVl_>987&ag!#4!b89pAN%X
> > !_
> > z+|8Ify_hRAY(Bsi_y8XG0Hd|#AI<%Zqs;wWk8tj%z2TZ95^EC9`~8YBZn2*^i9R^
> > z
> > z{cnJ`Ch*32U+2r5_jkHvw-@t1cwEo9`WwJ$Ca!JX-
> > <j;y=Y72`nD>7LJWEdYd7t~n
> > z*1XTUN6h>1O<dshi_ZHv*XO3cUn)eWODMX}On=$W`2})E+(JLw$ul<aC46cu;
> > v}iK
> > zJ4L64cPZ5bd>;vLp4WGo`K8D!1-
> > vv_bdCXhsGMli%Zbm7av_!nj*9uTG?jF*{)Eqq
> > zG1jU31z~X{#@=z3lJOPn$15G{aPEj>P2>Jx)5y6#g!Pesg;d*vy-
> > WE<tp9<_cN93!
> > zKiVsf1`$UJB93$nF{A^yG<?TO2*y#wstmMML+t5Ylz|)uLX3wXjr#!OCLF_R32Z
> > HV
> > zn*hF(LLWZEA&h7EIj(5YSq8YV=bGeZTu;Cc<M~!U%5qMEOt3zJ%)<9l!(vSKI2zl
> > }
> > z_|lwz((d4GQf>ProFiE#WsL{!DYM;=pxtbzgm!Yjn6acLtn1kxzJq)k@g6_M+i9=
> > d
> > z`bmap4Px!mcsJsN@GaBL*b#laE}Tad4fh;_k7dM*BE`O5oK0;{U`$cQUh~9`tkZ
> > ZG
> > z6m=y+E_$5~tj$r*Wly6FWySnP$d~@*HaxTZqmk;sW5DOR6`XBx-
> > vAlXN2mTfRQhY!
> > zuk9198g!ogzX{&kfq(c}V?L42;G7HIWyuJ6&ZLLbGqCF|jd5b29d!zvRng$zGJYjM
> > zXVg7y_QO!D%7|yuFHQ)FR`tZ7(|<Aivr~gk?(O(9#K7`8+1a%l@Jq30&Tr@7T>!
> > ;}
> > zc!*a5kDAZVvFSK-
> > fO%zZd=C+MY%}w`F5~?hfp22^kr%j@?Zmjka}T~rB|&Co864lB
> > z1D+`Z_5)+HD(DhVHhoer)|H+xpZnXVOrINZTK#*d&9G|<eEw#mT~>@3d+C
> > V(V!t1K
> > z^~UY8Q)B;wU#ssmwhMZ|`dn-
> > eWH%K19fc<KmFH%#NYck?2>bSLV9ok{&<$NDInyKY
> > z-LvbZtQE*_GI0dPGTQYT<ImVgED2sKIXx!ct-
> > xWMc}CERNps)pYK$YRE$k2DY(4A7
> > zSxx9B-qk<Rg*9ZgSw|Q6z`A^Ya0%7|QTXoLQmGc7Mcx*$<?mzubr?s;-
> > ?>!Enu|QF
> > zW%YKrz@r~NQI9gagS5$~daYD@2)G$brJ`)$Ej<r6X9zd67<LJ`y`Xy;@T{{L{4VRz
> > zd#q>|<BOJz?fnMb_u&vyg4ZFA%0g~Q6Y`06@E~JOap6*hc#Zw*5MB9Gaq-
> > MWI`-)V
> > z;!EkcxbEgzBne}p4}G*5ZO~A@Od$S+e7*yt>xUA3l<Pv`;Jd6H$05&9A=cO`ct?
> > AA
> > z9%}{GP{FUtV280c=nixUwDv(C8J}!bp(mjXiTU{6s4MqH>@yha(#+iN;kyI+c_Q
> > Eq
> > zD$%-
> > 5YUu{9z+R%x!;zSyR^L)jd)G<>eRoL%{Tn5m8<Pg!Zk7h#xmVKnWkbzlS|P8w
> > zp(A5jF-GQwl(DUl)!b0wSbn>3Zm4-
> > I;vmc)+lp^!B0r`T=Q@xdgU?}TbE&I5cf~mc
> > zZOMV2?pNnaMbrU#p;Yu^<nbL3#2Rk*V~z+F#<qs0VjSX~x=?dWYY6Mq5Z-
> > AE-6A?e
> > zd?&aR_o(^1*{`7}d3Pvk!R|ivYbZ+D&3Doym)89W&hP}6T|j=oq5SM)Z16~oE+;
> > kF
> > zl#|1AjB*Mf4LjWlef%rG^QOzrHog;<$XM6o8_%*B(B~txF@!d17}G(tv#UVL3S
> > gXN
> > zc%|AVv@_v4+4%@?pEBiP$Mw&XveF@w!yd`WeNR8$b1S(9_5%1@N5KzW
> > EoJHYu1Zeq
> > zd+Kwcy-gOc)F*k7?DRsH3SD^ru-
> > veVD!%hPh;KcHu>Q86KkI>BY8VSAp|4i_f^Gb7
> > z)PXkbqn)tg41YL>_v83oMd%vqv&!o4Uz>6=_UZXvj&O6Y>T70Ox*#Xo1MSO
> > @@gmHt
> > zS4g$o_grq~hubXmD%dRGHO-
> > TpGl9c>Zu0UAKI?q(Eak|t{x^IdhcdB`bB;U2mGw6E
> > zz~ABiiq+0Tb4Sk0oSUvR`SIiIX)(Tm$-bd3(_Zncsg;Io^fcauz}eG@9hU)*ve9xR
> > zXJ7@|=a6bCCxQCxGPCM-
> > U9JukUnM(H&j9x?SqIvc<2Q9Fm<RiY`Oo`hsrG&D!E&Ck
> > z$=;$vo*icSE|lkZ>w@gs$3eHQmWo0s3!3_w67r+#3G9(|F5qKxf7dD-$^-
> > xK_j<3A
> > zijJ~u<b}(=9adJ%k(`YaG0yX)qQfjZR<urseG*rT;tTQq+b|j-$geR8_2)`O-$Ne#
> > zm_D=*a%#B{jh}_l=*oufq@evdQc=*PvCouI+GkQ-
> > 2>Y)WqQyGxw#%OdS>n6iW!X~E
> > zw@q3-pe3Qd&?mk_kU4qO&ng1OZv&i1-
> > #in=eNOA_A^VN*H$56wU+8klc?fo)X{J=m
> > zy?E|j(&zsDhr-Evev7)3s4IBBK^C)VThe01NxTnLascB38+0x3%UaXKq!X`T-60gU
> > zQv;9KuV_8!b)CSw3?(d!cU>PR4=13XEu`TTC&@ScYQ7gsznbmS#}m#}4V_O6^
> > XIJd
> > zJhT~Qwzll!Sicmqn})VzN=5UKce9z#v4q&@QU73DH)D#N`(2ly-N4-
> > m+*!cWpgS1v
> > zZo7~2U3@>ruJ;RV^-=G|RLLo2LjNw2iZYPLcCw!(%$-
> > e;BlW+JG;B7V{*|9)k&nPb
> > z0_ME#ZIB0bfIdIYZRq`L8~3wGcbO@_0mzSOo-
> > IQ0*K|F#_VSyDeMH)2ervY^zDf^l
> > zF#2SlWru$UyJ|h_<MW8&Q|h{c^G7_VPWcAGC*D^(p-
> > qvTE~gQTg8uEd`p7!}v&3vi
> > znb{7sZ#LVP0yueP8?7@)M*9*w=7BHDg85&@Gtaha&?Vs%NAIGX&kbTONQ
> > 5m-=y(`=
> > z+~f&*b~Fea+GVWiI{2L$`eEVx*xO|J$r9erPD5K<iIUSFuWcXd=OdyuRp%4ub
> > <y^I
> > z)ZL4^z(;E@&RCQn-
> > 7^vM+9W+by{`s!lJ66MZ$Nv=KhNglyOR1hjp^%dL7vfWV}4*=
> > z)_KLRqyL`3^)#;E;j*78?@vSAd`SK>*3Am`&LcXWM|__8(T}xJ2xIFQ`k*UOD)L+
> > m
> > zJ26Qr;<td9w+`zg*4sE%b|yU_pMh^Num%0@{jDg%{G6YGIc6KvZwSuU`Msb
> > u?HRNU
> > zWzt(Eykl*Ax1RlWsR<8km7GT&ko3O;Fa~hFe78|v#<;TZ(jStX&A@|?*4+jFhq
> > #$0
> > z4bOv;^XV4J`HlM}=i87E{I+g>o1ONc&TN|tyzv{*2duO?|5<71Vh-
> > oSL$3;b{#yyW
> > z;5ezMhx-
> > D*6t!NY*>>xjP`YlKwu8E;>jcLk_Dgy&E_lX+;{rUmxexvd(pbN&8nUI<
> > zSQ_PgDbK}lox(cpwp+x)*TA>Ad*dYM#mKwioTPtKoBA600OZ_fymQb8o#no
> > B1l}d0
> > ztW=!e>B2lrJjYh{2jBa!{Y?a{`}tjuMy#17oZ;sBg|Ps{Vz!Uaealwbc;+0yZ}nMY
> > znm!WG^E?TCaz%-K3N8<Ig5NIy&0N%DtZi_n$r{gyx!j3&sZL?c`Q@(sE}XX-
> > I5()<
> > zCE9JyNy%d3YaGK;LRVhF-
> > w<Cj&lnnGIJpDwgKmRe*dM(8OdfT(3v|+mhZrMcc3i(~
> > z^NQ9jki*Z;4(`*i2GVp}=s^6(@fvl-
> > qOHPygFfnaVC*G!oWwU6G|+BD{GkW_4bKDh
> > zLzeG@rb=B4JNG_-Z-rTL0`*52>F~jI{U{uMCs;q%hB^_uf^R8f94Z|z<J^s{zjK2z
> > zQkG{5{O@s6?M~!vNy0aQv7ggFN!h(6$+KJU=Shy;)XRR@85w7WI6hXvR*ZPh
> > rqDb)
> > ztT>ML)d-vmbF}v1Y*HWWL0_TL+K2T@p9AlOT_-yG*NTDTcOi|nO8=z7-
> > F?ddn<VY-
> > zpEQ4WU!iEF-
> > G6(d7<gwhY{4XLZqF2LF23hDw{NO8xBoJ2?(r{abKjn+&3$JU(v#%f
> > zd>2Wd3s5Izu;R1D$MD|qMDj^JgI<&z#9DPM?pOonw>iW~%0CikAcSzV?84gf
> > 6UbSY
> > zpE-}PujrR^Tv6XJuJZRsOHSBHcklN_YYh4e-
> > ^u7~zdeu_xLD+2PS~%HU7U%fK3leO
> > z@Q8A>e-
> > &)<5v8>s@}Pa}hdlZrkA4O1r#vVJ$ly5SMtQLPmOS2utk}kW$c62B2Xgyo
> > zGJ!v0tZz}L(WVHT8H)g44)`RIIP(;RGf&aG&s_&vkh6w0Gj$}?ECv|k{MfYFPr~*-
> > zk*s#AV(r6+MOAL^Ms?sVIqihk*|xnG<zk?tx$DKgD@~o^nCJt})6ipW41ALr@
> > J(J3
> > zwXr<wCExup=Pu~7Pb9RZ^aC$6RqFg1#%&1pi+epu&ZHfmKn7f=<4pGezJW
> > Gyqpapm
> > zHtA!0%<hH%(+ipKyaC7f2Ur*TA$t)Czv)W&{;^W+2RM__2fRMu-
> > 2j<Q0B*F6Mt>UK
> > zp|jCoUy=s;+S#5B8ZnadEuQZHUI=)(pwS-Ll^?{Kpm%CSt8ihjW-a2co76{KLfn6r
> > zytavfLG*L)O31Vgd5C9i#{O-8jXKbWb#dQiQs-vHaiR};cLZ`eHPzF3x~eL-XBA>v
> > z(Z{yeDDa~)w{)lFh?A#f>HeUK`1dw(5^XL?%M>RO(<q6TMFP)N&BXO7^uU7{
> > ?tbid
> > z>@;~3i23)Ld|^N6{<MAKq(GeYdFXxG^YB&q40=H)VpEzp8N_=b6Cs<l{{uWcr
> > @e@A
> > zfjeXBY5n44G|T-
> > =oa~Lo{UveIk62b(7wE)@656M<Ea{}+H%?xZPBP9#8KiBMPHN-v
> > zy%fgrmq;gr7m1Qr%r*pZ_KodRagOa}?471<LAg}G9*|DDT)6vzkGc*r@0ZA%V
> > tjWc
> > ztqU|!XWA>$N&gJop8|dc&ZiOY4Zx7soC$acW$=xc7XUvkuiM*+F@0KA_a4yi
> > oA=@!
> > zDx~k(`+fcX^}XNI@0<3%fcx*{o93LB@7kM#GpbLBGjlQuIL{@!*-
> > kN4On~mL`Yzf*
> > z_+RmNOTPNS*B_>y_BN{n*LLN#Tq~&qe?^~Ap3SiTedhDON^cqHox!-
> > ^8S#feZyVy`
> > z-@tR9yzb#%dE?&A7)v*b$G1}-
> > L>JBvOcN&;qra#RH!IQ(ODFoM56}zhD$Wbt|1oF)
> > z=e0RE8||eY)d0r6Bm8~XJ-
> > q*&&=sjYjBk_NKS|oO_cZGJOy01U^W<mBq>dkpyg5&u
> > zz31Vll=>mqy~?JCH_5I!38wtgFCag{DZhMEetnSN?T}xwq;+yF@rbN-
> > Qihh?J}({o
> > zy`}-TPREcN`{of-ZklqBZhIo|Jrzya{O~S($AY%Vk8cv}!uJ9<;d@^9jxRj6665lz
> > zvv)tt@pTHZpFfG(IZr8@_nuNFzUIYP+XZ|~v<X7KuUk{Z{egSbhtr(uN#@NGk8
> > G#E
> > zcrR?<F_c}4JlNp`8U7A@MIU9y=Md}%eWc^JV1Bz%47^_|2Fl@Uzh8>?QEyQJ
> > QwM55
> > zgZ;V|wy|fWI*=ly*ZfEq$8>F98#%G182r!<N$^)T!yYdbDJ`>{k8J-T@KJxR2YcrD
> > zj^Xy3712_OHsS1DE53`-`nb}t_X_ZG^`)7)sh5g5pIx#z_bCPXbQjJ$!B#C34{gUm
> > zJB*z>hsMF@m483ve?R2E(9~PX|C^@#5oh0j`qOm}U;1a^JO%yzUD{1^-
> > oZNcJzU3e
> > zy$^ZBqTZ4(s5{o!^GNCjj+LILg?{cr!#lzpFCnD)E+X4wukURoqV)st_eFKgYGbjj
> > zjh2p`!r$uR{LlV8gV-w0%DerDDfE|fT#0QFSBqkQifCoOe-
> > G(MrY}|VS7zXSCPm+K
> > z$?q@6JQ9QFE7W}ILTDnMv(@}V*stOHq5fR`Jw)gbp0C3Dif@Wq#C|*d^FU)3
> > V!qIc
> > ze)#Oy{R?gTN8{)F6U07$lJRYVO1xjc0`gsn_xg3dz&m2yx?cAk6Hd1O2zYS+3p`l1
> > zV7^Vh^rhLC)A0AEv@`0%680VnFn8StTZfU@+W2GPymY<)4DEDVf;h>!CIo*t
> > a(%@a
> > zj-9vQ|9LQ{P&VY3yq5o36p_y-
> > !6)@&gl+(jW3dYKXiM9zd0)4ql4(cf`}MgF^RmEv
> > zLmIT5b~=~-
> > LKNK?M#Heh77fLqf%!0mIhW<J*OM@+zV<m<=ZDeiAHk1fh#wX6@o4;f
> > z3f=tXVNsM7M#t{U;JYkCJPDjPAWs)xfG5&>8+<YDU~l)^2Sx4VaM({pZGuV1jy
> > rx7
> > z*f)P7oV25CgB_RkJ&V59Z8PSqkbLKd9^j-
> > Wv~BOX7k&rqc@O<H_<b&+Z4W&pu#ReY
> > z_<-=w!8@KfzlXmE2-`znu<u^X&x-O|AIj05_hQ}HgL!YNqbncrhWviyr@It)-
> > $S@#
> > z-
> > YgKxU%5^QLbqs3OO^2_nsL^HF?>F|RD7ds>O<Q@m@oU~wGY4F0{$K+Pth
> > m)H;aMK
> > z;OnJx-
> > v)M;{+=wxzvgkI?&yKPSOJ^YcbTVCLF}LhzG4XH0u|^f&w9{SybV3&Jn<gv
> > z$bZ0xJqtc*8{USFa;|s}HiL7^+0E)ee~UV>RiwOzZ?)$99P~n{3*WLB5F)iDgu2pE
> > z*A$#7u<Cg_RedA_G7PWl1Jv~b>iPh*SqJN4ovgbTH2XkP9-F$O7c>zY-
> > 2X@Hby_rg
> > z6=#Qn{hV-
> > `J4WF>6MXlB9^U61aKxwX;5sRUzW5`2=MnTqk;lED7tUK8+ER(Xk4G8z
> > zf@V6}O&QB*_gNcFwwY}wkCuGbn*3RE<@`l@#}UK9oY_6j<dyQ=0=ne&2-
> > f#q)EUsm
> > z--aCcIp)}xg=oQE-
> > R$=e^Lk54If1#oBpYR?3=ZzY8SD6d=u|n*a+O1`tTy62@%>gm
> > zSp2ZRmzq4WkFB=84V}Y#pRJqYuqOCyu;k}s5Th0;CpccpkPdJA;j@Dy`keJNV~-
> > @f
> > ze`c9=okIKU`t>^M<5|^T;@<bTI<VOheNuvN-
> > w$05wHW%`B!sTd)C<ZR?_BRcOW!3-
> > zpHs{_>~?iDJNDvdgOi@ZISMOI@gw*T0&gC-<GVf?H;CHx$m<1d#`-
> > +?#sK3aY!}Cl
> > zggU-
> > $mUW@;CP`VjTuZ_S*@p4EziXRt9>P0+Wo@E%1@M|i;?5y1d?+2)|A=q~@N
> > K@b
> > zps2kCc+9(75wEG^kLlm>d0$EC2!hvB#q+U8u>fo9g;-
> > lJ!rFQ<*4B)dMi}dFGj?w7
> > z^SK$vVoagjth)<7+V`=x)m{`?`u^2k;VfW%Sl_}|bTfWz-
> > =F^k`ox(2U=+qn6#4<W
> > z#W=k^eqqJI8RxymR?j}jAozmFYD~mBw^3wWf;`X2{M_Kbi>!9!%P-<h1msb-
> > KFJhL
> > z?e4YfyCBow%4+9w+-I5PLg0V1clL>=VIRBx56WUMD&qxF8;5-
> > AD($2m8^N9kV<T3~
> > zUFR3=V7#N7aXQ3d1m2s`V>!0=uq~(fPT@o&uAgY*cR$+W+KoD&#NO52BI_j
> > 1|B&Cu
> > zrV3~9_EUM}_YLq{f_u~mesgqw)#p%lJKFkFQPhjFpO;^ph1dBF=aqa~vS%!jXF
> > ?cf
> > z72xS`gxL2s>Y!c=@Wby~{0(%dm*Q!W6~H%mdVemmx`6Yi5qQ|QHSxOI(RaX
> > W`nhoa
> > z061!@a3&)5$Nu=WS;p#*-RKWB2%Q3c2IkHV<a5j%y1g$?la-
> > bp^jj02OU=JSRSx-Y
> > z786fMJhK7YmM+9~F4(CN@!2D$o>8aG_v^oB)@$nVetZ+S)&m=JI8W4m8+
> > m@jP58|K
> > zf26T58p1pF7)$zhmMDvKe51xCgd2NIBgTuhPc{p_@)Nc?sKZ@|D@kJzUz#my
> > 8(0V4
> > z?bZ;Z^WPI)tVN1^?pHwP^!L1n=t9>lp10WOVeIW!Ulz3i{C%d3S)$gDJnAd=%>
> > !c%
> > zo?ZC6azkT`ZKpoQ81D?$h0zKf5w(Y~r+YX{)Lw7WVjMbwK0o&85O;W7^NJDs
> > bQ}vj
> > z6A4?o58s;KUam<y3UL-
> > o;F)=WjZ@yx$BS9FVN3LLdAco;9b(@ylMmWG$N=YrW(}SF
> > zaUBv_681=YFBe6bz?**_?(mtSu7g59XR&jJ$hru4o8?6P9R|w8+Rw7vqe$2zeS
> > BN7
> > zPqQDnPf30I3-oX^;;$k2?9-~s^Bh%E^QdcQVHX&ijTAD@1Hm4`x8Lj#-
> > wOhtc$Gqa
> > z?Ppb&<b4V}wtcLpxOjoDq;$c;Yf2aRe9L^U%;JVX!@9Muxvop<r;imgt7`73oVl
> > UA
> > zw7jZv&CJS*RoOGIuc$0qwQ}Z?>azMk{f3##D_2y{udlwdvVOsuhWZUfHPvex
> > W`+Z<
> > zC>QDH)iGWFBkGzYjNfIrjTP{`Y`;PLkUt6+-
> > gVWhD`qaMZK$qU<Ey!Y9QhV3S>P#N
> > zP`aqFFeh)O$KxwpoSQQe#Zz3gV8Q%F^?}-
> > |>hiVo*H_LwA2NS|cln~3o^=g1iz?TE
> > z@$)cD{zhSH1Uu)I3#$vHGc&!*mVxP|(=)T?&b@N_bW!MYRRz|%ynzZ=arM
> > eI=!$y8
> > z8}#25Pni#2@K$Y>v+iH8`2QOEGbSJZQ@LGVQ&G8={Q{F;Bo^Sm`NAa@iFy$b
> > wW3N?
> > zi*m6RkRnkiuEE_SD)gKNQ3)LJPs_~*R<*d(#I9Vk^2?QL1a6~g;TP)g<tqd8>jQU
> > z
> > z_5Y~|maS{3UDq%=p|IiU4XmxazVeQm`VAPcGjFb}uR-
> > cY41n6odJss@^sZa6qO#sK
> > zcdjcl^Uj*;3YUAjD{H#z(o0=S(CCIL*E}SJ`Fu67veqvQ`z>Fx#5Kc}x%`@?B}=E9
> > z^uFY}a{6fP{D<rn*4$AWs3*U}9L}#?+fa>xfN^e;P9MptD6UyoUtW2E%uJK>8
> > Q{nD
> > zIoLn1y6NJJlCbkL9p-};)^$lB^OB0`SK<D-jcR4tx|Qg(;)aR^_4PC7n@M!q!kYR!
> > z0u8QkIgFxJVbZ3p_SV!i6j#>YSzTVawj@xtx{`Wvp$t^E@|rsWD=QZV)>N#nJg
> > >@?
> > z#U<y%yv66iJ|Am_o_bcVt|{01o1BdT15-
> > s{X)SBX5}BUWFqC&xu4!;x>ar!+;nS(s
> > zS;AKtSZ$P;=hE+DxQ^oLyDLABUbw!PUQ?jHb!!@`@2DJA*cZs7yrC@NJ*(T`&
> > 4Y-3
> > z<M;VwIlq!UToh=iq7;Wy%Nwd!S2tAa7IY~r>3MYxqn?*#4TO1fU27q>niZ~0P
> > U`a)
> > z+;C0dg3=;S$>P!?-?EZrh0B&e^spdSfva6v>$9@5uEYgfqKiDdiJz}kmaZE91!scQ
> > z5SfwkR<Eh3UbFH%uD=*%)BuY5z*w{n)-
> > aq;J?A`VQGHEAO?l1gQHw0CX{cVYVd1(p
> > z<uqdFmGxDwtX|ttuWS5ynM(tAoZm$T!IIk5RNPrtiX}DWtIjJ~R9{_FU)`|5hBIT
> > H
> > zj)^g`U_~__eU+;#F+Wu36wF*S*vwtNrg{xjC9oQOJpyHzfTz4}U3EQjN8^(kFq
> > %LJ
> > zzag-C-T4i3j}9(gS6f?C-%wexB(P@XI&0|Lr>oB~C^!*9CTkj~L)HVjIy2LpxOCUI
> > zzG2x4W294qskWFlbR%NJGwg411E{V12WX?yu@^qC(>T7fuFRg5Gdp)qUcSd
> > $IDf&y
> > z)^8Ik#FOUz1@r#0dH<7n|Jb}oKWN}jH1C&~_bbhNzlrBD)7P2zo6LKadEa2(?=
> > $b)
> > z%=^EY_dVu)zj;4m-hXZ0|6tzx%=`Q1ebBr|J!J41Z{9C5@0Xi*k9jXK@3)!vRpxzz
> > zdB4}ZKVsgWG4KC;+>fdf*Q{x%tX~tLUAeKk0{+j{u332^bK&a1%C*pld*J_MU
> > Fq6H
> > z)yUIt*;)E6FUy*4GKY|fW2nz`*QQNyuq-
> > NB>w&K8)pT+7nsuvJyI=vJP4mP!F>b60
> > z;^Z;Ud|nA#gzv33)a%AGGqZ59$9H8eeKkX$rc;%&glBDeb@dR|h^$Mp^48C|
> > Br9j=
> > zf7$CV$;xKRcnH4>04iph|I4Xxx%hY$|A(Bsn>cQUTSLR1m6c<)$!P5mA2x26)m
> > N{C
> > zH@Dgx8#>qUutulFCPAo_+{lKFPNjHVIeeP6;>JKdEZ0ic@-
> > ?g0)ZDekwP^K*+NvSw
> > zeAv8(O4q_b^=huIEaV$uE6<0TlYU7}jjQ;M!0OdQ=vXDg9hx6#2*7q?u?7#Vre
> > 0jL
> > z=1y443OE_{u-nihv3$*1%XkSc>P&*{MFBJJf@@N-
> > K^SwcNyOlUGfHJSY@UF#@4{5;
> > zt6Z!5xogD@HLKTQRw%5guU}W&U?mqqi$KzKePu;;K<NK>;WIsJR?<47riC@
> > @)>H_O
> > zE+W_b$~DzGoMdZj)~qErt~;<QfZ*_Y70B1DYtYNBZ3xix!ey!_uTWGoU8b94a
> > ZTa%
> > zMJDGZ3rnm=YeF0nOgUZqhHChmt{W=r*J2_R#g*mj^cm`g>YCO1^oQkdp;=
> > <VnhLhs
> > zXbqTz$68t8%FNE64tLH<&4M>!A}*|6T{$FwYn~8XP}JAlQH?py=&a9Y6m*xV`
> > p)IK
> > zIqPR-`zr4Uz_rkqOY^JmtX^AFZw$82PYWXfa@8jrW0B-CAjS-
> > 13?6Hqu~u5H(v?N!
> > z6{QQS*H>0}8uV~SDFD|8)>q%L?hee&<?wzCGDZ<-
> > (a=iiyoqIKlCvY}^V`VU&ABks
> > zjyA((tZ1fVDToSD8>UKK7cp{;_Lym`0&NBV1^l_@qSLnC{K8@Yi-
> > wV0SY5xi!H|$?
> > z9*44^dNpe*M&v=O)~#;Pmjc66{XMW~SlPM_Ogt{REbB6uq?xWOp?bqbpcj
> > U+z{cw$
> > z$<3MW8ojXV^02ZfVR;}%32O#gT)DomDo|fivm9OvWNvbS>gUaK<xCfD#Ok
> > P5V9QV*
> > zGG}ATS6o%Sq5*uJ&(uGw0!*TU&!>u(X$B{zB3epe(*^K2tVC9cFQiGM7P2^;`;
> > SM9
> > zRrWj<U15r@&s2GwR)@HqOPx0qDop7iR!+k<bhOge=F#-
> > uZP0*Ik+mMnp|A<tSBZGv
> > z8r=yVeL}ZsbXd_58XcB5f~QgZgc0Mwl9k!y%0PX2)d+<1)Q(ygR?4srhMBaK+a
> > @g=
> > zL!VnQESrM@!(z7)g0vAA8l4aK(0bMIn-
> > FL<RvK4hEM^ToXRQw)o?ztAHm*R#2)DrJ
> > zTwQS1@YLTib2<DQgd{2}VDLZR9AN}GSiZ2PcEgD9mk^)i#HMP;KJ^5zx&Jq-
> > Q&x1e
> > zuDNkc!5!Tb9?TcPSF7v4eC58sEv`S?wP1I~M>m~w#Qb*f*1K>2&v$E={qPU#_
> > GDf1
> > zdcqCP2Y!;<_P6;DKmY8k&5awrdHG#;J9~cn#)Rz)#n#IT4qY$ye!S$Rs$EOI^S8b
> > 8
> > z3X0_If8Oog`lqRR*FJXk?mz!V`^xPt(=UJG(~n;Byp(rWN7X|w<p=JaeCzW`)k`1
> > 0
> > z{9A8sC^>V{o-2dNh5J&j-_;d6=F*GX>e{cIa!c8x;IF{o&+zik|NkpSI74i~K_mY1
> > za7ab}IT7(6<(GH8zv9V=>gfUp39Mi3#mTaY#54jX3OOi5+!PTfA`ZPYJK8ZO8fSH
> > P
> > zh_Pzi%msB%9;zb}KEAcoU;gB$cmG9f)$57I9;tBR!n;5Q9n=s6om9|?1f8hJ=x8y
> > <
> > zptHb6XS^eAko0P!g;23!qvE*>S1)M2NP2iCtK)I8X)fStQCQ#c8P_ork2omK7Y@
> > X?
> > zka&U#$b@*cxZJ=aj}|?=Q>4?g@K|o^D0t&cye^ZTigXZHRv5iFz{sD<en4I_Zuj
> > B3
> > zl#JoB_yham5U#9$f=61!bD4PL&(E|;&uRzGo9k`zn|N6!US=2`&cy3@njDf`c)l7}
> > z8ZMlP5?A1IkRX08<tEvMJM%Bam5GZq9oCkTLntn!nNPR}*Oj=e@*+YwTu3u
> > t#kCq2
> > z&Y2A5tC24b<>Ne{*okYFEnjo^b^6RJ#KrPoHuGJ$-w-
> > ie|4gKp<I2ay`lsQpMs6A6
> > zZw}G{TvwU-myeQvr<E^b(;3fNRNfGOUZl6-
> > %EM*R7ZI)@`fOJTuGwZj>4)bpvhq#(
> > z!H8l0NcXF_@LrHkpXI~zS6TUH`K^&DBlx=u`D`coWBKs>N349aycRVq|7(%A9T
> > (ee
> > zwU1*^gZ`?3X}GpPkNmhmUf?ETaZxu{A|;nDD{5NacrZ;Y8%O;YPd)fhX4+$&P
> > Y()7
> > zRvZxtQF-}SefjFS^YF)~##8YzJmbV*pEO=X8bxE~=@lX4FD-
> > 9nigz4+=M|Ooq0h1r
> > z;|HgrXdH`{Xv0PS`oLS6>N^gr*2t*nF=Jz5$Hn1OFXm7E*NgrSYGqN~rUfI6vEl+
> > d
> > z-
> > +>S*Q_7MiB?%YpRV{29@rsas0@t%)c=3Q;gNr!AMsE)AT)6O0r<aI3>1{Rb)ncS
> > I
> > zT=?$P2)qe^k)Hl@;~QSW?dJdVoBjw&1;U*u+y!oYzg`r$-
> > HC2@fdH5(WCDPE!gLgT
> > z<-
> > R}^B#MFpcVePDvA|uB=q^ASC4hxOKqN(w(~Bko6?jC_OQIOdfDB6mgak2=t&
> > >bl
> > zOf0~Ei3K3aC){w2!awQ*Yy6Fl9}y7|9UUDL6B8E~H(|nrgoK3T<mA-
> > URF}&&ZQ3-f
> > zBWBE)k)55LmzSs0FK~*2G*K`UT=3t_0+CjLb5LlDEyD&KJtHlx;Ig!WnP~-c(h3Ur
> > zZ%#ql%!0Jb3PxtwprdEZm{D-$jDp-
> > 51y{`|DB!=V3TEUM%(${(WQGkodIrv3Mv2ro
> > zk(ww{Q~56uGj*znN*$SDgN~jN7neFAE;TVOH90OdmH(1c;}TQjCZvwcut7)9N
> > JvOc
> > zN=QvkNKHvdP36Co)P&^JgrwAw88+zX8M+tZj26yV;dJs}EdER|{;IKaWQGkod
> > Pa1#
> > zb8NITHrg2%?R4^AoHIJs89mlHGQ$QPJtHQ@85`pq7vmfs<8<=hcxTKwXH2Yf
> > WQGko
> > zdWJbt&%eP|bNtia;8?GNoxceeZ69vBUEs6J#N&Lf;cBqqAxrQg9(_2{<J`0!7eA
> > 6n
> > zdY9mtCWV)s9^|UqEPK5uP7|f$C7bkINUON+veipGm^~ejZlsEf(**sBali{9jhlY
> > q
> > zCQjoDngGs2^Kp&lU;P5`ED)v*BrO-NJn)f%i*>RMlW@^acA-
> > MzRU!Q%E>9TVM8Ie#
> > zL%>mO^z3$=ZKWSYdMfA<?<S<5$7Q$U#KZgF|4-
> > Om>WGHEKy!s3*J%B95^&YTqn>2q
> > z!uxl6zoKjPzF>C}58s~E=@C!G^$`%*|8~4X%ro(*pS=DahKFq3Z+-
> > %dY0v@o1N|bL
> > zzt(jCH(fUqa34ct;J~NU>#Rj`3Sqc-LpSQ<ivG^!?<kL!DJ#pRJIkf_R!U7}(#sXn
> > zwlYbp5F4@GTqZV^i3iKXs$y+rhPXXLT)#xydY6`YjW*{REp36eXtj1prIzRSX0Oz4
> > zzeDr53PF><{}sA7NhaO-
> > Lv;B^(mAHsP8HW^;~h;GZ#Uw9_`PJ_jnwe}=X;IkD)au|
> > zCSExFuO{50r(J*^_2rBH&=m0`uAFC$YpM6jEIW-+!UO-
> > mA8ZRh0(V6PHV#JnX+rn`
> > zuMIvQd@-2SUe!_CvA#p=xUXYt#}ggFj^{gG?0Bi8tK*f9-
> > *o)GBh>M3#|Ir}I>esn
> > zJ<dJJdt7@m_hjwK+oSGTyr*c-O?&)%s`k|GS-
> > (fybKjn=d!E<>!dqdpaZ{gL{9Ms<
> > kcnBIcPuq3huHdfccfGjlrCnXSUfK1VUBBOj-1C0_AJBKq+5i9m
> >
> > literal 0
> > HcmV?d00001
> >
> > diff --git a/Drivers/ASpeed/License.txt b/Drivers/ASpeed/License.txt new
> > file mode 100644 index 000000000000..3dc49d3aff4f
> > --- /dev/null
> > +++ b/Drivers/ASpeed/License.txt
> > @@ -0,0 +1,25 @@
> > +Copyright (c) 2020, ASPEED Technology Inc. All rights reserved.
> > +
> > +Redistribution and use in source and binary forms, with or without
> > +modification, are permitted provided that the following conditions are
> > +met:
> > +
> > +1. Redistributions of source code must retain the above copyright
> > + notice, this list of conditions and the following disclaimer.
> > +2. Redistributions in binary form must reproduce the above copyright
> > + notice, this list of conditions and the following disclaimer in
> > + the documentation and/or other materials provided with the
> > + distribution.
> > +
> > +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
> > CONTRIBUTORS "AS
> > +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
> > LIMITED
> > +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
> > +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
> > COPYRIGHT
> > +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
> > INCIDENTAL,
> > +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
> > NOT
> > +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
> > USE,
> > +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
> > ON ANY
> > +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
> > +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> > THE USE
> > +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
> > DAMAGE.
> > --
> > 2.17.1
> >
> >
> >
> >
> >
>
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy
> the information in any medium. Thank you.
>
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy
> the information in any medium. Thank you.
>
>
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
2020-11-24 12:21 ` Ard Biesheuvel
@ 2020-11-24 14:43 ` Nhi Pham
0 siblings, 0 replies; 7+ messages in thread
From: Nhi Pham @ 2020-11-24 14:43 UTC (permalink / raw)
To: Ard Biesheuvel, Samer El-Haj-Mahmoud, devel@edk2.groups.io
Cc: Open Source Submission, Ray Ni, Leif Lindholm, Michael D Kinney,
KuoHsiang Chou
[-- Attachment #1: Type: text/plain, Size: 43636 bytes --]
Thank Samer, Ard. I'm going to remove that comment in the version 2 of the patch.
-Nhi
________________________________
From: Ard Biesheuvel <ard.biesheuvel@arm.com>
Sent: Tuesday, November 24, 2020 7:21 PM
To: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com>; devel@edk2.groups.io <devel@edk2.groups.io>; Nhi Pham OS <nhi@os.amperecomputing.com>
Cc: Open Source Submission <patches@amperecomputing.com>; Ray Ni <ray.ni@intel.com>; Leif Lindholm <leif@nuviainc.com>; Michael D Kinney <michael.d.kinney@intel.com>; KuoHsiang Chou <kuohsiang_chou@aspeedtech.com>
Subject: Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver
On 11/24/20 1:13 PM, Samer El-Haj-Mahmoud wrote:
> One comment is that while the driver name suggest GOP, the comments in
> GopDxe.inf are all about UGA. The comments need to be updated
>
Linux/arm64 does not support UGA only GOP.
> *From:* devel@edk2.groups.io <devel@edk2.groups.io> *On Behalf Of *Samer
> El-Haj-Mahmoud via groups.io
> *Sent:* Wednesday, November 18, 2020 6:43 PM
> *To:* Nhi Pham OS <nhi@os.amperecomputing.com>; devel@edk2.groups.io
> *Cc:* Open Source Submission <patches@amperecomputing.com>; Ray Ni
> <ray.ni@intel.com>; Leif Lindholm <leif@nuviainc.com>; Michael D Kinney
> <michael.d.kinney@intel.com>; Ard Biesheuvel <Ard.Biesheuvel@arm.com>;
> KuoHsiang Chou <kuohsiang_chou@aspeedtech.com>; Samer El-Haj-Mahmoud
> <Samer.El-Haj-Mahmoud@arm.com>
> *Subject:* Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed
> AST2500 GOP driver
>
> Thanks!
>
> Ack-by: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com
> <mailto:Samer.El-Haj-Mahmoud@arm.com>>
>
> *From:* Nhi Pham OS <nhi@os.amperecomputing.com
> <mailto:nhi@os.amperecomputing.com>>
> *Sent:* Wednesday, November 18, 2020 6:39 PM
> *To:* Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com
> <mailto:Samer.El-Haj-Mahmoud@arm.com>>; devel@edk2.groups.io
> <mailto:devel@edk2.groups.io>
> *Cc:* Open Source Submission <patches@amperecomputing.com
> <mailto:patches@amperecomputing.com>>; Ray Ni <ray.ni@intel.com
> <mailto:ray.ni@intel.com>>; Leif Lindholm <leif@nuviainc.com
> <mailto:leif@nuviainc.com>>; Michael D Kinney
> <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com>>; Ard
> Biesheuvel <Ard.Biesheuvel@arm.com <mailto:Ard.Biesheuvel@arm.com>>;
> KuoHsiang Chou <kuohsiang_chou@aspeedtech.com
> <mailto:kuohsiang_chou@aspeedtech.com>>
> *Subject:* Re: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed
> AST2500 GOP driver
>
> Yes, that's correct, Samer. This driver is going to edk2-non-osi under
> Drivers/ directory.
>
> Thank you,
>
> Nhi
>
> ------------------------------------------------------------------------
>
> *From:*Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com
> <mailto:Samer.El-Haj-Mahmoud@arm.com>>
> *Sent:* Thursday, November 19, 2020 1:08 AM
> *To:* devel@edk2.groups.io <mailto:devel@edk2.groups.io>
> <devel@edk2.groups.io <mailto:devel@edk2.groups.io>>; Nhi Pham OS
> <nhi@os.amperecomputing.com <mailto:nhi@os.amperecomputing.com>>
> *Cc:* Open Source Submission <patches@amperecomputing.com
> <mailto:patches@amperecomputing.com>>; Ray Ni <ray.ni@intel.com
> <mailto:ray.ni@intel.com>>; Leif Lindholm <leif@nuviainc.com
> <mailto:leif@nuviainc.com>>; Michael D Kinney
> <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com>>; Ard
> Biesheuvel <Ard.Biesheuvel@arm.com <mailto:Ard.Biesheuvel@arm.com>>;
> KuoHsiang Chou <kuohsiang_chou@aspeedtech.com
> <mailto:kuohsiang_chou@aspeedtech.com>>; Samer El-Haj-Mahmoud
> <samer.el-haj-mahmoud@arm.com <mailto:samer.el-haj-mahmoud@arm.com>>
> *Subject:* RE: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed
> AST2500 GOP driver
>
> Nhi,
>
> Thanks for the contribution! I assume this is going to edk2-non-osi,
> correct?
>
> --Samer
>
>
>
> > -----Original Message-----
> > From: devel@edk2.groups.io <mailto:devel@edk2.groups.io>
> <devel@edk2.groups.io <mailto:devel@edk2.groups.io>> On Behalf Of Nhi
> > Pham via groups.io
> > Sent: Tuesday, November 17, 2020 9:00 PM
> > To: devel@edk2.groups.io <mailto:devel@edk2.groups.io>
> > Cc: patches@amperecomputing.com <mailto:patches@amperecomputing.com>;
> Nhi Pham
> > <nhi@os.amperecomputing.com <mailto:nhi@os.amperecomputing.com>>; Ray
> Ni <ray.ni@intel.com <mailto:ray.ni@intel.com>>; Leif Lindholm
> > <leif@nuviainc.com <mailto:leif@nuviainc.com>>; Michael D Kinney
> <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com>>; Ard
> > Biesheuvel <Ard.Biesheuvel@arm.com <mailto:Ard.Biesheuvel@arm.com>>;
> KuoHsiang Chou
> > <kuohsiang_chou@aspeedtech.com <mailto:kuohsiang_chou@aspeedtech.com>>
> > Subject: [edk2-devel] [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500
> > GOP driver
> >
> > This is the AArch64 binary provided by ASpeed for AST2500 Gop driver
> > version 1.10.00.
> >
> > Cc: Ray Ni <ray.ni@intel.com <mailto:ray.ni@intel.com>>
> > Cc: Leif Lindholm <leif@nuviainc.com <mailto:leif@nuviainc.com>>
> > Cc: Michael D Kinney <michael.d.kinney@intel.com
> <mailto:michael.d.kinney@intel.com>>
> > Cc: Ard Biesheuvel <ard.biesheuvel@arm.com
> <mailto:ard.biesheuvel@arm.com>>
> >
> > Signed-off-by: KuoHsiang Chou <kuohsiang_chou@aspeedtech.com
> <mailto:kuohsiang_chou@aspeedtech.com>>
> > Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com
> <mailto:nhi@os.amperecomputing.com>>
> > ---
> > Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf | 33
> > ++++++++++++++++++++
> > Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi | Bin 0 ->
> > 42880 bytes
> > Drivers/ASpeed/License.txt | 25
> +++++++++++++++
> > 3 files changed, 58 insertions(+)
> >
> > diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> > b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> > new file mode 100644
> > index 000000000000..e30e5a160f70
> > --- /dev/null
> > +++ b/Drivers/ASpeed/ASpeedGopBinPkg/GopDxe.inf
> > @@ -0,0 +1,33 @@
> > +## @file
> > +# Component description file for ASPEED Graphics module # # ASPEED
> > +Graphics Controller Driver.This driver is a sample implementation # of
> > +the UGA Draw Protocol for the ASPEED Graphics family of PCI video
> > controllers.
> > +# This driver is only usable in the EFI pre-boot environment. This
> > +sample is # intended to show how the UGA Draw Protocol is able to
> > +function. The UGA I/O # Protocol is not implemented in this sample. A
> > +fully compliant EFI UGA driver # requires both the UGA Draw and the
> > +UGA I/O Protocol. Please refer to Microsoft's # documentation on UGA
> > +for details on how to write a UGA driver that is able # to function
> both in
> > the EFI pre-boot environment and from the OS runtime.
> > +#
> > +# Copyright (c) 2006 - 2010, Intel Corporation. All rights
> > +reserved.<BR> # Copyright (c) 2020, ASPEED Technology Inc. All rights
> > +reserved.<BR> # # This program and the accompanying materials # are
> > +licensed and made available under the terms and conditions of the BSD
> > +License # which accompanies this distribution. The full text of the
> > +license may be found at #
> > +http://opensource.org/licenses/bsd-license.php
> > +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> > +BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND,
> > EITHER EXPRESS OR IMPLIED.
> > +#
> > +##
> > +
> > +[Defines]
> > + INF_VERSION = 0x00010005
> > + BASE_NAME = GopDxe
> > + FILE_GUID = 7F81D838-F91D-4C44-8552-8FB912122FDD
> > + MODULE_TYPE = UEFI_DRIVER
> > + VERSION_STRING = 1.1
> > +
> > +[Binaries.AArch64]
> > + PE32|AArch64/uefi_2500_800.efi|*
> > diff --git a/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> > b/Drivers/ASpeed/ASpeedGopBinPkg/AArch64/uefi_2500_800.efi
> > new file mode 100644
> > index
> > 0000000000000000000000000000000000000000..4b36e189b3a15abe2c160b948
> > a1e221d4b0fd8e8
> > GIT binary patch
> > literal 42880
> > zcmdtL3w%`7wLiYkIg<w@gdrp$glHxKHB3cf2qCdT&P;fz2<arKRcmJQfJBfy2ns^
> > w
> > zB%#$Bt3>ey-
> > e!WL5`Mi}3dQtAfY$1@wIx{F+xFJU1GS}BMO27b^8bF%BRLsDtG)OC
> > z`TRb=k>fdg?X}lld+oK?UVH6*POiUM{L4S>UoJUZuxNo06&=bj08bx?D@2Tph
> > ew47
> > zjyJM2q*cPqp9^<h;Xm!UVZ4~|%nPKQ7l4lj4m}H=kdci0{?QQrMc5S$mFpW=7
> > H!ts
> > zY29t~TtfJ-
> > s0cI!0Ha*g$A|AWG@%O7bwz#U>Y8$cSBq!f?LXjo?dgBzd9Ya=Jyk4r
> > zpNkO#A1R{aDIvC<!u|W=%z?l~5zcg>4uq71j%|R4l!+bZV$^|C#p-U9Ywc1>-
> > yA$*
> > zlxJD(go3V6J3rni?LMVQ9hwk1>CtLufe@>XM2Hg7=>d&w(9(`8S-
> > {N?DIzB{IfCT|
> > z0y`Z}Wr;e_`?P2!u3r?q`7!8@PZHZiswj5JA}3Kk^MmD9S`s-zyx47}gQ$<`#{W{B
> > zy-
> > H$71n^vcR<aI_*Sa%8N^K|+ZJ305&I~%G%Z1)9@^c&bVLcy<Ge59+ya_O9b;4
> > {#
> > z>rNCOd>8^fw)^9ap517((RNdIR(mOfIjEDgdQq31=gcskt+d5+&+iPLe~)s(KPk0
> > 6
> > zsaki_AC%hfBTXL3*FKZ>Yhkn}gweLr7H#Rb2JJ&A*Y%%Dt>+@Gd*|<z+NW%
> > ^Z%a1%
> > zeV<8NgRIv=)}LB+nX<Oh7VY$I(w^AS0X$1S!8euKcGS`IhEhvCX-X6cR-
> > UCd)Sd50
> > zB0&hPTh}8+KKk)3((cE`L^vtGE}41;y_`tBlsY0GPzRn)qAp4uy?vs!@j-{PA2NxM
> > zHD4F>L{-il2&Jh59-
> > ;XnlGOnjcSY8^`xU7*h<xhwEa}XFo@RA}Uv2hLCr`zA_BIOW
> > z<-O{Lv}m>Nl=8@S*1Hq+IJQDhS{zQwy$_cL8q|Ni9k+PEmpU-0$mST3j-
> > D=;cb`Tb
> > zLe;v-
> > H`_9>O4)sGsu<{*DF)6ca>r@P2spt>VxOz({%&pTb07L;G4P2L;bgs=BgFvQ
> > z8JejMZ19TKKJekW*8%xX?&wE3tF6?tM6@p<>C6HDSaqOBNpw4|*4x}&UM
> > 5<}D{&GM
> > zjeN>P&j)V`<Zb282K=LmXAZFL#ztf8vF_exsnu`N_$dC&0oN;vQ^HvN6g1l%A}
> > 3E4
> > z`z1;14m~ZkK9L}{si1@Bd_V8cN%_L1`CQ_~`cRGNwD1l<M?<r~E6PM+T!ob6j!I
> > K+
> > zyM&mn=K)qWNo@1a6X-vYuo?HVd1#j;_8kI`lz-X-;>@&X)B(1mXQRVu^-
> > FT3*v2-q
> > zO(o-
> > ?3&1UiGGK4So;jc@YJL#B`$10~EA}z}V(`u~r*XH&Y65hAZkWzn>7Zp_en_29
> > z==g7z`<dblTn78{6Q%YQq$$hvyB*GG@L1L>TKyTKb?TiCXGNLRdi*YjbHz@!U
> > +Wf9
> > z!JE_2M)k+K&CJ)p8+po}VDQu(##3?_PgdIEsb{~z6M66-
> > M1Q$4{$5gQpGLYLawlIE
> > zUg#J2YF`JvE|*%%nndf7I)^g?{B)W9-
> > 5{O$!DR5Y*R1~|jFBL0K^OQ8Tn?H)RcaqZ
> > z9t?H@X;Me2vlWqs-
> > W~!y>T85#j7!Ql0=PNQ7mRCn0&FS!R@Xhq`j{;CQHS6B3wT05
> > zAB+@rhcG6ouVrzDZd*D_9q^-
> > `X&9Tms5h|2;p_u_>Hv9>rWrcoLYm|DV~kUd*VE-*
> > zjKxBXMU2@ak}+l#NuT#PPHAIkb7*J0lGyJ*?$GBW%MNh-)9&=#Zs=PT_}5-
> > A`b~`x
> > zIj8y@PCx1oAfK}EV=kkuqMf3RS^%A-
> > d_O_|YB6UH++xbM2lh&XUCq#LJ!9E}QXx)+
> > z(0=uMiZlHx*y-
> > ;pS=qop1zgH)R!AIWTPvW)k<T0QXkX!QQrF7Mhx_sqw1@h%W1`qL
> > z9p%JsgWpfad-
> > kePBB%Jz2G8V^Jog^qoGZc3By_Y_IGlE#LlI{VTw(D%#pGGsb{@~c
> > zJ>Yqs)-C_Lk`+OofvfYZ89es{98QPHGj-
> > 4ESMvG;*|1gYbM}2YWHyxldxvfxt^O#7
> > z4m92deF3kd^}T>Tv)+)B6lSl@zQ?@n^&7h5IOcHf!gXq+*c}=#1`1)5Xrn)b+$@
> > _g
> > z5qg?uw%=vWgH}3d+Jv4bjd}20l=D9gIb4ge@|0401ZnNx48JI&+u>9lqSKGNfR
> > 6Nh
> > z74k4`S*YBw+pPOoSlyGu>bBBW-O^)5-
> > LJB)HpO}9I_S+4O6@a9QwL6MwE1hM&jSC<
> > zEyZcRL%({uo^z$;|Fw-
> > 3+X&A{)_mUBiEhf6IJ2t0<$D5okBkY{TjiMdJn<a~@v@j0
> > zFXXB@YcYO%pufbi%ECWze+zig=#%twgE{uRX24yjpZ$e?^Krb=$F%$e-
> > 1TvKA%54g
> > ze$=(oc|O0Zkr&SICgOh%e!m91(fGX)@PEW_BX}7s6h|qu-
> > oZ8>^@@FZ4azl+r%Wd5
> > z^6YJk&Yn+R&}PE64-P)gXZ9)6hmlSbX{&mo+EOqs-
> > FhDu3f*>HsE({r>i801q(|C~
> > zpy|h4OF75u<6~k6$Js{02M6_fJxJe$bO`;#asi~*GT%&-&JLu>TL`?3;42dSh<>oz
> > z?-
> > jv%tNmlxR?G>#xJZ}sDHG4sD}+Z4!+HlBedopi7OnZ3qFaY>y;nPDodLWNaQQ1
> > +
> > zhT-=;Q~x3H$Jl7}DcS!`+%VX?#2Y(|CyN(-
> > eS~@JFwOU8!U{*i{*$ozBVlh4wqPXe
> > z*Muz`3HuMimXCz}oUj{4!nz1sY=d>Z==%|1jU!-
> > NeLo=HH8wo7<9mQnu8n}RPjvk|
> > zB4wj5T06#w1SuB%a>UTfo#;c(dzODq{k%a6`huYG=yx5?1dR1<9Oo!QI;8vW$k
> > T+#
> > z-
> > G=e)85}I34=4GDd3YB2X(H)%A!F>L9LvzIu>AeV3vzzm1m6pO0Ow~5hxz2E5je
> > er
> > zgOga!nz!j=TRa>F4%c0Gp)G6&`TrQ>qS35_b2!_>wlsrQBi03^ozQS`JZatoSX0$~
> > zK1tr^^JYF@pLA=o4lf5>e&?GyzmmMyclg<7>u)1&<u^>&_k7+<cGZ8Cc)iUg>
> > _y+<
> > zr=PAb0gUuWe+8Z!LEi(~X+m1n2pb4lWxrXr+&zi10&U{m$}*_$5b7Dilhd;I-&S-
> > i
> > zR>%9Ej^`si@Zdq+!+0Wl|GdR;nMA_=i$(mKa-
> > !aT(uF_jW_xF%oRLm)+t(_VJSf9U
> > zAw$ZIwv}acJ;3^(vdckv_-
> > sRTncpNQWKSkPrmRWdjkGq{mdocRIVt;`85gi{Xuo4o
> > zPex#<9-sWc!4Y*iNYk_#q{F&sGq$0gzekI0Zy-
> > &0586guIs=%9*L>UJ#e^>8waH?Y
> > z1YINzTY2Amz>~xlpPcxpPd>U+r$O595*{~fI|h)JwJkm&y_73m4*ZHHUk2*8X
> > #I)#
> > zo3{8Q2lD)Thv07lu5L5taO$)cYv{Bk18eSTjJaR8h0?DfL-23e!k1CLG5UU;XXa&4
> > zu7F8nhG9GZdY|vd!~?7hx=fykdjK&1*5SIv8(T4+f**2BvA(i%Z9}-di-
> > PrgNMr0U
> > z-CoR3&jQANG25y4OFLjz`ulhm=6pceTJ{8e!}hd37L73o-
> > J#ylXSVvh%y0M+)T3{M
> > zMw6^|N+$1=|9yl-s-4tDOUBKFjRl@E47-
> > Q0IKUjkunmO8qpS_qKv)uB5yN<1k(|AT
> > z@D!A{=|weQlB)R*FE_?D`N_B@SYHl!Bj6T48KTK|8)29e$^wl;aQVj_^*51*cN
> > kX|
> > z&-
> > jV~Yq}Ub*x*YE%Rv3N4&z=!*rmX;!R8a@2Hw|(@d^mL0(dsqRfJ^&@3vvQ*
> > @Wc+
> > z&j!mP>?+`u4&!|ZFv*8GQyPZJa<Kjq!fzUe9fl6N0Aqh=V2oMv;CM^{oavf#gO
> > 4|P
> > zL4VqC{zR4m?ToE0!)2B~Uq8;IRrcYdBgRw|;q%l^(t8l}c>gcl8*TkhUjL4@JM*kD
> > zMIV8E)|;lqb9{Xq1sycka3gfEO!EzFRP=d(F&WMie+8{@T|7=$m@bA03)96v5*
> > DV5
> > zZxR-
> > !i$@6?MHgQqJWLl~2JC!Ye7?R5aO$EghILeSwb%cUaL@VrxQ}#fdPjYH0kCj=
> > z>>w;mA9oQJrjJ3w!t`+mVPX3C7-
> > 3=hh@i%K`uG50VfuJ4V58|{BjAnD$EJJl9nvGY
> > z`MLUy#Q!SB?IC0Cr4E$E2J6=mpSqg;s4oe+OI^{&H1u^1^3Etp?$fvkKOHG%r;
> > QhN
> > z&qs<9>OAodYt6pNC|3^LMEI1amC0`Eu|-El-
> > mR?L^krCvup3z~_+ffyMxsvN2N=se
> > z_jl;AjYfvn;=9hw`}8yDI@XTT-
> > 9}mBf0gt%MHge88P7RhY;8;_P{b<mJ7FjMhXKsP
> > zpCGo!`5s#Zv-
> > bmjP?qZseL7f@93>{a3V(^bFczq{DI>`}6Eshw%mA)4xL%47vkTDn
> > zD#YK3cREe;ktXx(ys~XB@)OqHDS#cmExFi|o7a(+P2Lj$=l%9k+8k%*{e*4CdS*
> > ~g
> > zT6Oy2$5IaBPQLeNJeI;XJ%Kj8i8j3@OLgsM2TSsi_XgW!lOg%~6tTT<zCH$Qr#va
> > f
> > z>kt#Xo1|jztp<<eiLxM{e*+HF9`G1$w~ix^^@Q84w+M$`h1;$FB;2%He$XS`7u
> > fbN
> > zyY*|cPRobYV^13kcaN}Niq!h^Ncdn8!~Ox=Y54~~WnDI3fO(yON%6zJ3&;9C;*
> > Ega
> > z=X-&8@Np;u^4Nv6OMWT0aXfq&XK+ZrcM-
> > mHbU(uGBeBf(Fq(Ui?h>!)G%b0{;y&M2
> > zz?p6~<<n)}?}i@OdD;QIpy<+l$3xin;5^`fKCmqJD*j@YTZnSn-w`i}9&YyoD4T)t
> > zN|-EU-
> > REVwI=~yHVZ0`!<%WoO3+5G$Y|3OM@gPr&@AbrsZ1)jnr}s6$r3uiF1x-V^
> > zhvjGLZv>p{fBU+ZzEI=cT6gbwExvE87H{?AB;c|hJud?DRs_;DB0p54=DVakz5Q0
> > +
> > z8C#w@I4Aca$^&?QC2Nl5%UV3k@M&j*c18d^!>2~ObRM(J`fkViobs`Bpn&i+
> > (TV+$
> > zPQryq$!5A2X^Un$aP&4|ZtYTxeLeCf$Duvk&)CR4J<;(x`8+7{dk(7kVzTCIk8sYh
> > z{6Er~20EY*dzQ8;5x$y`(O2*n_RCs|#m^MrNLOI*0rt&;CF$iR>gD7=eZ$xF_iy@
> > |
> > z<3)U9?t)|6<}E$u6<W$iuq7&FPrrXR>|<M;sMC;E@ytF+j}{X=o1`i7*D-!K$y2;)
> > z+6007{=3tPUC~`B!F$9Mu}LXbvccCTWr_qmCHhcGZ>$z?^;0?WccYEm=i~Z`>m
> > ^Gb
> > zf%S;<qaMb}D3d|Rfik&+GC|ut$S*^itIf1sC$`yOhhwz(X3%-
> > af|+!uqU`;EbwQ6p
> > z2cRbhAY<%%rmdIjsw7d;i?qe3g7TYL-
> > oz2GgT(z1_H*z@DElL`Y^<oOhJ5_M4*}i>
> > zxJBbI+P#J}zz^%&_Y=jb$!b3NCNAsqf~IQHCXQ9!k8;|@YF^rBN?qXGV2MSu4
> > Eiz^
> > zb=^d|mhO+!;uYB1V!-;OVOh&#wD_ffvAzsE6F-
> > ;bO#bQXvrR%s?r`3TUjW=*j4P|2
> > z%UBkD(hJ=zair9@M~jj&?Da8U`sLHUo&UAJekJQejLL*z?G^Nu0miXz!MK+G
> > 8e!%d
> > zl5pxN$K8#D+w3dm)orTs``kulc#Q>n9e+LGjlu@QI9SZG(lCr`yh7sHU|j3XBh7T1
> > zZT`9$GZ}@SS)>WL#p8UW(;T9%9eqNZZ^32J?#pCd=9nh@j}AlDdVeE*7_xkm
> > Fvu_j
> > z8HR*wj-
> > AE~gZ7o}&?ig3gt$1{>Mxh%9AVRr*l78Y7YUnYm)&I03yPO=hiP4;)3S8T
> > z;`Qe`pK87u>6}BppTT@#^$q*PYU2mMqrJCmip2IJEw8^g-
> > h#bDTA)GN)Sc}%9$j+Y
> > zkgc`T{R40$8{HE~L(hGL+2@Sk0NxleTz`+5mK)-R>i-2`R{dodcXu;w={tBb^j(aQ
> > z1M#+4<)XKC%j!>kPnzk+APXV5=WNE!hwRnx{?_S@vTnQ6vcy2zO`<a`5BDn0
> > 2hjOB
> > zqEl$N9}ydbANOB~4KB>Dq1VI)mFwpnQohFcY@3uHj5T!<^(jHb=&`pwco{D2
> > Zx3SM
> > zcW{rC-}MmoBKolJiFia1dtKa<4`9D00{b1k$FQdj-=}}7u_qrKi~Koir++N=f3Y{`
> > z!oI8vwj%-bKgQky<31Te_|k-
> > Yy9S;67&sqYrVhkGkJ=?Mo4DL}w)B_%c`4+Qj`0nf
> > zF&5?OB*Y^Jfx|M~kLYQZT4SLXlrzUk&))}2*4++S;Cu(_>zEUV_{vpc!1edR{pl!!
> > zwMF;3GP$)Rs5rTvAWjH0ICdIkbpz?3j-
> > 19wb;BX}_oUefTYW$lov@`F_WML@P)>VE
> > zLq2`opcl_$)eXTW{oWZooc0p^{lSHzZX5Q*B=B?RwPJvM>LSl*uPVg8B=VJQJ
> > Wn*A
> > z{eb(gQU}H(9m2j|g5E~N%gUwJ-
> > a@IBI>Ws+>@n^SeF^(b*xUEtEIQAPBQ4{+kNErG
> > zzI8X#4@h#SL!QrI{y^QnHr%cF;pvTD%!86K55m_ur+~j`b>KLBg~(X!$8Pc-
> > JNV1A
> > zmpriX^i?r8b$6lv&neIm;Bfxrl^zXwAurt}zLI{mC@%1ey8F<td{%!YJH`6I8RBIK
> > zb%U!y%`X-
> > 4b;2RO;>Wt}KJ;U$h_35$h>~c?w^T$hucTCstdquy5;;Qa4t%IMDYH^7
> > z*2ojiIu~)o*t#Cf1;p|6D^4^JI7xMw!wgz#VqK7UHzn5jb^L@nmm*58BA%L3rv
> > a~2
> > zTwE8_@005q!A~0Ubb4<nPQ`pqhwmyJ@{So+`d5ncGsscL`<CJyFrRzAqc}gob
> > Gk#_
> > zPyk*f@(wv<VE=Rq%4Td)oZN$FIqA6KJYkk=e@=0}Yn5}x4VOc`<AC40S#jdbo
> > KX(v
> > za{kN04LOH!y*-
> > MPYp=t=717cTJ`462<PKlQ*b|4ZhuAvyhE(0Z=`rV2`Zw8%X}|Ey
> > zzAnf0HNZG#gK|QPaA4j5{yv`RppS_0A;gqy!upVgUp_&%e<;5U<q#upZHpHtu
> > `gJ{
> > zah!qqkNG*Q$DD@<7s(>tqQQLPVXZt|Z-
> > Sc7dE1V|a=BI=E5yk|rk~>3sC9oR8}x_x
> > zUO!x30&lG2G;ruk@R_hvNbCIi#7X)*dVOZz-
> > ;hUnSh(*Z&3c&r9iGXTMOTJj69R0g
> > z?pKEEri@tT&<3qL%HsV}gLi#A+RvZa`in8Jk8#F`ZSKW<LBF)mte5@J1OJ9Lk$h-
> > ~
> > zQ>85tbz?A&Xp7QPMIHU=q5g_a9qKRgV$mc$J`>i9b<S%x`t6uYhUk-
> > ~D~zT<+`!a<
> > zA)27^I%tpw`qF7vi#qNfy$fDgz8%j)JPDCK5xSbDiaI~|PScQ&`*8k6+0^~vbXvB
> > 4
> > z&IoNcbns%R?r?rMFHMly9=6A9uZ(oxIK;|runfX57lN;CmJFwZ#~|WpAt^ey5j
> > v7#
> > z>cAG3Lz~DC;RX-
> > zZ)`Fk?t{QPuV0(bpSw?^e?LP1GKTYsBDLy$f*20@tp*LA0b_iq
> > z>-
> > O}#gDXTG_eC`D6$P6ti7D{~SdU2}HU3>^Tgo>P_hkAZ#yZ8M_;&#N7Gm{;G1l3
> > G
> > z{`j>R9}^=*#*CH5$6Wq(rTBeGj`<bVMsbL>r(-?va;li{`h>QW2NK0src2S+rEgLu
> > zzAHt?ybPT0Mu@LmE5%(GjjI{4&j+Dzt3cyn#K|w+6gj2wB2nC<NcpRP*N*3h5
> > KHZe
> > zlJXBD9YFeZNr~}Aim&v<NcqRdh_4(0{C!+Y<+zw~5f#%f<e2xRsOzSK<}akEnD
> > @qe
> > z@~0y|eS(O8eaw{jYXMIeaqepY>lrWQdsyE@DgV7mp8RO!MH5$=690O{l=yg
> > *IW$JX
> > z+!ycenIz@6!(R1F0dATnza6si;Y#1+C{B;{xnGx3<F5c+k4TPx{UVRM-L?4GAxUzt
> > zAx`vC_jje__y>{qK>Ffi=?P2S4@|xudCBps08dXwdct+?Yw_HZCgtBh=2~|&c$
> > hwU
> > z;jzD-
> > 68V|q7Q5d)E%KeQg~v{UnRgOId{8)ZdoJ_jr~4;or<1SCq<p6DV|_@cuTP0j
> > zcP@4l9$<c<l>hD`PyRc2jvkj9-
> > xDk1(?ztqXOWb@EA!f89>BdKDSp>9ue;|uDgVV(
> > zr@IlbEr2;P=DW*rZ%!?AzfT@-
> > l=5qw%iQS~i{f`2pmmFs|4u}d`<=5Q{}Ah1Cgs1J
> > zv-nsK^g%dM;@=(=`T9ETeXPIUH*A;(djG6s*bK|A{}kyEa6-
> > VL4(oOu={~az@m>WE
> > z^&CE#`^fG7Je=j#^_=*Jkw-nZbiD7BQ5W;dU{8LC{Jzt}FfU;H2|GIs%K+>}!Ul(7
> > zy;x7~0n8fzTwgxIw8<-G$#_0<Oa;Z_T=Fl_FC5o|Tl|v`mVE+cU1-AyAFA2(p-j6?
> > zT#jkRSoD|zZ1$b36E<QS;`Ov0+aeQM{31D5JZsF`+VhGtK_s*^W1VjC+8d?CZ$i
> > 1|
> > z$YI!F!0sX~)1Ea&Yw@KfZQVvfH&_qjIIzF@>1c;skrMC0T3a|$i{VF|H<yw|8E9D
> > T
> > z;@*rsK5`s3ig6JMb5{xI^(ql=eP15!;y%nez#hYuZt}(XGaa}W4W$$H^yH!R$US
> > W0
> > zvc3s8H%wo}eug0fz9oI#QqDV=7be0VsetYpXQz{}Kkjh%;d&FXF`Q9q-
> > 7Gs!(nhi^
> > z^z%#Mw|8OQVfjY*eu*y4H*2NgSEVPwHX@E9K(}DAsN;UYez`4WmS1r)y;g4
> > 9&bfu~
> > z;uiLg)_qV;ST!BKd>Q(w9Q{%O8S85YoJreH9^ynReF^%3@V|!iL_b%IHro9$OE
> > +9-
> > zBj<U}jX}<lD&|1k1=eYdpEA~_`*U2s+2$F2Y%q?8GwsbQhIPaX*n5QehG7|i{R
> > J=$
> > zwpziwp*b>#*7S!F$6<W4hh^f2%j^XFPlS1gVNHPjjxd{^mI2mHm`zW;fc=Uv$j
> > 8#v
> > z48UFi%u35hH^-
> > ^@R*abKISklA;8^>ELweYZSgbh@TX9&(Xj^DAbbT}Gn4<Uh*dC<&
> > znCAE}@%I34L=1EkS`XT3p)AKuI{aIUo<$3L8zX6joj0X_#x;}|eb4jiQ=v2cXGJUf
> > zHyyB`Fy4Lm4bDi=#<<LPAChohN>7{T5Un)yA&2iiv@e%&{x-
> > 4WWt0n5$xhD!t=oH(
> > zT-
> > %Pcp??!QzJs_rpE+LG{%4Tp`By$4fo}5N13mo=aQ3$@BgmZb?J~5BWmyN|zeT
> > Lx
> > zo_-ba2&24#b7NS3{1AO3e-
> > YBybKTI0wKB`$^&jlNs2e22aha|F54_(GJdO>^o?`F!
> > zy!9wz3muVMmu|*78ZxARH4Sp@f-
> > FPmYx{bXG5hd!EX(iwEG;j*>^~}}*NHVS`)udm
> > z($=%SUYtu}og>P@URiNt#JxNCe#~2FlW4*^46zZ(b~Y*iyTDil_V*s=IHtX3yY2S
> > 2
> > zJT<x43%w}A9>^bIL#(}U+C<u1%hp<Tg-
> > B~q<R2fT&L?#2lq1Hnp2M>2{>kT%t+m$I
> > zWyH09n0!aH)h64aK3OYT!^<Ex)EQpRJX7N4enX@94&p$vyJ?<NU(fuBZGbLFf
> > U|FZ
> > zk96Za%)fxqN3i_pbX9F-
> > +~GHr3wW_;k`8HF_Vkr7dOx$#v+RmR>ow4VyeDA1Pe`x5
> > zC|-
> > r1>)Iry=ysZQnCCnj$86QtM+ZSm<iy2?rie}p_CpJXy%!6{xj@IW!Co8%wr3RB
> > zvo=_0irVS=?43D1xKpltzlD3MBkWnBV!o$>v+RXZE9Ii=%M|1Nlq;}~pl$JU?T&
> > N*
> > zshCqfDpXoS2iNb_9-MTBb7~0X62-(8D_(}P8r?jLLR$hGw9lAZWqqyvKIb+k-
> > qV1s
> > z2+$tMVt_b=3B-_iKAZEV3pDW7;D^@O=AP*}oE;xT-
> > IVV%#Df%EGWxttD61A@ex8Qd
> > ziGqviSFi?iq^kK-
> > @vhls;aIg8>GV{!Gaxc^6_=WS1h%pfzO*t;%_ogQJ)NAZWE$xs
> > zu$|PWM&Zg8fFW+Us#iaEE4x|0tkIT;4YD71huFaV$BbyP!OQap$s)fAYr>3FkzX
> > (k
> > zS0?=6Sg{ZFboW7b9aUv{UI)(R3r9?;kWZFFz5)0hk*Kc^aZkJ~+1i5VUPW=ggX>
> > *f
> > z$8q)J+KRpSSnN^FK>k;-jvE^+T@U4-
> > 9r>Hmyth8WzDtxSLHrH#qMHBmrU_GCy;>BP
> > ziZQFa+BZ`oqOo^_bT;HWK2(~gbd~14eMf419O5%8oRMzjgVMZLkuG<RagPD
> > L_s5C&
> > zYsdU1B~6N4H9dX2+xPX@DbbDJOnFs|i5Y~9-
> > _e>=u8Dg!1+g^Hzdr@*tqEgM?{u!$
> > zQ1&3|U78-}-
> > lcsjWsQi7nU3<)$GxuOwTbDgwgCRBP_8Q&vv5`PT&yX;8~NLniuDIB
> > z%zwWBhA%S%GK{<&?TJl`f2#^-
> > O$mccu~w`Ti$!bC>A{jqfvcboGtnoP>HQ%#T!Ma>
> > zhCZPG^EUPsLrSFHck~m}g^1U69X5sba2ED_W+SfrG2-
> > t1`hHk~9^;VVw}X%P?_v(4
> > zk3l<0SgRgmH~nSe!ya>-
> > q>1!Z7%L?_^WF|$&$2&5zDU@d&$=h#d>QJFe++FnDB}$E
> > z#K%%XSX1@u>yu$Vn!!g)7#}=;h5eRz)=gX9!!oev;k@9ygTc$tduqdT<&d31``9
> > +x
> > z&aaZLbN;c=Mxn3CEO@a6hp$9=Sn%sF0AF+gxF-
> > zGI!WuxHh9lQv}N;fTO`=75MZ=l
> > z0`jur$htkZY^{x_OwvkNa9$fSEO=NOQZE2cx&Yi62DjQU)&~DVZGi3NJVc#1rk}
> > Sn
> > z`u>;jm#9yTun|LZz8OQe<}zz9em3;rBj}NYi~KCWe84+m#E-YT-
> > $<d}Gku#0?=|n~
> > zz`x3TMvVAztV6!i7AdYgWa$lKj8>f(KST2b&sc+B*2(p`Rqtgct^dHCv{|Reg#FyS
> > z6Mm8T+=Y7*#sTqe!Lv2zV1J~Jwvq5}5)S@_>y4B|k?6MSiZyAxfV;&v&O#S+u
> > 4BBw
> > znnOmcqYA}QmbY~OEc%Rfe8;3k-
> > V)8{CvC8kCf+s^MjA2Z^FubgcT7Bet}PU;_tEbN
> > ztMkt$4*J#fVQ`+=gl)3Xdc%b2?_hvO^7ftytGD6(hY7RlTs2Cah<EFCRoKe?(S(%
> > (
> > zM%t9a0TXt!iO2rbWe*!^(bxT)ur}>B%Pld>Q9egZ82x(EW*u!N%%Y`^!YlVNiJx
> > yP
> > z_o4~QvB4e)qcwxHprh8=8~QWcyP&<YzY~yyab>l4qe<gp&?V2T_f8Ww888d4
> > &V(hH
> > z^^+e<SGi{AJ`c-
> > QnfX144^J|m{|$HIcG=#WahiFLnRy|cZDRSGO!y&`k20UXZQ^u&
> > zHkiYB0`WM0;AdfOo7h46Ke#<7k1>R{bCMp*Ae_9yrsz1&;hC^~=cN2w@yuA
> > qXyb$L
> > z7I&p6&NjY#NZDZx1>dEke^OhDJXvv0G~c<P9k6`oj}!&#KdIw5{KPW64}55s>_
> > nVo
> > z;BdR_?4KkC{u4f7AKtb1<DKi!B*nQ|7AFFD&y#bi<y-GeR)E`<!uj%3oGCvJK0-
> > <a
> > zVn`#`I_zJ|23dRA>|@5xPJ@q66h}uS&ksS~*c-
> > ?R$iwd@!Vf;tg*jUNM9OM(AU5|G
> > zDeKSJ|D~U>wn-
> > fI_b$qZFFJd+BK9TV!k*8*H*p0P;#@!8A5UK*cBDV0b|U8ANtm7v
> > z;@q`8{S4yQW_lLz{T*s&7t+v?Zod2K2OZX@B0a*-
> > )%R7+SPy&!>h5WrS=QwYpPaUq
> > z@3@?XANdLV!83}({Y!K2`a<m#?@L)d(O84_NLkO=+F5q3@op@2sZEwosMy
> > Pt(5{0r
> > z-c`Y#r-U{Q;yInqXb;Y0t~vxiTY4UQMT)d4fM@@ws_wrBV)1?>)~xAx-
> > `0h7F83aK
> > z&9k-#^!2)MZ~jyaT#i2R<Br(HKFU&CDt5?EKvvKd>ScO@-15V-
> > v^83H!$L8zxi>05
> > z8gimeiz3mASly&9tPLo;3$77{;sElnjzETd_x|i!$L@1qGURv``tlj%_$l;d0Q&MV
> > z^z0KQ5;_#sak^L?ICG;qu<oD8*3~a%N%7$4cTyJ5_gFgAhV!+H=ZKP=Ibz==T-
> > qo1
> > z97|KuP9%#bwzoxLPP23g@k1B%gR<_GC%2Re>4Z?_)~eZ}q)|?3VcUoElZNwi
> > n4j1p
> > zV)b?1iFap-5|7|sH{P#B?4f54_TwR6m3=V>{ahdh+G23FVG-
> > dtCkOugPTavu<782?
> > zAN(cWn6yJX=Q-
> > AR&U<X5lGqaZvKZ(o6a)E6(rc&Xq?SiPk86jGF)1x?%9CIF1o=~H
> > zChtf=U!4Z;k0HMZaacdvCYB`bpe}K3Jhk@g4^w{%tCSrso*Ua#c&q?%%JNMZ
> > 7a0G5
> > zl@w^$pTd4TV>Ok~DG%%t)=NIVd)$RKNT`Fhr5t%>iqukG6?jQ-
> > 4RveLvBGGPPk5S0
> > zI6-*%)r*f6Iz)aMU|yulR;A~qJ4I_c_GjTwv~E<ATi%i<oybs<TAs$a>1)7qKqPeF
> > zjKRaKzfp)etiS)uc<&hPO}Ftv-pEgnGNpq$%6jE9n~#-
> > Om95wLaVEx>Z;GBcbp%gk
> > z>&p|S0Ip1&3cmC<0N-
> > 1CQE|q6k=Fws>krWDGVtJas2`d<pg+Mwp}_;%kM*F0HDE$V
> > zI1ffU{dwN1De+i?n(an9`r>%Kjv-
> > n2^T?yOB1Ny4@}f+Bgu2;hjp#pViL@gFeN~G7
> > zpp7g=KS@nbb|-
> > 7NCN^%TekX5vvRhJC?JZRjPvm7iv0YMD?=4W0^yinv^SL)iiKEz$
> > zIeN2_(6S%<|1XJPF3xcuh3t>!E0dr*ldxC8x)j}xa@_YpU%!iSe-`tUB#d|o`@aIP
> > zjRj6Ko-
> > +mSpl$6g1&n1R3Fn@Ga|_bszYlue2$%x8Wf)JyDZ}_KHt`R8;WNrxyO){i
> > zjKUOmBhuHI>0WPwTT-@mFEZ1OQCktWOLiBU=@#67iuRY8V^_tv6_8Z`-
> > ;rS4UBy`D
> > z9&~vW;`(^@#~{v+Gw9{2a0jr5($gk76H%V|dR_w7ZO)70%b^E;mvD<%k9#cg
> > ^*qFq
> > z1o~4Xd)(#dM<En9=d#dB8Q;>tTs}wIAV4<+n)?wy;dta2d;)UCrdtASEBR9}25C
> > >)
> > zyi-r~psyX+w?MpM0?q+V*n&DxcYO1vr+4(<<JhrfQ-
> > VGo8y)Jy<(rar@Ep$}d=iOg
> > zco<9D@|pM8@wIX*dHfm1Ncs@mbL{vkxs_u@GGWJ8;yWl9C-
> > rQPZV!@md*Fb)ESo?c
> > z3QH8!TX?K|6Y2*K0paM#z!;!i2tbD9f%RK;lO}YjwLqD4;xO7f6=UbCs6!vSz->4A
> > z+VYvf(?`&4@<cr$PaklcfgkUZq#g6Y3&&0y`YauD-&DjwrXfaR^qIqr7*jrCH15Ln
> > zF5TAX;{|p^f*g%DC5_r9w&w`i#Wv}71?^$m*rs;aI=xNchi&3mW_#GKn_-
> > tiusLj7
> > zq?p`N23(IarA5Hb90T8N&@sy75|hte(4VQ`aSL>47j)<um&3g!w$MF)y=(m&z`
> > q1-
> > z(c1)^UC<?-
> > V}2$Xd%Do4Ezqa=Rjxd&&n8*2YozRSzC6chk1U(>J3RL+;=GQSw3Bm*
> > zF~^fH#_CkuNBA)2w>8eLosYSe=e?i{3eFN?t-
> > $qG`rbh&{g^;J<|0kB9(oDiUUG<m
> > z#>2Qr3q5XL{;b+r0iP*=`M+!@?%zQikNyCBhabXkr~I3s<MI-
> > DhX*?Dg^qij#+bkT
> > z6T^S7))so*&GONAVGAsO%JK#1S7GiPpicnX1Ajp3pg%zWk^aCLn?EoBf1nQ
> > MZ#WL$
> > z#rIQ!^edZ(ztcg#QlNjjc1g93Q?d8_n3RRMB)%OnrGxmoZ_p=>ri~MInYp4QAs
> > 4>o
> > zY{NGwfNwBaJh|OJ9`hLDT2mY<&I-cUq#api`3J-Ef2KbF8~(v?e)5oikO_al?jJm#
> > z4P81YkMIxJZp%j?f4ZN5IX!KR;U~aHD<Q8c`~>oJC>dvi;2+Repg%!BVfKy5JIE*f
> > zgs0#$yeTKc4kfp21kYK}jhj#3bL^^B@GF4xl#<etZ2A(+pU-
> > )>ZP*?Jp8MbP5t_cB
> > zkI-
> > cE5%4}z>r=|)mNebQB)9azN0@gZ9|2?G!ahRk{{=pR!NdQCkH9{puF0^QcK<-Y
> > zKbQ>vAb+B!`v;TZAGl2aU~<-z+g<Pv-
> > jb6~@VRpo|DY580eu6={V08dWcUcIi#kI6
> > z;5`29z~JMbh4}_w1MI0G-yl`@4Q>L=?i-
> > XKUG}s=qY2}m{=qU6M=mt{f$PllVXxs2
> > zEHcxUKTv3<4S!&=yTDA}i~CE^aZ4`r1scPAfhN-
> > z(BKR3eKarTY@VmEd;#X`d8RKw
> > ze@(^wZutUwp3N7aPbaXy_m6x5@-
> > u*a6v}UojlX~07fAkJ@dfSxFYM0>jPuXy1GN7G
> > zA0UJ^i41#!GoL5Cm@nxIl%Ni4J`48+_#TYi7kCfpGVl_>987&ag!#4!b89pAN%X
> > !_
> > z+|8Ify_hRAY(Bsi_y8XG0Hd|#AI<%Zqs;wWk8tj%z2TZ95^EC9`~8YBZn2*^i9R^
> > z
> > z{cnJ`Ch*32U+2r5_jkHvw-@t1cwEo9`WwJ$Ca!JX-
> > <j;y=Y72`nD>7LJWEdYd7t~n
> > z*1XTUN6h>1O<dshi_ZHv*XO3cUn)eWODMX}On=$W`2})E+(JLw$ul<aC46cu;
> > v}iK
> > zJ4L64cPZ5bd>;vLp4WGo`K8D!1-
> > vv_bdCXhsGMli%Zbm7av_!nj*9uTG?jF*{)Eqq
> > zG1jU31z~X{#@=z3lJOPn$15G{aPEj>P2>Jx)5y6#g!Pesg;d*vy-
> > WE<tp9<_cN93!
> > zKiVsf1`$UJB93$nF{A^yG<?TO2*y#wstmMML+t5Ylz|)uLX3wXjr#!OCLF_R32Z
> > HV
> > zn*hF(LLWZEA&h7EIj(5YSq8YV=bGeZTu;Cc<M~!U%5qMEOt3zJ%)<9l!(vSKI2zl
> > }
> > z_|lwz((d4GQf>ProFiE#WsL{!DYM;=pxtbzgm!Yjn6acLtn1kxzJq)k@g6_M+i9=
> > d
> > z`bmap4Px!mcsJsN@GaBL*b#laE}Tad4fh;_k7dM*BE`O5oK0;{U`$cQUh~9`tkZ
> > ZG
> > z6m=y+E_$5~tj$r*Wly6FWySnP$d~@*HaxTZqmk;sW5DOR6`XBx-
> > vAlXN2mTfRQhY!
> > zuk9198g!ogzX{&kfq(c}V?L42;G7HIWyuJ6&ZLLbGqCF|jd5b29d!zvRng$zGJYjM
> > zXVg7y_QO!D%7|yuFHQ)FR`tZ7(|<Aivr~gk?(O(9#K7`8+1a%l@Jq30&Tr@7T>!
> > ;}
> > zc!*a5kDAZVvFSK-
> > fO%zZd=C+MY%}w`F5~?hfp22^kr%j@?Zmjka}T~rB|&Co864lB
> > z1D+`Z_5)+HD(DhVHhoer)|H+xpZnXVOrINZTK#*d&9G|<eEw#mT~>@3d+C
> > V(V!t1K
> > z^~UY8Q)B;wU#ssmwhMZ|`dn-
> > eWH%K19fc<KmFH%#NYck?2>bSLV9ok{&<$NDInyKY
> > z-LvbZtQE*_GI0dPGTQYT<ImVgED2sKIXx!ct-
> > xWMc}CERNps)pYK$YRE$k2DY(4A7
> > zSxx9B-qk<Rg*9ZgSw|Q6z`A^Ya0%7|QTXoLQmGc7Mcx*$<?mzubr?s;-
> > ?>!Enu|QF
> > zW%YKrz@r~NQI9gagS5$~daYD@2)G$brJ`)$Ej<r6X9zd67<LJ`y`Xy;@T{{L{4VRz
> > zd#q>|<BOJz?fnMb_u&vyg4ZFA%0g~Q6Y`06@E~JOap6*hc#Zw*5MB9Gaq-
> > MWI`-)V
> > z;!EkcxbEgzBne}p4}G*5ZO~A@Od$S+e7*yt>xUA3l<Pv`;Jd6H$05&9A=cO`ct?
> > AA
> > z9%}{GP{FUtV280c=nixUwDv(C8J}!bp(mjXiTU{6s4MqH>@yha(#+iN;kyI+c_Q
> > Eq
> > zD$%-
> > 5YUu{9z+R%x!;zSyR^L)jd)G<>eRoL%{Tn5m8<Pg!Zk7h#xmVKnWkbzlS|P8w
> > zp(A5jF-GQwl(DUl)!b0wSbn>3Zm4-
> > I;vmc)+lp^!B0r`T=Q@xdgU?}TbE&I5cf~mc
> > zZOMV2?pNnaMbrU#p;Yu^<nbL3#2Rk*V~z+F#<qs0VjSX~x=?dWYY6Mq5Z-
> > AE-6A?e
> > zd?&aR_o(^1*{`7}d3Pvk!R|ivYbZ+D&3Doym)89W&hP}6T|j=oq5SM)Z16~oE+;
> > kF
> > zl#|1AjB*Mf4LjWlef%rG^QOzrHog;<$XM6o8_%*B(B~txF@!d17}G(tv#UVL3S
> > gXN
> > zc%|AVv@_v4+4%@?pEBiP$Mw&XveF@w!yd`WeNR8$b1S(9_5%1@N5KzW
> > EoJHYu1Zeq
> > zd+Kwcy-gOc)F*k7?DRsH3SD^ru-
> > veVD!%hPh;KcHu>Q86KkI>BY8VSAp|4i_f^Gb7
> > z)PXkbqn)tg41YL>_v83oMd%vqv&!o4Uz>6=_UZXvj&O6Y>T70Ox*#Xo1MSO
> > @@gmHt
> > zS4g$o_grq~hubXmD%dRGHO-
> > TpGl9c>Zu0UAKI?q(Eak|t{x^IdhcdB`bB;U2mGw6E
> > zz~ABiiq+0Tb4Sk0oSUvR`SIiIX)(Tm$-bd3(_Zncsg;Io^fcauz}eG@9hU)*ve9xR
> > zXJ7@|=a6bCCxQCxGPCM-
> > U9JukUnM(H&j9x?SqIvc<2Q9Fm<RiY`Oo`hsrG&D!E&Ck
> > z$=;$vo*icSE|lkZ>w@gs$3eHQmWo0s3!3_w67r+#3G9(|F5qKxf7dD-$^-
> > xK_j<3A
> > zijJ~u<b}(=9adJ%k(`YaG0yX)qQfjZR<urseG*rT;tTQq+b|j-$geR8_2)`O-$Ne#
> > zm_D=*a%#B{jh}_l=*oufq@evdQc=*PvCouI+GkQ-
> > 2>Y)WqQyGxw#%OdS>n6iW!X~E
> > zw@q3-pe3Qd&?mk_kU4qO&ng1OZv&i1-
> > #in=eNOA_A^VN*H$56wU+8klc?fo)X{J=m
> > zy?E|j(&zsDhr-Evev7)3s4IBBK^C)VThe01NxTnLascB38+0x3%UaXKq!X`T-60gU
> > zQv;9KuV_8!b)CSw3?(d!cU>PR4=13XEu`TTC&@ScYQ7gsznbmS#}m#}4V_O6^
> > XIJd
> > zJhT~Qwzll!Sicmqn})VzN=5UKce9z#v4q&@QU73DH)D#N`(2ly-N4-
> > m+*!cWpgS1v
> > zZo7~2U3@>ruJ;RV^-=G|RLLo2LjNw2iZYPLcCw!(%$-
> > e;BlW+JG;B7V{*|9)k&nPb
> > z0_ME#ZIB0bfIdIYZRq`L8~3wGcbO@_0mzSOo-
> > IQ0*K|F#_VSyDeMH)2ervY^zDf^l
> > zF#2SlWru$UyJ|h_<MW8&Q|h{c^G7_VPWcAGC*D^(p-
> > qvTE~gQTg8uEd`p7!}v&3vi
> > znb{7sZ#LVP0yueP8?7@)M*9*w=7BHDg85&@Gtaha&?Vs%NAIGX&kbTONQ
> > 5m-=y(`=
> > z+~f&*b~Fea+GVWiI{2L$`eEVx*xO|J$r9erPD5K<iIUSFuWcXd=OdyuRp%4ub
> > <y^I
> > z)ZL4^z(;E@&RCQn-
> > 7^vM+9W+by{`s!lJ66MZ$Nv=KhNglyOR1hjp^%dL7vfWV}4*=
> > z)_KLRqyL`3^)#;E;j*78?@vSAd`SK>*3Am`&LcXWM|__8(T}xJ2xIFQ`k*UOD)L+
> > m
> > zJ26Qr;<td9w+`zg*4sE%b|yU_pMh^Num%0@{jDg%{G6YGIc6KvZwSuU`Msb
> > u?HRNU
> > zWzt(Eykl*Ax1RlWsR<8km7GT&ko3O;Fa~hFe78|v#<;TZ(jStX&A@|?*4+jFhq
> > #$0
> > z4bOv;^XV4J`HlM}=i87E{I+g>o1ONc&TN|tyzv{*2duO?|5<71Vh-
> > oSL$3;b{#yyW
> > z;5ezMhx-
> > D*6t!NY*>>xjP`YlKwu8E;>jcLk_Dgy&E_lX+;{rUmxexvd(pbN&8nUI<
> > zSQ_PgDbK}lox(cpwp+x)*TA>Ad*dYM#mKwioTPtKoBA600OZ_fymQb8o#no
> > B1l}d0
> > ztW=!e>B2lrJjYh{2jBa!{Y?a{`}tjuMy#17oZ;sBg|Ps{Vz!Uaealwbc;+0yZ}nMY
> > znm!WG^E?TCaz%-K3N8<Ig5NIy&0N%DtZi_n$r{gyx!j3&sZL?c`Q@(sE}XX-
> > I5()<
> > zCE9JyNy%d3YaGK;LRVhF-
> > w<Cj&lnnGIJpDwgKmRe*dM(8OdfT(3v|+mhZrMcc3i(~
> > z^NQ9jki*Z;4(`*i2GVp}=s^6(@fvl-
> > qOHPygFfnaVC*G!oWwU6G|+BD{GkW_4bKDh
> > zLzeG@rb=B4JNG_-Z-rTL0`*52>F~jI{U{uMCs;q%hB^_uf^R8f94Z|z<J^s{zjK2z
> > zQkG{5{O@s6?M~!vNy0aQv7ggFN!h(6$+KJU=Shy;)XRR@85w7WI6hXvR*ZPh
> > rqDb)
> > ztT>ML)d-vmbF}v1Y*HWWL0_TL+K2T@p9AlOT_-yG*NTDTcOi|nO8=z7-
> > F?ddn<VY-
> > zpEQ4WU!iEF-
> > G6(d7<gwhY{4XLZqF2LF23hDw{NO8xBoJ2?(r{abKjn+&3$JU(v#%f
> > zd>2Wd3s5Izu;R1D$MD|qMDj^JgI<&z#9DPM?pOonw>iW~%0CikAcSzV?84gf
> > 6UbSY
> > zpE-}PujrR^Tv6XJuJZRsOHSBHcklN_YYh4e-
> > ^u7~zdeu_xLD+2PS~%HU7U%fK3leO
> > z@Q8A>e-
> > &)<5v8>s@}Pa}hdlZrkA4O1r#vVJ$ly5SMtQLPmOS2utk}kW$c62B2Xgyo
> > zGJ!v0tZz}L(WVHT8H)g44)`RIIP(;RGf&aG&s_&vkh6w0Gj$}?ECv|k{MfYFPr~*-
> > zk*s#AV(r6+MOAL^Ms?sVIqihk*|xnG<zk?tx$DKgD@~o^nCJt})6ipW41ALr@
> > J(J3
> > zwXr<wCExup=Pu~7Pb9RZ^aC$6RqFg1#%&1pi+epu&ZHfmKn7f=<4pGezJW
> > Gyqpapm
> > zHtA!0%<hH%(+ipKyaC7f2Ur*TA$t)Czv)W&{;^W+2RM__2fRMu-
> > 2j<Q0B*F6Mt>UK
> > zp|jCoUy=s;+S#5B8ZnadEuQZHUI=)(pwS-Ll^?{Kpm%CSt8ihjW-a2co76{KLfn6r
> > zytavfLG*L)O31Vgd5C9i#{O-8jXKbWb#dQiQs-vHaiR};cLZ`eHPzF3x~eL-XBA>v
> > z(Z{yeDDa~)w{)lFh?A#f>HeUK`1dw(5^XL?%M>RO(<q6TMFP)N&BXO7^uU7{
> > ?tbid
> > z>@;~3i23)Ld|^N6{<MAKq(GeYdFXxG^YB&q40=H)VpEzp8N_=b6Cs<l{{uWcr
> > @e@A
> > zfjeXBY5n44G|T-
> > =oa~Lo{UveIk62b(7wE)@656M<Ea{}+H%?xZPBP9#8KiBMPHN-v
> > zy%fgrmq;gr7m1Qr%r*pZ_KodRagOa}?471<LAg}G9*|DDT)6vzkGc*r@0ZA%V
> > tjWc
> > ztqU|!XWA>$N&gJop8|dc&ZiOY4Zx7soC$acW$=xc7XUvkuiM*+F@0KA_a4yi
> > oA=@!
> > zDx~k(`+fcX^}XNI@0<3%fcx*{o93LB@7kM#GpbLBGjlQuIL{@!*-
> > kN4On~mL`Yzf*
> > z_+RmNOTPNS*B_>y_BN{n*LLN#Tq~&qe?^~Ap3SiTedhDON^cqHox!-
> > ^8S#feZyVy`
> > z-@tR9yzb#%dE?&A7)v*b$G1}-
> > L>JBvOcN&;qra#RH!IQ(ODFoM56}zhD$Wbt|1oF)
> > z=e0RE8||eY)d0r6Bm8~XJ-
> > q*&&=sjYjBk_NKS|oO_cZGJOy01U^W<mBq>dkpyg5&u
> > zz31Vll=>mqy~?JCH_5I!38wtgFCag{DZhMEetnSN?T}xwq;+yF@rbN-
> > Qihh?J}({o
> > zy`}-TPREcN`{of-ZklqBZhIo|Jrzya{O~S($AY%Vk8cv}!uJ9<;d@^9jxRj6665lz
> > zvv)tt@pTHZpFfG(IZr8@_nuNFzUIYP+XZ|~v<X7KuUk{Z{egSbhtr(uN#@NGk8
> > G#E
> > zcrR?<F_c}4JlNp`8U7A@MIU9y=Md}%eWc^JV1Bz%47^_|2Fl@Uzh8>?QEyQJ
> > QwM55
> > zgZ;V|wy|fWI*=ly*ZfEq$8>F98#%G182r!<N$^)T!yYdbDJ`>{k8J-T@KJxR2YcrD
> > zj^Xy3712_OHsS1DE53`-`nb}t_X_ZG^`)7)sh5g5pIx#z_bCPXbQjJ$!B#C34{gUm
> > zJB*z>hsMF@m483ve?R2E(9~PX|C^@#5oh0j`qOm}U;1a^JO%yzUD{1^-
> > oZNcJzU3e
> > zy$^ZBqTZ4(s5{o!^GNCjj+LILg?{cr!#lzpFCnD)E+X4wukURoqV)st_eFKgYGbjj
> > zjh2p`!r$uR{LlV8gV-w0%DerDDfE|fT#0QFSBqkQifCoOe-
> > G(MrY}|VS7zXSCPm+K
> > z$?q@6JQ9QFE7W}ILTDnMv(@}V*stOHq5fR`Jw)gbp0C3Dif@Wq#C|*d^FU)3
> > V!qIc
> > ze)#Oy{R?gTN8{)F6U07$lJRYVO1xjc0`gsn_xg3dz&m2yx?cAk6Hd1O2zYS+3p`l1
> > zV7^Vh^rhLC)A0AEv@`0%680VnFn8StTZfU@+W2GPymY<)4DEDVf;h>!CIo*t
> > a(%@a
> > zj-9vQ|9LQ{P&VY3yq5o36p_y-
> > !6)@&gl+(jW3dYKXiM9zd0)4ql4(cf`}MgF^RmEv
> > zLmIT5b~=~-
> > LKNK?M#Heh77fLqf%!0mIhW<J*OM@+zV<m<=ZDeiAHk1fh#wX6@o4;f
> > z3f=tXVNsM7M#t{U;JYkCJPDjPAWs)xfG5&>8+<YDU~l)^2Sx4VaM({pZGuV1jy
> > rx7
> > z*f)P7oV25CgB_RkJ&V59Z8PSqkbLKd9^j-
> > Wv~BOX7k&rqc@O<H_<b&+Z4W&pu#ReY
> > z_<-=w!8@KfzlXmE2-`znu<u^X&x-O|AIj05_hQ}HgL!YNqbncrhWviyr@It)-
> > $S@#
> > z-
> > YgKxU%5^QLbqs3OO^2_nsL^HF?>F|RD7ds>O<Q@m@oU~wGY4F0{$K+Pth
> > m)H;aMK
> > z;OnJx-
> > v)M;{+=wxzvgkI?&yKPSOJ^YcbTVCLF}LhzG4XH0u|^f&w9{SybV3&Jn<gv
> > z$bZ0xJqtc*8{USFa;|s}HiL7^+0E)ee~UV>RiwOzZ?)$99P~n{3*WLB5F)iDgu2pE
> > z*A$#7u<Cg_RedA_G7PWl1Jv~b>iPh*SqJN4ovgbTH2XkP9-F$O7c>zY-
> > 2X@Hby_rg
> > z6=#Qn{hV-
> > `J4WF>6MXlB9^U61aKxwX;5sRUzW5`2=MnTqk;lED7tUK8+ER(Xk4G8z
> > zf@V6}O&QB*_gNcFwwY}wkCuGbn*3RE<@`l@#}UK9oY_6j<dyQ=0=ne&2-
> > f#q)EUsm
> > z--aCcIp)}xg=oQE-
> > R$=e^Lk54If1#oBpYR?3=ZzY8SD6d=u|n*a+O1`tTy62@%>gm
> > zSp2ZRmzq4WkFB=84V}Y#pRJqYuqOCyu;k}s5Th0;CpccpkPdJA;j@Dy`keJNV~-
> > @f
> > ze`c9=okIKU`t>^M<5|^T;@<bTI<VOheNuvN-
> > w$05wHW%`B!sTd)C<ZR?_BRcOW!3-
> > zpHs{_>~?iDJNDvdgOi@ZISMOI@gw*T0&gC-<GVf?H;CHx$m<1d#`-
> > +?#sK3aY!}Cl
> > zggU-
> > $mUW@;CP`VjTuZ_S*@p4EziXRt9>P0+Wo@E%1@M|i;?5y1d?+2)|A=q~@N
> > K@b
> > zps2kCc+9(75wEG^kLlm>d0$EC2!hvB#q+U8u>fo9g;-
> > lJ!rFQ<*4B)dMi}dFGj?w7
> > z^SK$vVoagjth)<7+V`=x)m{`?`u^2k;VfW%Sl_}|bTfWz-
> > =F^k`ox(2U=+qn6#4<W
> > z#W=k^eqqJI8RxymR?j}jAozmFYD~mBw^3wWf;`X2{M_Kbi>!9!%P-<h1msb-
> > KFJhL
> > z?e4YfyCBow%4+9w+-I5PLg0V1clL>=VIRBx56WUMD&qxF8;5-
> > AD($2m8^N9kV<T3~
> > zUFR3=V7#N7aXQ3d1m2s`V>!0=uq~(fPT@o&uAgY*cR$+W+KoD&#NO52BI_j
> > 1|B&Cu
> > zrV3~9_EUM}_YLq{f_u~mesgqw)#p%lJKFkFQPhjFpO;^ph1dBF=aqa~vS%!jXF
> > ?cf
> > z72xS`gxL2s>Y!c=@Wby~{0(%dm*Q!W6~H%mdVemmx`6Yi5qQ|QHSxOI(RaX
> > W`nhoa
> > z061!@a3&)5$Nu=WS;p#*-RKWB2%Q3c2IkHV<a5j%y1g$?la-
> > bp^jj02OU=JSRSx-Y
> > z786fMJhK7YmM+9~F4(CN@!2D$o>8aG_v^oB)@$nVetZ+S)&m=JI8W4m8+
> > m@jP58|K
> > zf26T58p1pF7)$zhmMDvKe51xCgd2NIBgTuhPc{p_@)Nc?sKZ@|D@kJzUz#my
> > 8(0V4
> > z?bZ;Z^WPI)tVN1^?pHwP^!L1n=t9>lp10WOVeIW!Ulz3i{C%d3S)$gDJnAd=%>
> > !c%
> > zo?ZC6azkT`ZKpoQ81D?$h0zKf5w(Y~r+YX{)Lw7WVjMbwK0o&85O;W7^NJDs
> > bQ}vj
> > z6A4?o58s;KUam<y3UL-
> > o;F)=WjZ@yx$BS9FVN3LLdAco;9b(@ylMmWG$N=YrW(}SF
> > zaUBv_681=YFBe6bz?**_?(mtSu7g59XR&jJ$hru4o8?6P9R|w8+Rw7vqe$2zeS
> > BN7
> > zPqQDnPf30I3-oX^;;$k2?9-~s^Bh%E^QdcQVHX&ijTAD@1Hm4`x8Lj#-
> > wOhtc$Gqa
> > z?Ppb&<b4V}wtcLpxOjoDq;$c;Yf2aRe9L^U%;JVX!@9Muxvop<r;imgt7`73oVl
> > UA
> > zw7jZv&CJS*RoOGIuc$0qwQ}Z?>azMk{f3##D_2y{udlwdvVOsuhWZUfHPvex
> > W`+Z<
> > zC>QDH)iGWFBkGzYjNfIrjTP{`Y`;PLkUt6+-
> > gVWhD`qaMZK$qU<Ey!Y9QhV3S>P#N
> > zP`aqFFeh)O$KxwpoSQQe#Zz3gV8Q%F^?}-
> > |>hiVo*H_LwA2NS|cln~3o^=g1iz?TE
> > z@$)cD{zhSH1Uu)I3#$vHGc&!*mVxP|(=)T?&b@N_bW!MYRRz|%ynzZ=arM
> > eI=!$y8
> > z8}#25Pni#2@K$Y>v+iH8`2QOEGbSJZQ@LGVQ&G8={Q{F;Bo^Sm`NAa@iFy$b
> > wW3N?
> > zi*m6RkRnkiuEE_SD)gKNQ3)LJPs_~*R<*d(#I9Vk^2?QL1a6~g;TP)g<tqd8>jQU
> > z
> > z_5Y~|maS{3UDq%=p|IiU4XmxazVeQm`VAPcGjFb}uR-
> > cY41n6odJss@^sZa6qO#sK
> > zcdjcl^Uj*;3YUAjD{H#z(o0=S(CCIL*E}SJ`Fu67veqvQ`z>Fx#5Kc}x%`@?B}=E9
> > z^uFY}a{6fP{D<rn*4$AWs3*U}9L}#?+fa>xfN^e;P9MptD6UyoUtW2E%uJK>8
> > Q{nD
> > zIoLn1y6NJJlCbkL9p-};)^$lB^OB0`SK<D-jcR4tx|Qg(;)aR^_4PC7n@M!q!kYR!
> > z0u8QkIgFxJVbZ3p_SV!i6j#>YSzTVawj@xtx{`Wvp$t^E@|rsWD=QZV)>N#nJg
> > >@?
> > z#U<y%yv66iJ|Am_o_bcVt|{01o1BdT15-
> > s{X)SBX5}BUWFqC&xu4!;x>ar!+;nS(s
> > zS;AKtSZ$P;=hE+DxQ^oLyDLABUbw!PUQ?jHb!!@`@2DJA*cZs7yrC@NJ*(T`&
> > 4Y-3
> > z<M;VwIlq!UToh=iq7;Wy%Nwd!S2tAa7IY~r>3MYxqn?*#4TO1fU27q>niZ~0P
> > U`a)
> > z+;C0dg3=;S$>P!?-?EZrh0B&e^spdSfva6v>$9@5uEYgfqKiDdiJz}kmaZE91!scQ
> > z5SfwkR<Eh3UbFH%uD=*%)BuY5z*w{n)-
> > aq;J?A`VQGHEAO?l1gQHw0CX{cVYVd1(p
> > z<uqdFmGxDwtX|ttuWS5ynM(tAoZm$T!IIk5RNPrtiX}DWtIjJ~R9{_FU)`|5hBIT
> > H
> > zj)^g`U_~__eU+;#F+Wu36wF*S*vwtNrg{xjC9oQOJpyHzfTz4}U3EQjN8^(kFq
> > %LJ
> > zzag-C-T4i3j}9(gS6f?C-%wexB(P@XI&0|Lr>oB~C^!*9CTkj~L)HVjIy2LpxOCUI
> > zzG2x4W294qskWFlbR%NJGwg411E{V12WX?yu@^qC(>T7fuFRg5Gdp)qUcSd
> > $IDf&y
> > z)^8Ik#FOUz1@r#0dH<7n|Jb}oKWN}jH1C&~_bbhNzlrBD)7P2zo6LKadEa2(?=
> > $b)
> > z%=^EY_dVu)zj;4m-hXZ0|6tzx%=`Q1ebBr|J!J41Z{9C5@0Xi*k9jXK@3)!vRpxzz
> > zdB4}ZKVsgWG4KC;+>fdf*Q{x%tX~tLUAeKk0{+j{u332^bK&a1%C*pld*J_MU
> > Fq6H
> > z)yUIt*;)E6FUy*4GKY|fW2nz`*QQNyuq-
> > NB>w&K8)pT+7nsuvJyI=vJP4mP!F>b60
> > z;^Z;Ud|nA#gzv33)a%AGGqZ59$9H8eeKkX$rc;%&glBDeb@dR|h^$Mp^48C|
> > Br9j=
> > zf7$CV$;xKRcnH4>04iph|I4Xxx%hY$|A(Bsn>cQUTSLR1m6c<)$!P5mA2x26)m
> > N{C
> > zH@Dgx8#>qUutulFCPAo_+{lKFPNjHVIeeP6;>JKdEZ0ic@-
> > ?g0)ZDekwP^K*+NvSw
> > zeAv8(O4q_b^=huIEaV$uE6<0TlYU7}jjQ;M!0OdQ=vXDg9hx6#2*7q?u?7#Vre
> > 0jL
> > z=1y443OE_{u-nihv3$*1%XkSc>P&*{MFBJJf@@N-
> > K^SwcNyOlUGfHJSY@UF#@4{5;
> > zt6Z!5xogD@HLKTQRw%5guU}W&U?mqqi$KzKePu;;K<NK>;WIsJR?<47riC@
> > @)>H_O
> > zE+W_b$~DzGoMdZj)~qErt~;<QfZ*_Y70B1DYtYNBZ3xix!ey!_uTWGoU8b94a
> > ZTa%
> > zMJDGZ3rnm=YeF0nOgUZqhHChmt{W=r*J2_R#g*mj^cm`g>YCO1^oQkdp;=
> > <VnhLhs
> > zXbqTz$68t8%FNE64tLH<&4M>!A}*|6T{$FwYn~8XP}JAlQH?py=&a9Y6m*xV`
> > p)IK
> > zIqPR-`zr4Uz_rkqOY^JmtX^AFZw$82PYWXfa@8jrW0B-CAjS-
> > 13?6Hqu~u5H(v?N!
> > z6{QQS*H>0}8uV~SDFD|8)>q%L?hee&<?wzCGDZ<-
> > (a=iiyoqIKlCvY}^V`VU&ABks
> > zjyA((tZ1fVDToSD8>UKK7cp{;_Lym`0&NBV1^l_@qSLnC{K8@Yi-
> > wV0SY5xi!H|$?
> > z9*44^dNpe*M&v=O)~#;Pmjc66{XMW~SlPM_Ogt{REbB6uq?xWOp?bqbpcj
> > U+z{cw$
> > z$<3MW8ojXV^02ZfVR;}%32O#gT)DomDo|fivm9OvWNvbS>gUaK<xCfD#Ok
> > P5V9QV*
> > zGG}ATS6o%Sq5*uJ&(uGw0!*TU&!>u(X$B{zB3epe(*^K2tVC9cFQiGM7P2^;`;
> > SM9
> > zRrWj<U15r@&s2GwR)@HqOPx0qDop7iR!+k<bhOge=F#-
> > uZP0*Ik+mMnp|A<tSBZGv
> > z8r=yVeL}ZsbXd_58XcB5f~QgZgc0Mwl9k!y%0PX2)d+<1)Q(ygR?4srhMBaK+a
> > @g=
> > zL!VnQESrM@!(z7)g0vAA8l4aK(0bMIn-
> > FL<RvK4hEM^ToXRQw)o?ztAHm*R#2)DrJ
> > zTwQS1@YLTib2<DQgd{2}VDLZR9AN}GSiZ2PcEgD9mk^)i#HMP;KJ^5zx&Jq-
> > Q&x1e
> > zuDNkc!5!Tb9?TcPSF7v4eC58sEv`S?wP1I~M>m~w#Qb*f*1K>2&v$E={qPU#_
> > GDf1
> > zdcqCP2Y!;<_P6;DKmY8k&5awrdHG#;J9~cn#)Rz)#n#IT4qY$ye!S$Rs$EOI^S8b
> > 8
> > z3X0_If8Oog`lqRR*FJXk?mz!V`^xPt(=UJG(~n;Byp(rWN7X|w<p=JaeCzW`)k`1
> > 0
> > z{9A8sC^>V{o-2dNh5J&j-_;d6=F*GX>e{cIa!c8x;IF{o&+zik|NkpSI74i~K_mY1
> > za7ab}IT7(6<(GH8zv9V=>gfUp39Mi3#mTaY#54jX3OOi5+!PTfA`ZPYJK8ZO8fSH
> > P
> > zh_Pzi%msB%9;zb}KEAcoU;gB$cmG9f)$57I9;tBR!n;5Q9n=s6om9|?1f8hJ=x8y
> > <
> > zptHb6XS^eAko0P!g;23!qvE*>S1)M2NP2iCtK)I8X)fStQCQ#c8P_ork2omK7Y@
> > X?
> > zka&U#$b@*cxZJ=aj}|?=Q>4?g@K|o^D0t&cye^ZTigXZHRv5iFz{sD<en4I_Zuj
> > B3
> > zl#JoB_yham5U#9$f=61!bD4PL&(E|;&uRzGo9k`zn|N6!US=2`&cy3@njDf`c)l7}
> > z8ZMlP5?A1IkRX08<tEvMJM%Bam5GZq9oCkTLntn!nNPR}*Oj=e@*+YwTu3u
> > t#kCq2
> > z&Y2A5tC24b<>Ne{*okYFEnjo^b^6RJ#KrPoHuGJ$-w-
> > ie|4gKp<I2ay`lsQpMs6A6
> > zZw}G{TvwU-myeQvr<E^b(;3fNRNfGOUZl6-
> > %EM*R7ZI)@`fOJTuGwZj>4)bpvhq#(
> > z!H8l0NcXF_@LrHkpXI~zS6TUH`K^&DBlx=u`D`coWBKs>N349aycRVq|7(%A9T
> > (ee
> > zwU1*^gZ`?3X}GpPkNmhmUf?ETaZxu{A|;nDD{5NacrZ;Y8%O;YPd)fhX4+$&P
> > Y()7
> > zRvZxtQF-}SefjFS^YF)~##8YzJmbV*pEO=X8bxE~=@lX4FD-
> > 9nigz4+=M|Ooq0h1r
> > z;|HgrXdH`{Xv0PS`oLS6>N^gr*2t*nF=Jz5$Hn1OFXm7E*NgrSYGqN~rUfI6vEl+
> > d
> > z-
> > +>S*Q_7MiB?%YpRV{29@rsas0@t%)c=3Q;gNr!AMsE)AT)6O0r<aI3>1{Rb)ncS
> > I
> > zT=?$P2)qe^k)Hl@;~QSW?dJdVoBjw&1;U*u+y!oYzg`r$-
> > HC2@fdH5(WCDPE!gLgT
> > z<-
> > R}^B#MFpcVePDvA|uB=q^ASC4hxOKqN(w(~Bko6?jC_OQIOdfDB6mgak2=t&
> > >bl
> > zOf0~Ei3K3aC){w2!awQ*Yy6Fl9}y7|9UUDL6B8E~H(|nrgoK3T<mA-
> > URF}&&ZQ3-f
> > zBWBE)k)55LmzSs0FK~*2G*K`UT=3t_0+CjLb5LlDEyD&KJtHlx;Ig!WnP~-c(h3Ur
> > zZ%#ql%!0Jb3PxtwprdEZm{D-$jDp-
> > 51y{`|DB!=V3TEUM%(${(WQGkodIrv3Mv2ro
> > zk(ww{Q~56uGj*znN*$SDgN~jN7neFAE;TVOH90OdmH(1c;}TQjCZvwcut7)9N
> > JvOc
> > zN=QvkNKHvdP36Co)P&^JgrwAw88+zX8M+tZj26yV;dJs}EdER|{;IKaWQGkod
> > Pa1#
> > zb8NITHrg2%?R4^AoHIJs89mlHGQ$QPJtHQ@85`pq7vmfs<8<=hcxTKwXH2Yf
> > WQGko
> > zdWJbt&%eP|bNtia;8?GNoxceeZ69vBUEs6J#N&Lf;cBqqAxrQg9(_2{<J`0!7eA
> > 6n
> > zdY9mtCWV)s9^|UqEPK5uP7|f$C7bkINUON+veipGm^~ejZlsEf(**sBali{9jhlY
> > q
> > zCQjoDngGs2^Kp&lU;P5`ED)v*BrO-NJn)f%i*>RMlW@^acA-
> > MzRU!Q%E>9TVM8Ie#
> > zL%>mO^z3$=ZKWSYdMfA<?<S<5$7Q$U#KZgF|4-
> > Om>WGHEKy!s3*J%B95^&YTqn>2q
> > z!uxl6zoKjPzF>C}58s~E=@C!G^$`%*|8~4X%ro(*pS=DahKFq3Z+-
> > %dY0v@o1N|bL
> > zzt(jCH(fUqa34ct;J~NU>#Rj`3Sqc-LpSQ<ivG^!?<kL!DJ#pRJIkf_R!U7}(#sXn
> > zwlYbp5F4@GTqZV^i3iKXs$y+rhPXXLT)#xydY6`YjW*{REp36eXtj1prIzRSX0Oz4
> > zzeDr53PF><{}sA7NhaO-
> > Lv;B^(mAHsP8HW^;~h;GZ#Uw9_`PJ_jnwe}=X;IkD)au|
> > zCSExFuO{50r(J*^_2rBH&=m0`uAFC$YpM6jEIW-+!UO-
> > mA8ZRh0(V6PHV#JnX+rn`
> > zuMIvQd@-2SUe!_CvA#p=xUXYt#}ggFj^{gG?0Bi8tK*f9-
> > *o)GBh>M3#|Ir}I>esn
> > zJ<dJJdt7@m_hjwK+oSGTyr*c-O?&)%s`k|GS-
> > (fybKjn=d!E<>!dqdpaZ{gL{9Ms<
> > kcnBIcPuq3huHdfccfGjlrCnXSUfK1VUBBOj-1C0_AJBKq+5i9m
> >
> > literal 0
> > HcmV?d00001
> >
> > diff --git a/Drivers/ASpeed/License.txt b/Drivers/ASpeed/License.txt new
> > file mode 100644 index 000000000000..3dc49d3aff4f
> > --- /dev/null
> > +++ b/Drivers/ASpeed/License.txt
> > @@ -0,0 +1,25 @@
> > +Copyright (c) 2020, ASPEED Technology Inc. All rights reserved.
> > +
> > +Redistribution and use in source and binary forms, with or without
> > +modification, are permitted provided that the following conditions are
> > +met:
> > +
> > +1. Redistributions of source code must retain the above copyright
> > + notice, this list of conditions and the following disclaimer.
> > +2. Redistributions in binary form must reproduce the above copyright
> > + notice, this list of conditions and the following disclaimer in
> > + the documentation and/or other materials provided with the
> > + distribution.
> > +
> > +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
> > CONTRIBUTORS "AS
> > +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
> > LIMITED
> > +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
> > +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
> > COPYRIGHT
> > +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
> > INCIDENTAL,
> > +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
> > NOT
> > +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
> > USE,
> > +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
> > ON ANY
> > +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
> > +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> > THE USE
> > +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
> > DAMAGE.
> > --
> > 2.17.1
> >
> >
> >
> >
> >
>
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy
> the information in any medium. Thank you.
>
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy
> the information in any medium. Thank you.
>
>
>
[-- Attachment #2: Type: text/html, Size: 65337 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2020-11-24 14:43 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-11-18 1:59 [PATCH 1/1] Drivers/ASpeed: Add ASpeed AST2500 GOP driver nhi
2020-11-18 18:08 ` [edk2-devel] " Samer El-Haj-Mahmoud
2020-11-18 23:39 ` Nhi Pham
2020-11-18 23:42 ` Samer El-Haj-Mahmoud
[not found] ` <1648BEB9C1C66CDA.13688@groups.io>
2020-11-24 12:13 ` Samer El-Haj-Mahmoud
2020-11-24 12:21 ` Ard Biesheuvel
2020-11-24 14:43 ` Nhi Pham
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox