From 032f33fe5a6a759745617a79c2c9be7c54c0e45f Mon Sep 17 00:00:00 2001 From: fatedier Date: Fri, 17 Dec 2021 15:05:39 +0800 Subject: [PATCH] update readme add sponsor pic (#2704) --- README.md | 11 +++++++++++ README_zh.md | 11 +++++++++++ doc/pic/sponsor_doppler.png | Bin 0 -> 15078 bytes 3 files changed, 22 insertions(+) create mode 100644 doc/pic/sponsor_doppler.png diff --git a/README.md b/README.md index d71f3d3..d1da378 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,17 @@ frp is a fast reverse proxy to help you expose a local server behind a NAT or fi frp also has a P2P connect mode. +

Sponsors

+ + +

+ + + +

+ + + ## Table of Contents diff --git a/README_zh.md b/README_zh.md index 6eb5926..1765593 100644 --- a/README_zh.md +++ b/README_zh.md @@ -7,6 +7,17 @@ frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。 +

Sponsors

+ + +

+ + + +

+ + + ## 为什么使用 frp ? 通过在具有公网 IP 的节点上部署 frp 服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能特性,这包括: diff --git a/doc/pic/sponsor_doppler.png b/doc/pic/sponsor_doppler.png new file mode 100644 index 0000000000000000000000000000000000000000..ea817558d13ed392fe0a578a4583dc2b7dc9ac5f GIT binary patch literal 15078 zcmbWeWl&sA6fHV}>);Y(AOs5zfdGLF?(XjHk`N$-86YsY1`F;QG(d0-gM^>~f(LgA zu9tlGy;t>a)xAG%*ZerWd(P>-*IK=M_nDe-byYch9BLc@0D!L`FRcjxpuqqDpfwiw z(L%x0e*M^)R#(=Rd3bmrb(kX}B09aiS5{VLd$V|V|3KwBcXRu&x_68Eecmy7hD0J~ z*00PyZS0@id~QAD^IPia>5&QjvvYKRe0HZDyT;(Tpc=V4w|TR;b;A{T>sz?{6n^(C z=q{)8nBIN9@#h((_rv7MrEAtUwaKn{d45)htfUoydAdCTXBzT1>~Q^#)I{P zJHf=8;L1IonA_sslV7XXf&t65!>6#|Kd;~`q92xpJ#WCd&deDqsWAJ(q6B8SpzsT=C?wvX7?d>i7ej?#(tMcG zbl{P@?U=DOK0Yp%ezmf);_K_%H+$YWb?#rh>*(lcWMq__oLpaDUszZeRKD+&u@zXh zm)G=wDBmsmcF)btjjY;FY<=*rzISqR;^N{e8GLA&esIcpC@Lxv34O@uy|)g%i7&m? z`SkE6{az7yuT^m4P{EYWl+ThH}97Wl3mYK!iu(ae~VZC{M#8E+pa%x zx%}1VoAI~+^QR>{?VxRUv&0sq|FaYOr!~`u7iMjK8SfG(@v@#}i3eQU@AgGfxHV?E zMZ13Bs#*-VRR#b8Uo{=LfD_22F__~2`{@< z&0k&e12LepN1~Ah*Yimn!iD|Cqg`*|z(vw@U_jgEg>1HR-wQ0j{9>>7r_#qhvkFr1 zQ*%xzT2Jn-DPC9xAjjdb#ptS>m%EnOQ>HLv&g1Y)M#pyr^b(p6H799nO~6^aFp9wr zYRm?b=tPoFa?%I&<`t4Rvoj8D+8^M%1X3XT=ss16Yd&bO1aaJa>EsJC!MFN?fp5A> zq1=|#yaZkZ?i(D5uLWh8_%ce69Gg_CPgfG~>;B5)&}Q456eF?fdlz;`vO}2GzSKqq zl)6m~OipVj^>|8qv{BGdjIw;` zRO*{PxO}^uuVs9ow>l#kgbE-%S-nKv`=;^ z$pG02fkf(T6CISJd&E46t5$}k9zA~VPz2kBQFJL2c}h}SK@7QLw6e_t5;1Ilcb0P|M2hp}TRxq4(}7tsTgZvl|DNSL z%-qj!(E$_VtQsn!oF67myzb2XVMv7-myq4U6KX=#y)!qgoO4YYnH4v!1Ijzp-Yn`6 z=C1w`MS+iGrG+$p1$toRERYALcwzpopbr|b>Q8uvZdWsx z`=vJP@X;A>IquVP+?%emrEaun%-$Xvtc-*@rB%^6xhe1;s_$OrmtI3%=kQ+TbkZj) ze|1&zVu&Cw*>L}U9z4({z~UX?Zu`|);M)b4{*>$?BW5(4{|AU&O^BvC)F^RY$EzSQ zQij=UmteEl<>`JEZS4^cKf0yfJ5DfTz`1>+1H|24z88C6eK!}2ciqY(* z+|u9|+z520R`(+gyo?N)4!3uL8%}5NsI=Zn6NZ~>Bpqa;&YoZvM64Xpz*6xHx|#F@ zB19$(Qd{k2Gqihcnj&DW#Rl~Q?_eR_6t&|H;5IlXFydz{_noS|OM(*AFBah9Ly>p;xDTSL_lia)9jcGO1;DqCK(QoTNy$Hjn_EEFxAWLt@zAFEUJQ(}KZBm--*d010Dw>=MS*2v>_QA=+UEaS1^Twr2% z(y>gWR;W(oegwSw68_3=)^p} z;qxJu4bhWUa-eo8fx(niA00)L!m=C74waR3{Y_WKv7>5}Vo101Q%gnlH8hS#gy0iR z^sQkSA-%>J#EaQ_>fDsF>L5{jg#Am-htqCpLJ)|qtv3#QytBE#cKe>^5^rn!8r?5; zWMss2V=XMMES0@20mQKnWR`IN@MW37j$*V)dfv z$NKL&dBKBd;<*mSZ)MUu+eZ91L=Y@{Q7U0Tm7Fjcq~JTW1P@CSdu-9Neg8Vi_f_VP zmz#Qsxr4nV2T<0qEnCO<>Qk98V2x76CYeDJRqz?YMhMWW zYefJ=4D*7a{m4%^h>oX&oJ!(L4o^|Kkb3@gPy^PS_OwBHGvr}SQZQ()mWIOS_eY0~ zV@jFU#Ku`9qtfE&s~h3Hpyd_x@D*(kaWfj)7X$Qtxo5Q1Xwvi{t&_jJ%B|weVlT)b zX_ELg_8FzGKEdVtTRa@FB%1|klCi&`z?ys5RBOYu3?KK=7pAL=;nJWTn}k_(h74tx zWg{Fer}V8riv2%?fCC1NA<7SiU8W$$Z*W;gTXH_&%S?Dd3@~kig}1;;N??QxNEJOv zDUC0wEfp0W*SH+P|9ST%x{w!F8XF32hNT)3^?dC z9OC`pIP8sm&>h8n>c3LZUnjiB7!A^0f5tGW(5i{%dOP#{w3y$N4VQtslfGmBZc`+ECKMtnTK{8aPi1TpreuPvYAmeU5(bF=p zIC98PBX9O&->WCu&IVS7ExhFV$Y;eOfT7?pwD3hLP~sx+$=@3g7K8N-J_grhBd@L0 zU{FPeI7kxfs%NpSTpA)}0T8$FAVcF`UM?i+YD`t+;FwfALU-pcJmBC6{vVO%*EZQI8AQS9{y>1zTv?Zbx5^Vvnzgb^Qi~( ze^)M7hbOB{aOCL={HVWoFrcH!YL)&fJ9wB+*N|IV@I~o|Xjf}yaT492Uvk7Ajs$&H|P^5g~J8{WoxWSf_h z15-HYNI1k>Bz_+G?IoHvX%~! ziW7H6O7`|rGw`?zSGwaZtnFA(Y%W=wHJk=m?r zOL3&ciTThtisN%M$yRA-zRaU777K@ti1z}F7@kCPh;#mhrU03VR?IahIdzUJ=sUK; zrP;GO-V_YDb2ex@EbJCKN-$PlS2W{uiR6w-PgL}&g67Yc3_eM?zsDgWxh?U zqAoA|$VgB9+L+uvMbx!}jwNot;RfxdPwcJlGs~a%9lzYuaaGLLz6d}2JK?y!ZBeQQ zJ=QHdU4Q94!F+}B6f0S_oE8lP#mV=h;mMAIx4|BXd_j16iSq$o+KD3$c3MQ#@mstXdM&n-QnHBx27d^-enAnik7lauBCA1zvXE6?N+w7Ux~1K=)`2{C zN2^?rT4lbuM57)?EKGpkmZe0ds54Bt0SHy4u-7bQQh=KN>N+oE5%>drTN1tOulCUViRH}#$ER0 z2#d!*QjMXXqm5-z(lsL3%P31!T39^Kfmv3%kvwU!Wzmit!oCR-pX9t4RUu~H0=9i~ z{o2t)AMjXO;F?pTKjVz6eAzlQmVwC_PdGC5G#-hcPNp+vE}U5sZ(Bx`n=Cy0g&buO z;1HnT^O_-h)upNOSR* z$E$GOa-&muG6xnxKTf|ZlK{dkc+?a6XA{!N`KRUBPneV0lw==CNFZZp6b?(HXNQQ` z{R(&+TQ(es8OF_&Vvg|6jn!cnYy9+uIu;!lO?8YMxI9R!Z!~Gz0n2lO9_>nJ(VrJ; z|JfPc`Don7@s?zw0- zNn`1{RZwUNLH|b0{fY)rKwAc*^#2f_<{MwJaK6RVoQznnWeN{!`SLYYHx zLI^6#n-#{3wI}{ECE}9H6JB4kE18@AAw}g<#}d)qeTMM|Ih-M@1zF=_p-21Dra!-K z5nJtyR^Epyn8ZGNalMHxJfZ*{a{fW41(jB)4Ci?IhgQDAXCX{k&a|YfnGemfN^Sb} z*LHt&O-u#jX4T>@Nr`a36e)zMMG05TdKhl65GhXN6o^7TfzQ*N*%1cCgkH%`ACSm1 zjWv~XCd)&gc=JtAoVioIu@;u>{d_?n|Ba9wS(ezb{Zw>Fi~7!i4xb!_cRJSdA>Hv+ z5ZKH*nR=#}nht^mk!86yI>oV;#a&Zv$z?LKC@C9kU2b}z4856LZu)?cEuV{vyEX$s zHPY}oRN5Y#WQ*XhzJ#mLvXn)yJT6X&lHG#~%(3Ce)%mdj->l+*2q~5(qmm4gVIldT zK}aR`E4oWq8=6hz@hMb6PORtwJ!i97>nAyi>AY@-J1)da!;zZ=3aKOECYQ&#@%3wm zG1d!-Y=01(j>jg&3Lhbrr-3&%c~dXuQs{)Hl(5ZIk)WvWKBW|F+&%&kvCMQd@#7gT zQ%4kC?W^ZD|MW$tHuLk;9T7G3v_bTDidYo}&A8M9-B0HUDKyW}AUv-PZpct+;Txp} z>i=ijzHdu-UPtc{o#Cfa60?@!=dU&fGlyV^trNF{VYf_wbiR!=wR&x8?Vr!7eiS}a z+xbBjZ{H>h^^1*s(3}02)b*jQL#nv>V&qt}xdJzGoHC#^TPgN`&d~fKJx`?Of|Q8# z`5Y#b{%{LtC0nHK$6PP(%@;JS~1?x*CVsujJP~3t8yr^2y{FgpUy_(=P8t6#mTTU%#JAI&Fo6*Ws z2z&L^>%PDp2@tR7u_YqPH^N%W`#TOf)&VHr46yyph*kK`Wv&av@a_Fu?h%l1#F6bO zu-M`weGSK0iwgA8c=ruxVC-#!RP@f$qZUelh$QP(T>^9$&Nwuja>Pv3af2 z9E{VUO!z35!U~5E(LE>sHV|?wwH$JX03BSW(n9fQCdkW4=5%R^@yErU|D73U<7Q2r zmKkDtU3PK`%vU?}Bt?HFUO)3qLJImF5c}r5fnSc*9uwO-vRJnWcKZ*f(Mz*Tw#-K~t9g8vKk;fQ5Diw z->AwJEA9D^`os3Zj5+R>6h~LYr&yk!a)~B2+!7(5yt%pUN?#9?kJrkSZjAZ@Bi?fN zN@E*v`wzvj973EFDdO+y2<7|&f&`~iPnSI@N)Yx;-_4UCG-9~{@3?=Gl7zk`7h?jU z)owpjP3L6=JE739dy(#fn%ME?43lbhFuG}XgL^Mw_b{U z8r`ThV})$x7X8NPprH(Z%=c1CmNc(G4ni6pdpN!4srGpPEhh4x=B-|oemAL0bqAZG z=WVew;@No~tuq)hEYFp`J8NRQ@0Bm8p-Il-pv7__4!*ku3YsCx z7bN5TzGRNb>_Jm)`QJ$xIPy5p%I#qFYTGgSOLL^J4%`B@Y*|~C-^&f06s%{1`8Cky zY}I~zJ6Y!0{4!!ZtoS6W!sW=MwMsLpiW$CK(ot$gM|{GsFjgmQRk@(HRAsQ78}ORE zak>BfE6O>_ut4BJ?`}9tvp>-#(dT_!$`~=PqYVEDXZp1+>y@{b6Bnmx2l@|pG6cae&*nR^3n%a0)JE1M&yfprxuUn{00N#iCEB2QFsFvjRfw zXDJvU7dD4F?tSsEHWm*%`@?R-??&wBT^jZhu6^~XSJTp#Y{WMk_A`XNHg4x8v%L2* z=owwcGKAG~8^5NM%h6mPmMp`OwJ-DOyI-DT=;u9z>Y?JZQG@twmd_KYdG($@UnH4+ z^>l02>^)}1D2ea&_y^Vf^pc5=@5FI=fxW`c*XZtpaWh23lhiM+iCSfQ{JX#St5^eb z=!0XYBC&upKN1-ggg)dXV!njZzsOOEFyT3uK(^QATnr}us=&P5G~)o%2daJytf0GY zQDX^ydFLbmhwuh^eV$wy|7%x_lk?Rce5t$?&Zzjho3Hv-05Mv4w|cf=QG6>YI*l#a@ckSqvX~(xun-0Fp9~+XRTGK;Tu<@!!MIW-@9?NJ-^{MHtpPbfV|w-^E9~9x6_<|wGYbx zpmCajT*juGq?70>eO#*%ezMzTk3*=rK3g&?Ki$5#LVF9ZBH7= zfC^CJiot9MDg725Y0}2}Ip!q8ntRn0ZAYaBjQmbZg6ehY&Zr`X_cie|$9?F-;ISY5 zYfZ))V+L0`M`p05KD|~Ye#UcC5FRw31&*30%@ffmi>5pDStGmE!Au~Ywg3}fkYf^p z45SrQ3q#*e23u{0DrbezSYc-ksG@;YU&)$ z|6xF{q&Vg|P22{0T;9vk3)}*h3Ok$-pRdkN6+RPBI!75DPjt%^;yJn(3rvl@t76SZ z9VpIOoYo1UBYsXD$V>uws~a;XWVtzc1g!8Me*4Xglivm7-XJ-iTsF-|gR2Kp%Gu72 z){I{imLB7%@c{I|+JiZ&-M^%Rxjr0dB}Z9-|)CWG{RA z`-+Dw(e3alH4|5Z(n7}TP4|G7pG)mor+5X?Wt1GcFxB%Tp2{!54U^Rlyad@Tk1yw` zkhE0bm|M`wE{_y6-^4{?O*y@il|B_olL63M1F(3y*wATMU}PGarD)(0ePXb-lwNx= zcKWjbT~m+y4Vyl#>}FwwYEcT`nisT+%h36$Ug8cBGUkb`BBd-nh*oVRNXzub=;2Xp zG02Ofz8PtorWd)r74o4hfsG$Q&a(#JV0dEY8Z=~MptN=sk?IM{HTLBww1hs!fK4yo zlq|MvHwHEXt26`3!d+=whHwytFq>E>a>6{DNgTlu#}=mr$N$QOd5|L=l&Ju6AW4}` zM*kCC`+_TugsB%fTe6kSanFO^ZBn_xn^L~I#m#Z*AdM@m1)aAH@@D{p8WgId(XcH$ zSv7DsZlAB}05w z0Z}iKq{lQE(V)XZ4m4h`kZ8M?E_VQP9sSQ48+O@+Po0`j3fR-LL` ze*jQYHq7dfXsuMl8qT4>E`ua01abKNhnu^B0RC? z*f|^a$FfkG8}Z~BMCRNv2*%fGM<)8tnIh7&Y??0{cfQ{~@XEQNfa>(vk1hR24%-vI z#Hh6QAgY9juN&o$8(}*}LVbur**mcvygAfVf!}5RYG@jH=vWy0)wD5{qowG}dGu7B z?P&i5>oaLSc*yMs9ouKIAy@(@PyTr0?V(xfgXKM~A3@jUtZJmosX|PSWDI7U z-TDr&qd#KCX3G0KYW&3%-g|>%n+J=@33ouuyjvEB#1(;?mVnhl%yGj8_YuknER5dS zKyy^FV&q?mwbuIe{>={`QzfQdcvLcFt(ZCEHnubze&EUChKSt;G1=LZ%;t~G1iP#` zYKjGoIUrIkC<7h|d^wMiTH>7e74zG6xaO!c>S|mFHHz-)KsXD-^8?-#!GeY+97dMs zU}Or5}sU#DGSO*|fU5qg-3gch>}? z?qq2Eqy~Mq*8FGMrPZJZZj04x?7EDz_9Twg&Dljz1yOynW3f?}kDegISD{b78UP(| zfB%zn1rhQABaa6?K_C6C&Up_GQ9EXa7H*27kI}9RfS#U0o`UuET>QQ9xE}Poaw58= zc7GEnJaz$tAnw_~^BLJM%u_w|3#%aB>rqm9_m@uL-x7za;;7koTR^2DWW2;U9KSRe zagSV&87Okf&17)Ksc;XZAdEcqoDO)Kh-j}n zZGqwa=qEVHV;f1Yy^Z&qTpOPqYGK}Qlo3aDl-TZ!Qq2kB^%hUQrE3!gddK4SZb@lD z{az;GB{0<-+c@VXZ;`2>cgP(}*7w?(vr$UDtB1e&7vp|Z){G3C>=~p_MQ3uA>W`T5 z5IF)pEv@&mr!y;>y@NWuJY;_ixjTe=mQ&5;U$}LMX>JtV!qu;&@3}i9@_sdD(cvcq z>+847<|FK0Py!aoem*$lJ%}w`#hy#ALvaS(5iMzQ+{+R2403u&%)UL~pEkdk3gb$G zTCLCHXej*9-+)sV!&#$SHPblbu=@B;^0WMEmiIOUk!CuFdCxuu`p#MvTGLUWIBz)j z^S1rP%x`Sdnc~dfP-doNq;Cd0r}7*r1~~rzBe$&;pn5hS!XvKnajARMgUe1qMqu6T zm%7aN5+6lQ=$a!!d4XBQ)sq^KMU0wSFMQ>d71@*h^cl2eE$$QM@-e~8(WT@kP0C#IW7WiiX3610g(9ugrb9*i2=y^FYvL3V#L5IM`OOE8*+gUlQmjBV z#GR4tb!lS%ifp=7$y$$gF_H)bpN zIcD!SIAR3;lU(;2E&ctSNx-VKXQ!z-^CP!AJR;mgM2=@#4W>H!tdv{03+>D$we` zddo<*?4t?FMcc#DDB+COij-X%{mVE7g5%|+i{Z6*oY$KFdEYVz{5#;I7$k~j7x^2& zvq+fT#Z*0VqnEHL!XZU$lEDBG(JMc~wWerV4+x)^hx!o}!G_nl;A{d&(^nM&kC^o3 z92ie`F;(y))Jp&xoIbQ#v~yl|r2#9P+0)#{9>@%Maqa~Y=euYjC<4Ei%e9PGcKDM(RzJWB21-Rc!l zBi>GfLfj~1mtu+aC7Puxi4F_%PBly$JSX_Nx-bvxAZ_K2K%rJCArZ7xq;E4uH7i1N zxKk}((6*BJGf(-iFm|(@A$0gV1h)B3BO)W?Zo&F%hGU7y>4@3a{3knyS+vk=D1zP1 zJ)&pBql&`FOlW{RPG#9}`&k7#Bl(Kk3{X)kS;>MZ>*iYZeima?+;qKk3M$RGRxzxg z`TioZ9?@Qgq`^9DI9DL{`6$jvR>?u=_qM;UY^w?seT<m%i2~~3x4Fi zjOFtHPUS`6sIQ(<%7{vlkD2l)s>rs6pA5s@6)|ZPcEU11Py599=lOKD-gRRE_I&;? z%i|eIiZ$}tQh5uWnuOs+xpcoHdTP$i=a{HNGs+zfK_$BHNrqqYnkpfi&6S=8f*Q7X zM{ryWVqKQMb;t!qv4;{+>BAyEfa=QgXE{iBP6|IqzDef~W**s2SsMW5`a{#Xb)A<( z%pkU0k;fd%ey5b1F#rA2pCeuY(f2-Ek3=pe4lod(@~4{6M)RY2Zpvu@J_~Gm(B#N< zFsV_XOvs0+u}y;%LTn3OVKVEY~ctu!mag z(_h7}R0|6%%%^ts6J?W}>3tSgg7J5n1!gJozK07*c6u+ag|~Kwiyl^T7Q~USe?APY zEcLOAPY3GSkNkTvGMvV5_dhSLBHQY299EHemo$~FErNXCYoqZcyRk?I5$Zxm8MH z)yR_$Cw``w#5&garP;F2>dF8sTs&A2am`0Dc=|{x-*p?C*md zd|1}(AecThv8v;qCn|1v?xWM$Gw(&Quc5C=p`Fcn`WMYB+2loaNaaDLO>{CApH(u`+QTD^ETbad2< z^MXv^w=kysh&Ha`i2A$rm#`p}`zVA z?OrjuB2E#zWV`9b!Brbw#Eo*;an*F5a7we|iLkHSVuTAOrpfBdwTh`G!qKi(X^7^+)o_BwNHb;=l2h><-AhU_bH#%0!(ci$ZnNi=HW<_ zeS2XNbX^C6pE$mX3jI)ty_={)k*g}IhW#dB)e0jppmNN~VvOLUQ4E;L6w$i4<-Sa% zNI#MSL~TfCZpk``g}b(n`)Dxzl>TI|GkcGf>Gr(2xD@-gP6)8r-$gI>^rsvR#@HmY zU#rOy?wkS34r}G~_3QCARca^Bi2+OWCdR5$-Mox;MlmYjXDXXDkrry5^_eeuJ3##8 zH*>7{6gn2{zjgfHH~PQ24}D=QdQ${ielvy(83PRm(sBDBx@BTsO>X|$1I&D|wfm^d zohh5Dy$V%wvt#;zZ%8J}&($rCi`sI|TO}DRuIW|U>KFppMhjXkL?4tD#Rf=jg{eW) zHN|-Yaq%02a}A0*A$6axHq zb;#Cny?zoiQZ?pqU@7`6PzUj=H;^*4ef@71MME8153jw0wW^Y0J`pZiJf zi(xZb_V``rhFDYkoIiNvEiNNoN+Y&fo+}?US>ywp-%;6(vSXUUk?fs?Vy1g&dlo>Y zw_<5zf&u81u>g;)eLCU?EPIYM8m9KhYQ4{%SSrhyvFcnv%M^Do+R*H>2^ALBu4{lu zv(is+)u-Um6bbPkq|<*pE9BH;5ufuEvw{6!hb@0G!FO-ZnIwh1Av^aY!O(66NJw&5 z;4I+x?5RtLr^bH~^VyA2{1>q3<~KW92dO0f?RRLTnd3Cjar)f9nGpvL2cVaOF6%&L z+s`gJ{MS4jAg7d-@63=E)0q)ZW)oLLMg(r>kZ~J+M!KqF$4JA>^C!?woi+hN(xmv^ zy&}kq-OlGe)$bc+(50rf@-G{e;rcy8u$_M00EN9}z?IhP48f<`(~(bFV9%HcaRG1Z z+E%}ONF@_&tK$(R&wjr=Iw!{Tfo?tdJ>Az#Dhi7S{_5f`V~stc!Dp~NVpn(um2o$( z#X@vel?rMzMP^WH3)3=PF&Jy7|HMJx-|1@)Lf{nJODP+S%O$z6@GXFe9HZluosbh| z6xz+%4?F=SKizg;##XHA=UDvZLiuKthv`M504DOZf9t)`*y|rA<`M)}EqX^7Q)6Md zoGL<2Uo$p8?pFkp^%PFYWT#a<-&S2qs??)_?$*+>#`~Q86nQ?0?Y>QryxXuZRMlZp z`lqsJFNq13F%8SxUF=%-=m9cXU4Q=*!UdN)sirV4Ix2hQ{cfP??lQfou|@v91bC=o zHq8TaF3f93GK8i+{U7Vr-SC&DzWP39hwx6RExT*`hP2@*IrX2v)n@4ArIz-Wp7*Ea z#i}=oHvV1Xxf}`*`Qt=|Q%r-2{H0QY1pidO_QjQ%OqhMXQ!09*=mp;!Z{g7%6Z>KE zZCi?eqp@?VhX=i$FbQ?m{r2sbi#brksg%-#QH9wXmYPj6OnLJNax&rPxNUq%uY9Us zHAa&ol5yari_%}u9@81~kD?YZ*jnSTHYZW>GHcBOI5o=m+C~?38bwWS;MWq_yM&o_ z?t9K12Hh+6x0^&e$Ikfz?&Y!o_tG&R{pxQvDxAAeb3K6*R-2$dnl{4b0It8EDB>68 zE_L3Q|6!QiA6f9N#k+SX{2E$Ih0{obi5kZZh$P0$$~ip&F!`iv(467W05MG+2;$Ij zART#L>F3Nb?oOuUGy#+m)bQ7VKOVJeX<}~@)+bO_>$5B^;?ed8upMF0t(jBqQf8YZ zs{cojtvg6Wt~iEOn`}=Lj)k1N=S4?pRB6vRnUy2>PpaXHfq8#zb>C0)Z|8S$w%u7U zi9g+Igo{ndreLiTL*HTx!9crpk#7!ntAY8QGFx+eVB}So|Eabxow8JlCL=}e!F~pq z=~-ZBPV&>GpjjeOg+fTL+Rl&AU9&f0q0c&$hzJ_eKv?jBC)kP zlQTb0Tc%iJ(A3jSlxlg(e3ZsGk)900?#jVc2P_&dII^w>Y)xQa#%R9i zBhn}6tG`7d4jhh%*;DVBItcv54A}{cl!OMCb_4skOqyKsD2{-SxfK0im0h7Rwo58I3sN=wbp@c=Z{jax@rug`fc98>G zBQOOi^ta16k)RHhj84zr0O^%tOnI<|eU|aC7S5yRZdL?rb$M3T@6eHjjT6IY0jNv< znY3fb`3_yN%5pl^x(Li38wWza>sn86Yfm={rpR?O17jb67)tzc8sRp1xuV?GYX@8b zAtIP4bBsXD2|iNo7_f938g)%S!jARM?_r^m%4Vu>l4y|OQ#*K3VGo}WQp}jijEUOn zf#NuJCa->+GoWbP-TG}sI;)B*UjcUOE#-UR3$VeA8*c`I)IsqQR%D4giQqMg<;B(w zOZLpTF!ZGTl!5<=I6>P&OSGmWdi0aW&6;6vinlrv=U?Xf=XQ5K+x3EP;My0@7|MfG6ag6?jg%F&I=Q)#f-IHHR}b+vE1- zC3GzuZJBnqic;SxSS;+mOU>+d5eL&qenZ3J>;g*a`;3XZzpWgv0;17LnsI`M_&th1 zd;Vx=oXY_flds$lMn`431KXQ%$p<^LBGrolvl3UuqgF>9!|1p=(kfIqRT*VadQCXZ z8p12=FjK9Z-u(ZDsL?cWh=T|l)msse z9uk)j8{Tb)e=n4i5*jRoig*(3wElgaL*#TW*u*8}U181I>IsBbP(b+{>_uqag^mm5 z=o|+=faZb~JAzTZ_#tCg4S9j-G|+s)9u9a3?y}G{ZdDylwI#bYL$gi;$%&&q{AkM3 zDjd}7F^8Te6?erPs7lilhK|B)+j$)pp~-n(4W~tZcv06~q?GT~>2x+@v;A0}F1297 z3ys^=w5>zh%7zjnan(}*E6?D1F+b&^-cXq?kcM<-Ee}`O>s@A zn{~XXLE}FEqR1f!_S5rU+9hkk-tbx7Pqmy3wRH|c7w?tK`&T;oliJ(y0BVYZVoq_gK3d-ws~mNqHFhA4jyhi-^|BkL*R(dUU?!LzTHVH^IGRP3i^pdoA+E_|dMpJEVUN4XUUst-+a9SE(&%2Xp;7kJ&z6SCbWHXRu@ z$)tyR{_ChbTN7D3$3gyN#1pf=C}VX(C37i#c|8%Ylh2L zka~Sx23kSSHa;YuCRK1sPT8FOud#{{z