From cfc794c3bddaad0ed89a184a54ac2b8c5b94c3d5 Mon Sep 17 00:00:00 2001 From: cra0zy Date: Sun, 29 Oct 2017 16:46:34 +0100 Subject: [PATCH] Add arm linux stubs --- CakeScripts/GAssembly.cs | 12 ++++++++---- Source/Libs/AtkSharp/AtkSharp.csproj | 2 ++ Source/Libs/AtkSharp/linux-arm/libatk-1.0-0.so | Bin 0 -> 5032 bytes Source/Libs/CairoSharp/CairoSharp.csproj | 3 ++- Source/Libs/CairoSharp/linux-arm/libcairo-2.so | Bin 0 -> 5028 bytes Source/Libs/GLibSharp/GLibSharp.csproj | 9 ++++++--- Source/Libs/GLibSharp/linux-arm/libglib-2.0-0.so | Bin 0 -> 5032 bytes .../Libs/GLibSharp/linux-arm/libgobject-2.0-0.so | Bin 0 -> 5036 bytes .../Libs/GLibSharp/linux-arm/libgthread-2.0-0.so | Bin 0 -> 5036 bytes Source/Libs/GdkSharp/GdkSharp.csproj | 6 ++++-- Source/Libs/GdkSharp/linux-arm/libgdk-3-0.so | Bin 0 -> 5028 bytes .../GdkSharp/linux-arm/libgdk_pixbuf-2.0-0.so | Bin 0 -> 5040 bytes Source/Libs/GioSharp/GioSharp.csproj | 3 ++- Source/Libs/GioSharp/linux-arm/libgio-2.0-0.so | Bin 0 -> 5032 bytes Source/Libs/GtkSharp/GtkSharp.csproj | 3 ++- Source/Libs/GtkSharp/linux-arm/libgtk-3-0.so | Bin 0 -> 5028 bytes Source/Libs/PangoSharp/PangoSharp.csproj | 3 ++- .../Libs/PangoSharp/linux-arm/libpango-1.0-0.so | Bin 0 -> 5032 bytes 18 files changed, 28 insertions(+), 13 deletions(-) create mode 100755 Source/Libs/AtkSharp/linux-arm/libatk-1.0-0.so create mode 100755 Source/Libs/CairoSharp/linux-arm/libcairo-2.so create mode 100755 Source/Libs/GLibSharp/linux-arm/libglib-2.0-0.so create mode 100755 Source/Libs/GLibSharp/linux-arm/libgobject-2.0-0.so create mode 100755 Source/Libs/GLibSharp/linux-arm/libgthread-2.0-0.so create mode 100755 Source/Libs/GdkSharp/linux-arm/libgdk-3-0.so create mode 100755 Source/Libs/GdkSharp/linux-arm/libgdk_pixbuf-2.0-0.so create mode 100755 Source/Libs/GioSharp/linux-arm/libgio-2.0-0.so create mode 100755 Source/Libs/GtkSharp/linux-arm/libgtk-3-0.so create mode 100755 Source/Libs/PangoSharp/linux-arm/libpango-1.0-0.so diff --git a/CakeScripts/GAssembly.cs b/CakeScripts/GAssembly.cs index 30b92e630..1d494b896 100755 --- a/CakeScripts/GAssembly.cs +++ b/CakeScripts/GAssembly.cs @@ -85,16 +85,20 @@ public class GAssembly { for (int i = 0; i < NativeDeps.Length; i += 2) { + // Generate x64 stubs Cake.CreateDirectory(P.Combine(Dir, "linux-x64")); - Cake.CreateDirectory(P.Combine(Dir, "linux-x86")); - - // Generate x64 stub Cake.StartProcess("gcc", "-shared -o BuildOutput/LinuxStubs/" + NativeDeps[i] + " BuildOutput/LinuxStubs/empty.c"); Cake.StartProcess("gcc", "-Wl,--no-as-needed -shared -o " + P.Combine(Dir, "linux-x64", NativeDeps[i + 1] + ".so") + " -fPIC -L. -l:BuildOutput/LinuxStubs/" + NativeDeps[i] + ""); - // GEnerate x86 stub + // Generate x86 stubs + Cake.CreateDirectory(P.Combine(Dir, "linux-x86")); Cake.StartProcess("gcc", "-m32 -shared -o BuildOutput/LinuxStubs/" + NativeDeps[i] + " BuildOutput/LinuxStubs/empty.c"); Cake.StartProcess("gcc", "-m32 -Wl,--no-as-needed -shared -o " + P.Combine(Dir, "linux-x86", NativeDeps[i + 1] + ".so") + " -fPIC -L. -l:BuildOutput/LinuxStubs/" + NativeDeps[i] + ""); + + // Generate arm stubs + Cake.CreateDirectory(P.Combine(Dir, "linux-arm")); + Cake.StartProcess("arm-none-eabi-gcc", "-shared -o BuildOutput/LinuxStubs/" + NativeDeps[i] + " BuildOutput/LinuxStubs/empty.c"); + Cake.StartProcess("arm-none-eabi-gcc", "-Wl,--no-as-needed -shared -o " + P.Combine(Dir, "linux-arm", NativeDeps[i + 1] + ".so") + " -fPIC -L. -l:BuildOutput/LinuxStubs/" + NativeDeps[i] + ""); } } } diff --git a/Source/Libs/AtkSharp/AtkSharp.csproj b/Source/Libs/AtkSharp/AtkSharp.csproj index 23f3dbad6..a50e27e97 100755 --- a/Source/Libs/AtkSharp/AtkSharp.csproj +++ b/Source/Libs/AtkSharp/AtkSharp.csproj @@ -20,6 +20,8 @@ + + diff --git a/Source/Libs/AtkSharp/linux-arm/libatk-1.0-0.so b/Source/Libs/AtkSharp/linux-arm/libatk-1.0-0.so new file mode 100755 index 0000000000000000000000000000000000000000..99996b548c1a5ba91700a80e5652defb651bb7f8 GIT binary patch literal 5032 zcma)AU2I&{5uWS2ChPFyjhjCpr5h%-Qe8F}u^oHJ+6IdjgOne_`Jqh~$O6AQi^7fS2hB9DWf%HY!_-H%IFQs_G<2iU*x z`CTFw(@-I%4DMJ%17VLwm;`vrzHWo&9#2vrSs+ZR{w{pe7?VaHaSbw&{hVVT@IfHq z0B}F>ZVG_Cny7Cdz7GIutg&P-|Sw}+Iv2%zK-^+ku$LJ2goT$evShTa1B2I^4tg+tc;ed{XW?L zi|WxI>RX?%B@4Vv>e&ARvTN@mWD8j^-I%~#&oj0Yl=d%l$cv7g1-}pD-TCONkBx)- zq(>$kecD@aV-7Um0ygtH(L zhWWS>pD$FCxDw7*qEd|B*)rO9Z7oHG`QeGF$t0>IwFN1~rD~i=l*Eg)7#0iDGs=1x zRVvYvP#w+HB$~M(b5SM#i>Sg03Q0IuE??Oh0v>!b+Gt2pZ}1n;|~IH2pK2+B25#KniC2cR!29FuRXK5U4He( zL#=^&YNNlI+E{MhxAD?Odi(Fq>s`1&*IwGpy!Y$P>;HbMY5A)T|CYnQ>F}2w{*uGL z0zQ{pZc6rprpQDC^X|)>?!W1uUa22pyG%9?%kqIntM#ClTWLt{YBO{CZ+d;^Zr;NF ztuDrU9G}T7H#4%_+-kKxvHEbeq%ns2TgLW!Zn@iETd7O7x85s#4ZN3o-`_skV4L@+ zvCX}?mHI!e{N(WFM-KlF!*`+m1Is@#yxGdV-Do}ab|aPZv9HOSSF$fQy0(wjz1M~} zC9~S_R$+T#rC!APidpV`V&e_0bIPm+;tKk0#)Gsi1{=aa$bKm-^^#azQ;5FQ*JdpBxK;{I#nS2}h7BN@w z9y8zYsb)UmeLiAjw!I022|0p9fgw`l20i0+~y1)IfKBugy5TMfbpPZo(919#y1rJ&y(PrjA(u53$wUBH&S0!5@1YR zGDj0^4)WD0swVaEahk5fQu0~ryXdhwnYV?qUB6)cCw7M8zG?k!vwy39qkR#2WU51- zqTR2D+ZVFItd}>D^YOlGNXxV%cj3lSpYOVcv@mDe{dw3Q`>nqiCBJfH4>IjDrZlAG z4M(>2`TpDfzk=bLMX>hm`7j!3HX#aiP2lNc~lf$;c z@a)9k*ho0?>=_oNXP$d@aO~VLmtHN0bJ2Xh7)$uW(ea_d(Qy3i*~yWqaB6U9bi@|3 zJEg5EXH_w*tL3nxx>h@YVWsDky|=H~cZ%h2uB>h0uIlq$>hg9)tbQZ3%X?kN+X|Z1 z^4Cl2U4Ju3P+ck|(KKjM(R9vob5V6pg8b4vR5VR05>(eASWy z)n{#ffRya?L)e;G8XIZ1yC>NB)0j&B!3i7SH1%kn5v8=E-&F9S3j0 z&iflQSUvS#V{qsCIOcai+EweryPkr;+TDU3^D-Ks!z-eIdTuRdkH-4W>g8x0XSW}O k_lEW|K;9|NX(5Ln6hEQU4On}u`(3?@aOR(_5~$VtFCAzmY5)KL literal 0 HcmV?d00001 diff --git a/Source/Libs/CairoSharp/CairoSharp.csproj b/Source/Libs/CairoSharp/CairoSharp.csproj index a8192f3b8..0ebb10c44 100755 --- a/Source/Libs/CairoSharp/CairoSharp.csproj +++ b/Source/Libs/CairoSharp/CairoSharp.csproj @@ -15,7 +15,8 @@ ..\..\..\BuildOutput\Release - + + diff --git a/Source/Libs/CairoSharp/linux-arm/libcairo-2.so b/Source/Libs/CairoSharp/linux-arm/libcairo-2.so new file mode 100755 index 0000000000000000000000000000000000000000..f6b81edc572e61a2788b97e94974a3b4f2aef320 GIT binary patch literal 5028 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 literal 0 HcmV?d00001 diff --git a/Source/Libs/GLibSharp/GLibSharp.csproj b/Source/Libs/GLibSharp/GLibSharp.csproj index 544df64d4..40d3375d1 100755 --- a/Source/Libs/GLibSharp/GLibSharp.csproj +++ b/Source/Libs/GLibSharp/GLibSharp.csproj @@ -15,11 +15,14 @@ ..\..\..\BuildOutput\Release - - - + + + + + + diff --git a/Source/Libs/GLibSharp/linux-arm/libglib-2.0-0.so b/Source/Libs/GLibSharp/linux-arm/libglib-2.0-0.so new file mode 100755 index 0000000000000000000000000000000000000000..3c097d1c9d3412ddd45a02d5310cdab6d00abdd5 GIT binary patch literal 5032 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 - - + + + + diff --git a/Source/Libs/GdkSharp/linux-arm/libgdk-3-0.so b/Source/Libs/GdkSharp/linux-arm/libgdk-3-0.so new file mode 100755 index 0000000000000000000000000000000000000000..103b2baed6f3008be63bb9af8d256ab42b0ac08f GIT binary patch literal 5028 zcma)AU2I&%6+UZ>P^D}48%$)f-XZ_sx#CgYY#DFU&h0={4kyD_jQurjK=ai%+iMGRXi0zfF zyF?83!i1QNan~CZfNj_k;S%5||61oj??@6I(mB3bvZud_C8xn}Q{EXrB}cma&9XfP_W!ZsxnrE)fP4XJ;+=x#LDix^X%fG%Sct@* z0}aHDiems7CdQl)_Rij3kJ{C3^IWg=|iF z_k(IRSQeT?U5kR;MOg@{`JV<=4p4~vg>w0#)XH;Fm&*6EwHkX=Bi~0~O5tK&@yb1? z9lIZ`7mE3*dQ_=L!xM$Y`qE5P&(?-vHlM#Z^oUn0dl|UM2T`CsiXT#l-Ks&r$L>Mo zH#ld!OO2RbkLg-Wd9T?nIM1Z7K%cU6r1xNDK6x7Qrw9(Qe5U6 zq}Z}`_&JQeo22mbDJd@5=cKscTco(u{~*PHw@5M0fh&#Xtxtw-CRZmmPOd$%CiVx34E~c&@#)k$V5<8`uASxo!BX7Ju2|-?I4EE&h_l zzXCp!S!ql9!?wtD3*+9GIy-dJJ=PiH?O3hZzZ;lH=WnU zHYBy$a#rEH(r6YjzhatepI(0x^PG+6gedRpUvD(stw!_Q9y*cL7X8TC)u!`<)#f1l zTtfd}1Cz4a>`ARQUj_d=pniRM$o>~@x9^+(={$!yD7b|4^bC;l`#|OczL$I#`3^Bp z@EkMO@R?>V;dwq5%hbIEgbO)_B!Mnc(;P-Y&n~{g`3Bn*-5a&49o{{Ov)3fI$FUVbq zUZ>9)NFH1&i%Vi*)ayLpWvz}>h)`xtJQJQvd*Ghruiw~jTK2PD_7u%} z9h^QNvdM2ei5!pTT|=*AEjfXB(w^_ShF($mI$ocH^|77jU&8@;!IB-skN$b5H1x`w zmTdg<{WtA@0>d|pVEpsGY1l8F{5X(DA)EL+i2oF1z5@idGhXI=vr^=Ey*u%_ zTg7v~C0|2VyIu7b;;Y7%<=l+-yZJ>WOF}Q4}Jr(0s1>($!W-gly}BY$s>?$ zf8Vm~+5bT$@79B7Ae;SSJveUJ)4vSYYgHCa!}Gb^a8NA`EtVI0%y6z6 z6}+;X2=2&q5vJ%-i|TW8UQSNrS%Q`Q`C>U66#aZuuGajZz9hMFsZtE1Fz=oD?&*j3 zHc~~ZuJ%x-Mb%}|HEO&M0K@Tbn7pBbO^XGcaS#!Vr+ zTh^*lRu#g!QuezlYqbJ6R(4j&d;5BQw^07-s@fFosy5%FCf})t)$fCy(q7l_rhaCv z{N=)W&)*B;)s{<9kOhsZnl2b_A*d~gmtS6liKbCiylPmaPBWEaBp!n#9)4lqtES{3 zmwWiZkzW!oT+rLD&ElU0%FOU^7L*D(@#f2LpsIflp%UdKh@xsCTaUsT@4+1c>n1*5 zyhf}Oi2My|t`$=o@i>sLDfO(Mh^s(W3`E-SzVf}KOgq+F3Sno!u-}2A4@f)K8^lU1 zgD8Kz^^XB*Hwt7OLS%i$e$4g|Rh2OYO5aQ!>rfJpf;T`r!s9?=$9J8$pjz~YcEk%n zW5;|vg5qqLfJ7t@_##Pu?(X6a6euIa(?v3Jb43lC&3#q z$8h@<&ZMzo`%s;3e`eW?=3ziKxXaE2J literal 0 HcmV?d00001 diff --git a/Source/Libs/GdkSharp/linux-arm/libgdk_pixbuf-2.0-0.so b/Source/Libs/GdkSharp/linux-arm/libgdk_pixbuf-2.0-0.so new file mode 100755 index 0000000000000000000000000000000000000000..2a3e899b9d84ff30b8c4623311bb81fee524015a GIT binary patch literal 5040 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 literal 0 HcmV?d00001 diff --git a/Source/Libs/GioSharp/GioSharp.csproj b/Source/Libs/GioSharp/GioSharp.csproj index 44ae07774..fa3177fd0 100755 --- a/Source/Libs/GioSharp/GioSharp.csproj +++ b/Source/Libs/GioSharp/GioSharp.csproj @@ -20,7 +20,8 @@ - + + diff --git a/Source/Libs/GioSharp/linux-arm/libgio-2.0-0.so b/Source/Libs/GioSharp/linux-arm/libgio-2.0-0.so new file mode 100755 index 0000000000000000000000000000000000000000..6950594b56479c8064a254c900b99331630a7f97 GIT binary patch literal 5032 zcma)AU1(g_5uU5NidW8$)~f%Kxak@kaEW!bO;hZoAy|^-U?N3DQXfJeZm+ag(#E@5 zb@y&7Jp}@#4=$uHZ6A_UqWB@SPS8UhN=btujw!(pN)xD{g=)20uxTHZ5=bZ}+wVI+ ztCOvqdeGdNIcLtCbLN~mGpm$4MVZ;yPp^`#Hw};KM+| zA>cvay%YfZHBsL_d>;b#0`FHXB1b?U1bz*8pK1Fl!ZrJjf?lI;;99tEy2wJ0VIBZI z4CL0i-lM?1V4Fq&zS+H`wfB5jeG~0jBWGacH;_|~`~n9W;2ORQV>9 zlOCCH^l5L=k+a~x0PfD8kq0~MO*#4;|05;y#JIjb`Gib+zZrRyvVkmVSXd||63&81 z80O2C z%n#KH#r$|JS*#@kqlJaq(qvMbt`0zLu2AlOJjeyra*%_Oe3V4mri3vCV^~cC-b?@j z_q>L?#(27H=(?dF8_L*bf6CBRw09vuZjd4{ui>n_5WIgT#R1(QMNqDjA}&5AML=(m z;@Gxf=P<_JB!!)Sks{D`ND<_pk|MA_C&k3KNiom;S6Azw|D*p_YHf7uj2QHAN;GnD;>DZ2v9)>}vfO+hwwGR8|f(TCIn@+-gH|*P5BLf70tSck?#( zZ*?)=QwrJ0eH=60*~Ppc1COB!RSzin)9uUDpM%T{qy7$KL zmSol%-WqH#uGWiKUop$QPi(%0bxxTz!OQ!5H&^Ta&T9SK9&I9P4cd{jYjy8?YxPsG za~b1*4NS>ey*sm3e;xd9f%*mJ&i@zgbne?xChoRKkQU}_yFU;6W54wmqvU6f>_Mh|#*~J% zyyeK&KHq=a|3@%1VWj)*;_^WX{(M`|f;4Alvw0P55=l7HIE;BWEF>g1kF_M!pT% zwf7B2pW`1@@@`FdhH~4#85wc(X3po$UIq&7Pn%*cs6i?DJyS1eCQ#W0_gE7dTnEy+x|v{;OjI3Jw(&gsYZ zR#JtkuJ}->C6#5-b!xs=DlJQS`o(xA;qcQK?({fys2TQu_ZS2N?Y}SkfS$pAa@bZF zo}U;T8wp3AKgXi<+zZbSj$Ih$(yQfgK3d2ZV+o%f9UmGT4ad))pB$MArv`^cM{F^> zTiU8}Ru#j#S`Is^YqbLyR(ej^d*_;cw^;t_%Gwt0sy^SNE^k-F>Ni5Wyw`QSt)N*g zf4Q{Y^EZP8)#XwWO@k&CP3J8)A64fi$S*HIMbo4rK_xD-O*4zdL;^ZV0{qIrS1l<( zE)VddBflg;Jg<*ktC^n$O3m^x7L^J!63mrhK-K>NTqVj%lq8kHbS;UijDx!b)=hlA z7)GoUi2NOD!-}bmcpS*rld zK&!`mOkA>yH##6P?&$FyBQ%b=bAmqC-7lk|r`PQ(2%j}f^Z3zmNo4Xl3P zUY&pOCS#tP4_i(Brx=mC|E=E>nRAV-7VNLuc84uydnyy=hkBOXsqw7UXI3bb_YRt kZ)h(A - + + \ No newline at end of file diff --git a/Source/Libs/GtkSharp/linux-arm/libgtk-3-0.so b/Source/Libs/GtkSharp/linux-arm/libgtk-3-0.so new file mode 100755 index 0000000000000000000000000000000000000000..63f071d26c9624dcef88c337fb015ad0821fff06 GIT binary patch literal 5028 zcma)AU2I&%6+UZ>P^D}48%$)f-XZ_sx#CgYY#DFU&h0={4kyD_jQurjK=ai%+iMGRXi0zfF zyF?83!i1QNan~CZfNj_k;S%5||61oj??@6I(mB3bvZud_C8xn}Q{EXrB}cma&9XfP_W!ZsxnrE)fP4XJ;+=x#LDix^X%fG%Sct@* z0}aHDiems7CdQl)_Rij3kJ{C3^IWg=|iF z_k(IRSQeT?U5kR;MOg@{`JV<=4p4~vg>w0#)XH;Fm&*6EwHkX=Bi~0~O5tK&@yb1? z9lIZ`7mE3*dQ_=L!xM$Y`qE5P&(?-vHXmIadc>=hy$oFBgDB7*#SbaOZq*>*WA`BP z8=N!VrAADz$8;^Gyw_|OoM+Nkpikg(yhn;lc?J8Nz{R~vip_bC6c_S3DelA?DK7I3 zQf%2e{2WH#O;Y&zloXfjb5dOJEmB+w+t(8~Jl9^@NWK5_jq88E+&27Gi@$8~Z(0277Jtd& zUjd)Vth6QlVOwOng>mmoogKRAo^3RbQ7<#Cqq1_S)#*IoWEw5WTy3Y${#nh>oaHcQF47Bi8?)zZtc#Asc z_mdm@GL7b6jr`cy#>W=_mzYmL|DoX@9oy(+-f4Bd|4u8Jaj~wMn^)4$w-Q^&o6c)v z8DhCW7v!!) zuhZuYBo8`=oFnd0=l)%%>=*;rPjFQf_4>8U)#|utS!YqMQ_Gs+`nAj`?&d3#4>@;& zE6fghzersbq1}ApB3}?#lMvjv65xH%GIvAor^w_&(trxQMA9j6F)7R z^TJ!(9Z%Yuc=9$sgsB;s@wI{DJ&Ja7ejLc7kWKs@#D5Ah-vI*K8836bSt)Y7-ktc| zt>U@glCPnwT`z@n6~}}1VNJV+QolPtgKXB%dhnN!&G}f3o$uhky5wz3=6L<^Z;y8bvbi6u2fqQ?0R5e?0gHHwJM9I;rU!{IH;C}7R!s_5FgLs)84~gW;j=k z3SL=G1b1Y*2vhW^MfJHkFDEDREWyhDe6gGjihe#SS8IMyUy@w8R4Im0nD@?n_w>Vi z8>u2yS9>VaqUy5f8Z}=pm6oNPeKyQR?0y>Etrn{Wjl2EdHG1Cg&fk|~z{p@d87#~9 z&rgp`j{Db0`J5G>}4q4-ZsOpT6A_*3W4&y3Idvm>Jui5A;X|HQ|Q$Mp- z{&Hcx=kEpaYRjc4$bv>yO&1Ke5Y!gL%P%j&MAN7$UNtOIrJ#qL{YVntw&*v_uvkJbrYX2 zUL)2CME(Xf*NUl)cpS*rlzP@r#8n_G1|n^EU-@2ArXA}og|IVV*zZ8m2c#YA4Pqsh zL6kq<`p1B@8wIisA+kPWKW2M~s>&DxrEjK=bts8P!5g3*;c=j`W8sr z{^kE_OdD;<6Mq6^oM@-&0+eWb*>PTQq3oC+`M;gDSO!sjxF0V9IY0Vip1c9Oli&@Q zaeo1YvEzHay~nuh^D7|zs`)W5Kw#}|z|8e!C}6`Qq5*bxEyl43q>P<`K|06Y9R%UI kp}!Q6XG)C;N*KfsiXT}WjX&1?w%rQ|<{wlK{V{g`1&~ZPcmMzZ literal 0 HcmV?d00001 diff --git a/Source/Libs/PangoSharp/PangoSharp.csproj b/Source/Libs/PangoSharp/PangoSharp.csproj index 985c44707..c88c74159 100755 --- a/Source/Libs/PangoSharp/PangoSharp.csproj +++ b/Source/Libs/PangoSharp/PangoSharp.csproj @@ -23,7 +23,8 @@ - + + diff --git a/Source/Libs/PangoSharp/linux-arm/libpango-1.0-0.so b/Source/Libs/PangoSharp/linux-arm/libpango-1.0-0.so new file mode 100755 index 0000000000000000000000000000000000000000..907b819b0add8c9dd8edef1e6ff4098ab3f92699 GIT binary patch literal 5032 zcma)AO>A6O6~1rYxEZHEp1S#?2{4gTDX8(AX(>utsw%eQps03@Y_q6XJl@Pa+tbV+ zGjG6NRjPzo1gUI*MO!>VSyYf#v*-e$f+97IswxYYR>BfUcsw2{5iAT;qM(T3`|i*9 zW^hW5eBL?d-gD1A_uQXz#xGAzpLZNb7;wc&L1|-1h^Ii$B=L!fp{GPj#L;(19Atm> z)BA)ln1Bi~u5s5I8VLIo!X&_v_Ej4+_c{ZZKe zwd_$J>YJFbB?Y`fYT5r6WZT{)$Ockiur+u1^StQCQpnf`i{;xWn^Qlx&NT!@6f2qJtx zAJ)R9LOlv={$edCh3H+ZpncEQQcx&Q&MnMGK`m-jMJX)R!$<^CxI&A5v5?J4>wZwH z1*?MUXs$;=?xI)@YWeR6HBL~7{N+mJqNrCEqk$&h&(`Z4QHy*ZV=0B@yyT^Mx~doCe|~GH^2W_C z_0sM5=2$nrxz>GX^VQA7&hNT6VmLt8U)@T6_@k{Ge}A`Y_-hvbuEoD&@mDPVvcei)XrB<}{Ue*rw!718pWCBNh*pPo#MxHc`DUwq3U)4I z{Lg@K(P|GRTkSW%{{pC9V6Oas;colB{h!{;@Ik_xI8S*XP_rz`BIs>S}=ZLCM?=fR2r;D*)~%!PObj#LgAW;%eVWU0F$h(f5)$ znqYFWD|b;g$&ZWOv;!6wf9rh(Jtimfv`{ww3;2I(cR0?Q(%;eRH~KgG2Vqz&4Cqrd z>veGYd^Tu*c@jAv&%1(z$Xap?Cyx4j*A*lLbGBKZgY~iB#EZA&hnDO>rhVQi1qt!C zB^&#E|4sjI!0^o?82e^_cpI;?L+_6RSF$&mpW&(rw>$Y%Yl34a3FoIlotuMOzGWyvXwe;=|v-*dRq zw!M!A^tU0~{_I%&^yi-g@@-4zd?T=L&vzKIxgV?vzX;g??VYgX6y#Hocjr%vuR^x% zec96I_{XHYTN9q4+>dWkOj-K0FVc;AjfGQsDVIwJwbEF*QVz%Xc&1N#PkNbjt`-%% ziZ~J6lWG~N7*UTJi;G@PoXE2TtN2UBN;W9^`KVH>`$1zxU^L2dZni0vMKhR@r;^ntiue{`|_?6z;M<-=i+?*TeERLchFMb-bycSu5XJ zSnv6pL3s7mQWRuCqne`2hFcEm%fidAmZ73(R1;n;EV4~8)nX((21$7Mm4UBx$wMyp z@S`KYBD`=}ZM#y_KMkas;bAN&6>`E`s=$D({yl_BNGm}U)e6~06xMkU?h#lw@%iF4 zVx2(b?@)8CnA(WPfqYHb&iaYi06`T)5j+A#P0zaC+e{-h~Gtzeqk!9$Nb3u@2qPXMB3thTmsTR+GC#FfZj>)2F$!a zMuX9l?==Pw`o}Rp1=6nc5AS*$0&8~zX3T47fDVs{1nSwfnAsW=JENDOaqQgz5S|;_ hO9FYOIH!ROeo%ayLDyjHvF^9^E+Lq|GD@IE@4pQQCQtwX literal 0 HcmV?d00001