From 51011957e6a82eef87c67f15e3387c6cf22f68e7 Mon Sep 17 00:00:00 2001 From: Max-zs Date: Sat, 21 Sep 2024 12:06:08 +0800 Subject: [PATCH 01/41] Write the build.zh~cn.md document --- build.zh~cn.md | 96 +++++++++++++++++++++++++++++++ docs/images/Edit_Environment.png | Bin 0 -> 19233 bytes docs/images/Edit_build.png | Bin 0 -> 38185 bytes docs/images/Edit_env_msys2.png | Bin 0 -> 18413 bytes docs/images/install_go.png | Bin 0 -> 165519 bytes 5 files changed, 96 insertions(+) create mode 100644 build.zh~cn.md create mode 100644 docs/images/Edit_Environment.png create mode 100644 docs/images/Edit_build.png create mode 100644 docs/images/Edit_env_msys2.png create mode 100644 docs/images/install_go.png diff --git a/build.zh~cn.md b/build.zh~cn.md new file mode 100644 index 00000000..8e0d5f07 --- /dev/null +++ b/build.zh~cn.md @@ -0,0 +1,96 @@ + *注:该文件为OpenNHP项目在Windows环境下的编译说明 ,仅供参考。* + + # Step 1. 安装go语言环境 + + - Go语言环境:Go 1.18 或以上 。官网安装包下载地址: https://go.dev/dl/ + + + - 根据你的操作系统版本选择对应的安装包 ,Windows 系统通常选择 .msi 文件。 + + ![安装页面](/images/install_go.png) + + - 下载完成后 ,双击下载的文件 ,会出现安装向导 ,接受协议 ,点击“Next”进行下一步。 + + - 选择安装路径 ,然后点击“Next”。 + + - 最后点击“Install”开始安装 ,安装完成后点击“Finish”。 + + - 编辑环境变量:根据 ***自己的安装路径*** ,找到 `C:\Program Files\Go\bin` 目录 ,将该目录添加到环境变量 `PATH` 中。 + 例如: + + ![编辑go环境变量](/images/Edit_Enviroment.png) + + - 完成后 ,在cmd命令行中输入命令 ,查看是否安装成功。
+ + `go version` + + + # Step 2. 安装windows下gcc编译器 + +*注:MSYS2 是一个基于 Cygwin 的独立软件 ,它提供了一个包含大量开发工具的终端环境 ,常用于 Windows 系统上进行类 Unix 的开发和构建工作 。它特别适合需要跨平台编译和开发的程序员 ,可以方便地在 Windows 上使用 GCC 编译器和其他 Unix 工具* + + - 安装mingw64。mingw64可以通过msys2的包管理工具进行下载。安装msys2系统要求、下载与安装教程见:https://www.msys2.org/ + + ![安装mingw64](/images/install_msys2.png) + + - 安装后启动 MSYS2 的 MSYS2 Shell,执行以下命令更新软件包:
+ + `pacman -Syu` + + - 之后,可以安装需要的工具,比如 GCC:
+ + `pacman -S mingw-w64-x86_64-gcc` + + - 编辑环境变量:根据 ***自己的安装路径*** ,找到 `C:\Program Files\Go\bin` 目录 ,将该目录添加到环境变量 `PATH` 中。 + 例如: + + ![编辑gcc环境变量](/images/Edit_env_msys2.png) + + - 完成后 ,在cmd命令行中输入命令 ,查看是否安装成功。
+ + `gcc --version` + + # Step 3. 安装lib工具 + + *注:如果 Step 1 和 Step 2 已完成,直接在项目目录下执行编译命令 .\build.bat 时,通常会遇到 "系统找不到指定的路径。'lib' 不是内部或外部命令,也不是可运行的程序或批处理文件。" 的错误。Step 3 提供了解决该问题的方法,供参考使用。* + + - 在编译运行的命令中使用了 lib 工具,这是用于生成 .lib 文件的工具,通常用于链接静态库或导出符号表(在 Windows 中生成 .lib 文件以便与 .dll 文件配合使用)。遇到的错误提示 lib 不是内部或外部命令,表示系统找不到 lib 工具。 + + ## 解决('lib' 不是内部或外部命令,也不是可运行的程序或批处理文件)问题 :安装 Visual Studio 和 Visual Studio 工具。 + + - lib 工具是微软的库管理工具,通常随 Visual Studio 的 Microsoft Build Tools 安装。确保你已安装 Visual Studio,并且选择了 C++ 生成工具(C++ Build Tools)组件,其中包括 lib.exe。 + + - 如果还没有安装 Visual Studio,可以从 Visual Studio 官方网站下载安装:https://visualstudio.microsoft.com/zh-hans/ +安装时,选择“桌面开发(C++)”工作负载,它包含 lib.exe 及其他必要的工具。 + + - 安装 Visual Studio 后,确保使用 Visual Studio 开发者命令行(Developer Command Prompt) 来运行包含 lib 命令的 build.bat 文件。这个命令行工具会自动加载构建工具的环境变量,如 lib.exe + + ## 解决(系统找不到指定路径的错误)问题 :更改bulid.bat文件中的路径 + + - 打开 build.bat 文件,找到
+ + `call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x64` + + - 修改为你自己的 visual studiom目录下安装路径。比如:
+ + `call "F:\develop\visualstu\VC\Auxiliary\Build\vcvarsall.bat" x64` + + # Step 4. 编译 + + - 在Visual Studio的developer command prompt for VS命令窗口中,切换到项目目录,执行编译命令
+ + `.\build.bat` + + + + + + + + + + + + + + diff --git a/docs/images/Edit_Environment.png b/docs/images/Edit_Environment.png new file mode 100644 index 0000000000000000000000000000000000000000..e2d895d074feaef1c71bc7baf4d3b9118844e68c GIT binary patch literal 19233 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 g#Uj3C|LKcb2Q@$!ysp*&n0d9%c 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%0AeMnE)nz1DsCUKNo{) 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 literal 0 HcmV?d00001 diff --git a/docs/images/Edit_env_msys2.png b/docs/images/Edit_env_msys2.png new file mode 100644 index 0000000000000000000000000000000000000000..fe6cb52b72de780fa8dfec940451859fae5c444a GIT binary patch literal 18413 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 z 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 literal 0 HcmV?d00001 diff --git a/docs/images/install_go.png b/docs/images/install_go.png new file mode 100644 index 0000000000000000000000000000000000000000..40aed63ee69c04b7f2ef5db6e8c3b7902e2dc5ea GIT binary patch literal 165519 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≥w=pNTE@1crcB1ccfOPW|M-$hLgMD`ZslOsehdw; z+}~};=u!MAC@=uk4b)g^8>z0ylAk|Al&Y(%dQ9w=$#M69EcqoMv6u&O7^CBpLL?IA zbx^V@tOlwH4pDEE$1)_TY8{V)9Zz?;etT+JMQ}=QF6XzEjRDv{NsBVs;k>RHYS zt?~$6Dci7cib+|0W8<3c9G-i@;cS_c0pp^PATsv;L*c3-w6l5t8M0%gxHWJ8mWqYA znihY0$%3dgFDsEKT^ z4!Cdb?>o+lae1q&t4mAeN^k?nfiM9A^8wuS1t#`6wVH-TKkO>3Q0os02?*x^M4>>t zz|P0dht6$6>fzZ~wja4TW+_IF@%g)?uAWueXrtF)Sy`DfSI)*Fkn72-t0R(FlT=Nq z^wimJpY#=!tOGs`*wX6m>Nf#TVGOJZg5~Fv3~|#u8WAlmt)1PxXHS31OQGn0OgZ0l zsLH<+77H6Uqo9Z$3op}TA^>ntHWN!A z04{oH*U5=ZP+SfbWf(~$CY5Y@Zmz0T(o`*6CAEsQ>AW_FymCp*=;)}>v)5xOVB1*i z@3e-R!zzGWan?BX#}u{Yu^2rNg%*x_8179eG0Muq!ofidnb`G)EIu*uvtOn&95o6u zGSl(xwkS_>O+QC7@!25I4L2H?N zPdJ%)O{c`;%;Xyr;x>GkqQ$e?Kf3DT;m#K5)quu;W28D!LzRMfAuK@wQ+2I2PTEZi zzjo@V5BE0w1tCvD>wMn}1-JV3<3bOtX%iAC{saY|o*D@XV8oPgcQ*SA7%-ak!f$`9 zsKfR7?=S28*T@dANw&giF4_ENww1}fVuBxet z$n9z;A{3V~4d`WEr;Eu1pLv8uM09m^eOi5>JSuD{zK2SZ;&85vWl6^KIz)`EPb-h# z9_ki)>0(1MXg3CD^~VB-f24ZV{iU|H_M^^?)nc_4gRZKgCagKFIo?7CE@q#il5!dd zUH~;m@O+FtZu#>E-MaCXBTPE%^#00nXR=?1M{yHSvH0-F^WP~AU8oGFV?dk$5P#3r zA#W5w$svz?a8N|bf)I51q{&Ajh=_>bQSWSOsHnh$_6Q*V*0xe@h(tW5c zvuk>PG%=B+GJZBSI@*>Qf{8KOA_!nF6kz!jDM{Q&KzpWo+6E64$bPB|K5+6dZkK0} z{5R_xzrFprQOO&ine#Y#a*u!7h=ySQ2Y{k*dT7QRPyHPjhr{3#0(YopK2z-p&*4#l z0bzP_vIVIhKmGxfDiCEO!UPrxjoVEIRv#K-8eXc$SS>c9kG7<;xj=Gi3WUJyEyMt9x8bVR&DVYu!kRQ`O_kiv~6Wd-q2m~Z5@Yq!1pMetc&H_3e;Ju5M62twKo=N9Z`#73@ZktGrh^vF{*&>i^l z{cbdZCh8e{N%43)B04pjFt3$D@Z}as#o;~qcNYC}6F-uF`#5%n<}xwb`xi=sgeZ)4 zI`nkw$J>ME_)x7k-0{RK0ZJ4dBcDQB>HcLh{t%OSxOoMt@R!8IM=bW+3wf25SU~vM zv3bysu(#MCb`Oli-_MVKPmG-JeqbE`a%kii=uH5`lALz2OYk2+cTY_GMU~vx*gyb! z15h5xC0aFog#Gam)&LXJv=vf`rlqCLRJtO8c9akR41h$pqxbYmvg~N_5%9(l3yqo+ z)1h)oTH)Y@Uq>Pu-Q7eh2M1wcp>J~Yiei%B^FIL@jFhx=mQH#PPy<2=W+rQ5&@88P zlmSR8Kro44#T4Wg6e!&MtkYKX9@gGtN9j@f^2PVg?T6HHASLLcGRtuWSrEuDRU5V> zVd1JDB%guKaUv884F$j%5#?hn7iY&=Ht`Fw0A-wh$w9S_I1b@ANm+z^fWanm!j zz|#h%$6aqvX=&+)ZHDC4ot5C(3ZOQMP8^w>3;>yfvUeFG5VPOdbbYp%YkUcM?*Q?# zK4?{vYdJ0sZe8X#S4e580I)Q+DtD}!ZuUQ>b!H;-SLN>#x8N-iQ`FSdS37(0kV!Zc zjUqmSxRnpGnu)1utA;`=EtFTNzM%2|neoc{VYo;T8l=K$dT{T}$^&^SkZ^;Nd3A5H zK=rOWNfqF0pg;fw9Q5E;9{XI(Jl} zi^U$6lY`PvNI#jR( zr4*x{(d5SzD^SILc>AMu;seQDJ(?G1dF(G^$q)j9%|Od4mR+AAqA)o*tx%pa(e*m4 zBm)C8WbxwvSJl};+%za~O_Zn__`o0y(9cz%Lmu}?7Vn3=)T*4Bp9hY20K z+TipC0=aQ|MkMvXbxeVZEyLyS0c#nVA;2AXjqaHIic@(n#Ys<36vtqgZtW63pz;8k zF+c_?(KlPcWe+%L|G>{W?d*e=(Le3n6G}=V+2Uss!@|PQ(MOQLd&qaCezrS;ddGHe z!W2Muad5F<4u_te9vLnh4$$J*Z-ot5160ii^q>Ju%=W4MW!=R~p$~wF4BdMFC5u`& zAu8TyLGza9Es*)1ZG5U4r)6kf3|%{N^-kPMn^64p>DAAlKd~8jy;on@+1X=YVdctO zt2vr{3EVSFw5KOyhE^%r0)P(=S({Ml{u~cuKagGni98nQkwV;tQw(Zq;^*V%kNW-d z#Sbvg_>P|58bmL?vl9_KK`T1Y`XeVN2L(7uNVy}dj{p68XeAG-VPRn*6KJ^v!Mt~% zXYw@FPMNL6$oA8#a)z458W9C+{eA|m4L3S$9PCxiJ=cKws{gi{EMUtYa%7Uxfn*Q( z7!WwcTwLO%7)gNTfHaDUon35dv)^u7(a;c^g_Tuf6Aw#XSp~XvaghiH9{B@M`D->M z`i-By0>F%4UEP|l6sC%bO5?@Y3%oaP$e87uoC+bPLr=~9rmO4hdf@B~@$I|CqmV7# z5)V~n>C~dirs|}fy*+)uG8b*K0|(YXMTnzPcIp-J2IUZk?vsJu-{2nyBMT(I*fxsi^yEyJGb!IfFX zRQB)9133hW>FY0>^wYZj$+4M-YT)VVFf!e7>&sF{rrvKR1_(pS^Q5d03}K?8sCb>Q zUrFWXj5UEn-GMvnCPgfd<~3&M(Hg<%@a8cc!)ATW8LyPZ16rFiLfW|*{skhNgYGRD zFk6DlmIdzd?#i#JDS7M?(qw7!5djDeznkCQnq?IMS)C_8|F78CzNUk4d;vln9Gsh* zXj$9!)LW}WHVzI*;}DSOu?zlb0Pcl?j}IAe$RDJn3J3ZNAl)=Gr5G(`j8%N522L(k4R&@kjHM_Yli0vZ8fVaN%F0J{`?xWSAdDxH9`#hwvwAV|a0-9WadV4vhYP6q3~oyG01wzT zy=)<>q!iPV(>~F;JSFIyDoAFih&=i>47|2&#T<}15a+&qB7vS)9CvtxjP4SL_t}dWL3=2=Vp{ZFw=tt>@U8@y$cYPd`x$*VE^Mn*oSP*9(vfg<;UUCA-+p4g7;@mud0M>d^y?#;~15KQC5+?-* z1L}HDq_2@jiUGw(l^+U2)XXB0Z)d(`GNUf%C^q;;9 zcFM)d8vf=<(6e(^>C~ZZ=N;{}n}56bzHQAfWXEv+Wkw_M0a=Vj2H)iB+${3YmeI}r z7ve8gPXy>zQEY3E>(n3XX+IX06oeYPEvNXoFQur~wHj)Ru}^j7NIp+Zj(%${MzvC& z%Ek5>pPuZh^qHT&^li$qsnWcfqbb2$y==j>$tZ_o^=+(5ktoxq6EYKegMVyh&~Gl5 zYl_~{yMWbwcZUuO4XHZX@2?~P_E~f#22qktD098t^#mLVnBesN?#@kA998i)pduiE z`|b**hbq-85MWttU9)ww7nYWmtNZ(Y%g#r_($e%`+ybQE1mN;3phqnZr#Tn`G63Bm z5SPFjQ&9zrl0z7({y4_;n>Qh`@4fZEXd#rvh$)f{GJ&y*r|dvE_-T0?qq5#YJ!F9Fn$$5%S|0 zh)4Q@b}+C&bOL8Y))aS~WzXd^7DY-HJM?V+Q!YqJ1W2GBa7#?AtkGMpPe|t{NAAZ3 zG0Ke3DLVwj5h%b5iHpO5!760@5w-?By5n2)_?v@mZP1{d>vV)dfeF|Tq>kN}0Ri*` zBDlMYzzr@E8)s3Bi>%=UJy!;g(*(dKQAw;*w>ZBsFx_bjee*vIwxM++dW=CA_Sxm`L z8b1>tO7%e#&?K|Wfq-Q^0>mJPxLJ9;9;rJ&#NE{MywlwZ+lD|u=$M$HxvL!`S(3P> z?gl2hKJ-bP`FuE_Yo2ksu&r+5e9S4w)EyI3A&f*&X3ok5^s$Xf5V!3yPOto+R$#Uh z#e!M^orf3u1Ps&FdFlC0#LW6!5#kc-dB!Onko{w0>jVlt8;3@%;fjh)zrZ3}6chF0 zxv}gf3u=(Qh>D5nO&!di&oFpBve(s7S2f|z&Ya?s0uc=<)F)9PMO6dPeQnS?#(C0N zxr@hd_7?Pl+khLAiI9osF+_|=0jQ6|n+x0(t6N)$e;ffURk^_}twnE&Tkm`g!3b&k+a;1Ngisf0Lc_p=B3Q8F+2LNAUioXgrM@lkvWCq!}@WV^(`G&bGUJYa6a!6}lP z!Co#&Th*r{XsmHjUC}um@`lU30;>&G`7d2vK>WfBsVn;~kh9y(=l1201IB6}qsb<( z_JvN$=Z**@6^zZ@U>PFhC^b7Ic*gCHp#j(=DpVh>o_pTZvTXGNzNGbuUgYz;8@<&h zh2Vv9TucwmkV;v|G<%WWP@K(mKNhAXF+nN=2nvLKCUAbEO%P|r2 z&B}NwRE%1r`QbPpBb)9czOUWQLp{+UNm`F#z0CZCfq^c6pjCFQ`bDZj!r&})G#-yV z#5znK(;fPN`s)2vpgy$d%dGdRx#ZGr%ZAH>2n5RC*~B()f3I`D;^jS0b~lC_5^z6m z!VXDuA8swmf>t-lUri#$&KWOuc-}`%j|^a@OEM)d_=6{L+(TMWir3=m(EXvHKB#%^ zH8sxfrf(~qY_sfNs=e9YiFu5*!M%WvN=ga>QwrBjzr1G9YDT8Y$=|1h2(H`~nV3Af zfR=8>d6NbNUo$MIi^Fk(hUn$Ed zzJ2hKr;tboWBFzp4QUy)FT{+DD3OtoM;cUQAI{G0xVX63{<_u!w;0*fP-c3L^PA5V z5trdEJ=qTihao;vo8Nt{p=()1{a#k^$p`xJ-k_&gYv#Tu^*tS(e^C*AbNn@TcQ_FR z(yKm9#DJaA3|^3BBOKtO=Y z{fMx#s%o@IL*=2=A>;t2ktH@3XQtYaRk=tzTp?!|3JUJx7|ohd_U0a55h2N6m`vdJ z8T6d0h5_)8H}1<`2m!(uyNgJ?jZHv%plzm`o1g#vrOt3rbTlR(f742nCp@_R>MAor ze=LKLhsU6J`wJh?POe;XhrK^l5;S~@S$p98^5`gewa$_C>>SCA2=7H}Lo`*I_3_e; zL8g z{t7;?)VBzNMvv94DU1S@BEbDWYS*Fx#U=O(A`I`ROI%b!K7TMZ2@D*-h&Y^EO$tC_ zGTT6y_Yoz4IfF-buV&%$jQrhS6gb&l-c8g zOE9e_pWd8wP|wsmYWPj)B$-!*eQOq|2QVHV-wQu@cf}iCVJ$5pAiwSaO}s0+nm92g%orr^rU)|F`d9Qr##0TTn4%nPl!1=p|-cTk5m{( zst=Nny3cd_x@4Yw6}^r_DKAMzejL8ETq!pj*t-4 z`##U`G}2}hHGMyiOj-FZ7o1WgY5X~1X%r{1@3X4YDM$5kgn#vS1lGj^rW|_>50B20 zp>KLf((Hr@6C~%uuxmR_sy97U8GdB~9+YSwWaMqLzUetSDvL>~z4DIO5AVQWR&_jN zxLR=a(f{;nz>)pbkyB#e=qnmU__Xn0Z$6u%cXRLuxw&mKa?eH>F zsuLCb%`I}a>U!Ux;zvhOlckYQ&o|KtBf~mE{&L~v7pz62a@d(aQ`5ZHb@f*HnEB

2D4xmWYaM4WOMS~NclcU71{<5H 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 Date: Sat, 21 Sep 2024 14:35:21 +0800 Subject: [PATCH 02/41] Change the file name build.zh~cn.md to build.zh-cn.md --- build.zh~cn.md => build.zh-cn.md | 14 -------------- 1 file changed, 14 deletions(-) rename build.zh~cn.md => build.zh-cn.md (99%) diff --git a/build.zh~cn.md b/build.zh-cn.md similarity index 99% rename from build.zh~cn.md rename to build.zh-cn.md index 8e0d5f07..5a8e19cc 100644 --- a/build.zh~cn.md +++ b/build.zh-cn.md @@ -80,17 +80,3 @@ - 在Visual Studio的developer command prompt for VS命令窗口中,切换到项目目录,执行编译命令
`.\build.bat` - - - - - - - - - - - - - - From da87d2b1ead2b5169b9979fbef30699843011848 Mon Sep 17 00:00:00 2001 From: Max-zs Date: Sun, 22 Sep 2024 11:06:22 +0800 Subject: [PATCH 03/41] Supplement the contents of the build.zn-cn.md document and write the build.md document --- docs/build.md | 138 ++++++++++++++++++++++++++++++++++++++ docs/zh-cn/build.zh-cn.md | 43 ++++++++++-- 2 files changed, 174 insertions(+), 7 deletions(-) diff --git a/docs/build.md b/docs/build.md index 3349ff46..142c7b6e 100644 --- a/docs/build.md +++ b/docs/build.md @@ -7,7 +7,145 @@ permalink: /build/ # Build OpenNHP Source Code {: .fs-9 } +## 1. WSL Environment Setup +**Note:** You can run Linux through the WSL subsystem on Windows 10/11. For details, see the official WSL documentation: https://learn.microsoft.com/en-us/windows/wsl/install + +- **【Enable the WSL function】** On Win10, you need to enable WSL first to use it for installing Linux. See the settings interface in the image below. + + ![Windows 10 on WSL Settings](/images/win10wsl.png) + +- **【Install Linux on WSL】** It is recommended to install Ubuntu Linux on WSL by running the following command through PowerShell: + + ```bat + wsl --update + wsl --install -d Ubuntu + ``` + + If you encounter the following problems, refer to: + + ```text + From 'https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json' to extract the distribution list. The server name or address could not be resolved + Error code: Wsl/WININET_E_NAME_NOT_RESOLVED + ``` + +- **【IP address of the WSL environment】** In the Linux environment of WSL, run the following command to get the IP address: + +| Host machine | Command to view the IP address | +| :------------------------: | :-----------------------------------------------------: | +| Linux hosts in WSL | `hostname -I \| awk '{print $1}'` | +| WSL hosts the Windows host | `ip route show \| grep -i default \| awk '{ print $3}'` | + +## 2. System requirement + +- 2.1 'Go Language' environment: **Go 1.18** or above. Installation package download: + - **Windows and macOS**Environment, install Go through the downloaded installer. + - **Linux** environment can be installed directly through the management tool: `sudo apt install golang` + - After the installation is successful, run the command `go version`to see the Go version number. + - **Windows and macOS**environment,Install Go through the downloaded installer. + - **Linux**Environment can be installed directly through the management tool:`sudo apt install golang` Or install it manually with the following command: + + ```bash + 1. sudo apt-get update + 2. wget https://go.dev/dl/go1.21.0.linux-amd64.tar.gz + 3. sudo tar -xvf go1.21.0.linux-amd64.tar.gz + 4. sudo mv go /usr/local + 5. export GOROOT=/usr/local/go + 6. export GOPATH=$HOME/go + 7. export PATH=$GOPATH/bin:$GOROOT/bin:$PATH + 8. source ~/.profile + ``` + + - After the installation is successful, run the command `go version` to see the Go version number. +- 2.2 `GCC`environment: + - **Linux and macOS**:**GCC 8.0**or above。 + - To view the GCC version of the command:`gcc -v` + - To install GCC: `sudo apt install build-essential` + - **Windows**: + 1. Step 1: **Install mingw64**. mingw64 can be downloaded from msys2's package management tool. Installation requirements, downloads, and installation tutorials for msys2 are available at . + + ![install_msys2](/images/install_msys2.png) + + 2. Step 2: **Install GCC**. Enter the command in msys2's console: + + ```bash + pacman -S mingw-w64-ucrt-x86_64-gcc + ``` + + 3. Step 3: **Configure GCC**. Add the GCC tool PATH to the Windows *%PATH%* environment variable. For example, if the installation path of mingw-w64-gcc is`C:\Program Files\MSYS2\ `, run the command + + ```bat + setx PATH "%PATH%;C:\Program Files\MSYS2\ucrt64\bin + ``` + After successful execution, open a new command line window and check the version number of *gcc* + ```bat + gcc --version + ``` + + - **Tip:** Under Windows can be ` WSL ` subsystem to run Linux, details please see WSL official document: < https://learn.microsoft.com/zh-cn/windows/wsl/install > + - It is recommended to run the latest version of Ubuntu v22 on WSL and install it by running the following command from PowerShell on Windows: + ```bat + wsl --install --distribution Ubuntu-22.04 + ``` + +*Note: If 2.1 and 2.2 are complete, when executing the compile command `.\build.bat `directly in the project directory, you will usually encounter` the system cannot find the specified path `or` 'lib' is not an internal or external command, nor is it a runnable program or batch file`The mistake. 2.3 Provides a solution to this problem for reference.* + +- 2.3 `lib`environment: + + + - The lib utility is used in the compile run command, which is a tool for generating.lib files, usually for linking static libraries or exporting symbol tables (the.lib file is generated in Windows to work with the.dll file). The error message lib is not an internal or external command, indicating that the system cannot find the lib utility. + + - **To solve the problem ('lib' is not an internal or external command, nor is it a runnable program or batch file) :** Install Visual Studio and Visual Studio tools. + + - The lib tool is Microsoft's library management tool and is usually installed with Microsoft Build Tools for Visual Studio. Make sure you have Visual Studio installed and have selected the C++ Build Tools components, including lib.exe. + + - If you do not have Visual Studio installed, you can download and install it from the official Visual Studio website: https://visualstudiomicrosoft.com/zh-hans/ when installation, select the desktop development (c + +) "the workload, it contains the lib. Exe and other necessary tools. + + - After installing Visual Studio, make sure to use the Visual Studio Developer Command Prompt to run the `build.bat` file that contains the lib command. This command line tool automatically loads environment variables for the build tool, such as lib.exe + + - **To resolve the problem (the system cannot find the specified path) :** Change the path in the `build.bat` file + + - Open the `build.bat` file and find it + ```bat + call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 + ``` + + + - Change the installation path to your own visual studio directory. For example: + ```bat + call "F:\develop\visualstu\VC\Auxiliary\Build\vcvarsall.bat" x64 + ``` + +## 3. compile + +1. Pull the code repository + + ```bash + git clone https://github.com/OpenNHP/opennhp.git + ``` + +2. Go environment Settings + + ```bash + go env -w GOPROXY="https://goproxy.cn,direct" + ``` + +3. Compile and build + - **Linux and macOS**:Run the script in the code root directory + `make` + - **Windows**:Run the *BAT* file in the code root directory + `build.bat`
+ *(Note: If an error occurs during the compilation process under windows, try this compilation method: In the Visual Studio developer command prompt for VS command window, switch to the project directory and execute the `./build.bat `command)* + +## 4. result + +Compiled binaries are in the code directory under the `release` subdirectory. + +- **NHP-Server** executable and configuration files: `release\nhp-server` subdirectory +- **NHP-AC** executable and configuration files: `release\nhp-ac` subdirectory +- **NHP-Agent** executable and configuration files: `release\nhp-agent` subdirectory +- All binaries are packaged into a `tar` file: `release\archive` subdirectory + [中文版](/zh-cn/build/){: .label .fs-4 } --- diff --git a/docs/zh-cn/build.zh-cn.md b/docs/zh-cn/build.zh-cn.md index f8c9af49..8c16dfb7 100644 --- a/docs/zh-cn/build.zh-cn.md +++ b/docs/zh-cn/build.zh-cn.md @@ -33,16 +33,16 @@ permalink: /zh-cn/build/ - **【WSL环境的IP地址】** 在WSL的Linux环境中,运行以下命令获取IP地址: -| 主机 | 查看IP地址的命令 | -|:--:|:--:| -| WSL中Linux主机 | `hostname -I \| awk '{print $1}'` | -| WSL宿主Windows主机 | `ip route show \| grep -i default \| awk '{ print $3}'` | +| 主机 | 查看IP地址的命令 | +| :----------------: | :-----------------------------------------------------: | +| WSL中Linux主机 | `hostname -I \| awk '{print $1}'` | +| WSL宿主Windows主机 | `ip route show \| grep -i default \| awk '{ print $3}'` | ## 2. 系统需求 - 2.1 `Go语言`环境:**Go 1.18** 或以上。安装包下载地址: - **Windows与macOS**环境下,通过下载的安装程序来安装Go。 - - **Linux**环境下可以直接通过管理工具安装: :`sudo apt install golang ` + - **Linux**环境下可以直接通过管理工具安装: `sudo apt install golang ` - 安装成功后,运行命令`go version` 来查看Go版本号。 - **Windows与macOS**环境下,通过下载的安装程序来安装Go。 - **Linux**环境下可以直接通过管理工具安装:`sudo apt install golang` 或者通过以下命令手动安装: @@ -88,7 +88,35 @@ permalink: /zh-cn/build/ ```bat wsl --install --distribution Ubuntu-22.04 ``` - + +*注:如果 2.1 和 2.2 已完成,直接在项目目录下执行编译命令 `.\build.bat` 时,通常会遇到 `系统找不到指定的路径`或 ` 'lib' 不是内部或外部命令,也不是可运行的程序或批处理文件。` 的错误。2.3 提供了解决该问题的方法,供参考使用。* + +- 2.3 `lib`环境: + + + - 在编译运行的命令中使用了 lib 工具,这是用于生成 .lib 文件的工具,通常用于链接静态库或导出符号表(在 Windows 中生成 .lib 文件以便与 .dll 文件配合使用)。遇到的错误提示 lib 不是内部或外部命令,表示系统找不到 lib 工具。 + + - **解决('lib' 不是内部或外部命令,也不是可运行的程序或批处理文件)问题 :** 安装 Visual Studio 和 Visual Studio tools。 + + - lib 工具是微软的库管理工具,通常随 Visual Studio 的 Microsoft Build Tools 安装。确保你已安装 Visual Studio,并且选择了 C++ 生成工具(C++ Build Tools)组件,其中包括 lib.exe。 + + - 如果还没有安装 Visual Studio,可以从 Visual Studio 官方网站下载安装:https://visualstudiomicrosoft.com/zh-hans/ 安装时,选择“桌面开发(C++)”工作负载,它包含 lib.exe 及其他必要的工具。 + + - 安装 Visual Studio 后,确保使用 Visual Studio 开发者命令行(Developer Command Prompt) 来运行包含 lib 命令的 `build.bat `文件。这个命令行工具会自动加载构建工具的环境变量,如 lib.exe + + - **解决(系统找不到指定路径的错误)问题 :** 更改`bulid.bat`文件中的路径 + + - 打开 `build.bat` 文件,找到 + ```bat + call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 + ``` + + + - 修改为你自己的 visual studio目录下安装路径。比如: + ```bat + call "F:\develop\visualstu\VC\Auxiliary\Build\vcvarsall.bat" x64 + ``` + ## 3. 编译 1. 拉取代码仓库 @@ -107,7 +135,8 @@ permalink: /zh-cn/build/ - **Linux与macOS**:运行代码根目录下脚本 `make` - **Windows**:运行代码根目录下*BAT*文件 - `build.bat` + `build.bat`
+ *(注:如果在windows下编译过程中出现错误,请尝试此编译方法:在Visual Studio的developer command prompt for VS命令窗口中,切换到项目目录,执行`./build.bat`命令)* ## 4. 结果 From 6c0f6b0e2357c42eadd36849260b93c37b334a4e Mon Sep 17 00:00:00 2001 From: Max-zs Date: Sun, 22 Sep 2024 11:14:15 +0800 Subject: [PATCH 04/41] delete --- build.zh-cn.md | 82 ------------------------------- docs/images/Edit_Environment.png | Bin 19233 -> 0 bytes docs/images/Edit_build.png | Bin 38185 -> 0 bytes docs/images/Edit_env_msys2.png | Bin 18413 -> 0 bytes docs/images/install_go.png | Bin 165519 -> 0 bytes 5 files changed, 82 deletions(-) delete mode 100644 build.zh-cn.md delete mode 100644 docs/images/Edit_Environment.png delete mode 100644 docs/images/Edit_build.png delete mode 100644 docs/images/Edit_env_msys2.png delete mode 100644 docs/images/install_go.png diff --git a/build.zh-cn.md b/build.zh-cn.md deleted file mode 100644 index 5a8e19cc..00000000 --- a/build.zh-cn.md +++ /dev/null @@ -1,82 +0,0 @@ - *注:该文件为OpenNHP项目在Windows环境下的编译说明 ,仅供参考。* - - # Step 1. 安装go语言环境 - - - Go语言环境:Go 1.18 或以上 。官网安装包下载地址: https://go.dev/dl/ - - - - 根据你的操作系统版本选择对应的安装包 ,Windows 系统通常选择 .msi 文件。 - - ![安装页面](/images/install_go.png) - - - 下载完成后 ,双击下载的文件 ,会出现安装向导 ,接受协议 ,点击“Next”进行下一步。 - - - 选择安装路径 ,然后点击“Next”。 - - - 最后点击“Install”开始安装 ,安装完成后点击“Finish”。 - - - 编辑环境变量:根据 ***自己的安装路径*** ,找到 `C:\Program Files\Go\bin` 目录 ,将该目录添加到环境变量 `PATH` 中。 - 例如: - - ![编辑go环境变量](/images/Edit_Enviroment.png) - - - 完成后 ,在cmd命令行中输入命令 ,查看是否安装成功。
- - `go version` - - - # Step 2. 安装windows下gcc编译器 - -*注:MSYS2 是一个基于 Cygwin 的独立软件 ,它提供了一个包含大量开发工具的终端环境 ,常用于 Windows 系统上进行类 Unix 的开发和构建工作 。它特别适合需要跨平台编译和开发的程序员 ,可以方便地在 Windows 上使用 GCC 编译器和其他 Unix 工具* - - - 安装mingw64。mingw64可以通过msys2的包管理工具进行下载。安装msys2系统要求、下载与安装教程见:https://www.msys2.org/ - - ![安装mingw64](/images/install_msys2.png) - - - 安装后启动 MSYS2 的 MSYS2 Shell,执行以下命令更新软件包:
- - `pacman -Syu` - - - 之后,可以安装需要的工具,比如 GCC:
- - `pacman -S mingw-w64-x86_64-gcc` - - - 编辑环境变量:根据 ***自己的安装路径*** ,找到 `C:\Program Files\Go\bin` 目录 ,将该目录添加到环境变量 `PATH` 中。 - 例如: - - ![编辑gcc环境变量](/images/Edit_env_msys2.png) - - - 完成后 ,在cmd命令行中输入命令 ,查看是否安装成功。
- - `gcc --version` - - # Step 3. 安装lib工具 - - *注:如果 Step 1 和 Step 2 已完成,直接在项目目录下执行编译命令 .\build.bat 时,通常会遇到 "系统找不到指定的路径。'lib' 不是内部或外部命令,也不是可运行的程序或批处理文件。" 的错误。Step 3 提供了解决该问题的方法,供参考使用。* - - - 在编译运行的命令中使用了 lib 工具,这是用于生成 .lib 文件的工具,通常用于链接静态库或导出符号表(在 Windows 中生成 .lib 文件以便与 .dll 文件配合使用)。遇到的错误提示 lib 不是内部或外部命令,表示系统找不到 lib 工具。 - - ## 解决('lib' 不是内部或外部命令,也不是可运行的程序或批处理文件)问题 :安装 Visual Studio 和 Visual Studio 工具。 - - - lib 工具是微软的库管理工具,通常随 Visual Studio 的 Microsoft Build Tools 安装。确保你已安装 Visual Studio,并且选择了 C++ 生成工具(C++ Build Tools)组件,其中包括 lib.exe。 - - - 如果还没有安装 Visual Studio,可以从 Visual Studio 官方网站下载安装:https://visualstudio.microsoft.com/zh-hans/ -安装时,选择“桌面开发(C++)”工作负载,它包含 lib.exe 及其他必要的工具。 - - - 安装 Visual Studio 后,确保使用 Visual Studio 开发者命令行(Developer Command Prompt) 来运行包含 lib 命令的 build.bat 文件。这个命令行工具会自动加载构建工具的环境变量,如 lib.exe - - ## 解决(系统找不到指定路径的错误)问题 :更改bulid.bat文件中的路径 - - - 打开 build.bat 文件,找到
- - `call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x64` - - - 修改为你自己的 visual studiom目录下安装路径。比如:
- - `call "F:\develop\visualstu\VC\Auxiliary\Build\vcvarsall.bat" x64` - - # Step 4. 编译 - - - 在Visual Studio的developer command prompt for VS命令窗口中,切换到项目目录,执行编译命令
- - `.\build.bat` diff --git a/docs/images/Edit_Environment.png b/docs/images/Edit_Environment.png deleted file mode 100644 index e2d895d074feaef1c71bc7baf4d3b9118844e68c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19233 zcma&Oby!sG*EUQ`2neWjmvnav(xD)NbR&)Az%U@7gp_oHgp73e&`873ozfjc=eN1< z-}8L$dpzIqz3=r0>^YdduiDpI=Q`K92z{%rfQwCrjf8}RtE4EWiG+m82wWFqVgNr& zGKXt{Us%qHA6=1#W2oA zTcGB#q=uS{ECkr-BrLe2$}c!id=PynR8ZiGEvQ6^dSC3FT~k!VTRcB8`7^zWbNKzc zczK7U;>1+T5C%1l#^TT_K_X^VcD^qhBQReqL<=vj6XID@5T3!+WEi5Z5t0C|3%-hD+Hv48p;c6Z# zG|rL9oaqzOc+gPjxZS^YHt!1m441eVXWTb7zEOI)G%hYW_*C(L({1^9wR=|+33yC& zZ%KZB{>Yo($!?-*qUnxqJQgSgo35YrRru_tN+7m+`KVlZQi6{?5+sB2_#2Su9-E7e z*4uwB=x~4il>4WV6|AKZK7Os9U;JX;HG(t1Ap3b-2+%Mu7Qs$AVKj-{xJ&;KkBlRKkS*QbY8$Mt0FBiM$v)W zx%Ix0W2*j)sr=W?TO1^wzVY@aQYxKq$k_`@vgd~b={cIVoUhAQBjB?=8tv?<4)-ec zUc_t)=MAoSeR+2G5AEGLAB;0{GtC?IP%=4T@ z#;Jv)F64p$HNY_WitE=H>wvh>OA8ZwN41y`Dfvco>95g_o+^T+r${mwbH5&1a{PL5)GAQ-+19J1!6Zk#O9)!y1 z5*b!SY-NPudAZVZkKtA%ghFukH6&zQTP+|)ZaT5{`a_K;tu%i+Q+gy}PujBKA2O-V z287O*@>vmc+Lz^4n#t`a{-07xCgqG4kB2ZDh<5 zqXxL4^(hu2tr|#0=dOz$6OvKTC;wKiob&RgCBVrS_x@~-`}FDUrPT7> z#d6-u%Xs%Au@-#t2dT^Y7tZSw5zW{H(JIOdAC_1pvu64W1bh`wW9Gb~vs;9a?=e$R zuB=HVs6KoSuggZgS!sSL^`kXJ7KH>+Q!E?3x7nc9ue34GdBQa}AaHJ>nnZ^130cOobq7au_9m4VabqIJiBmt8%C$3A2sF{=C2;6m zj>W(jkuA90i-PwTTLk8#S8aFBCgYguqc%x`3nY&2R}`P>Q62U1n&-kzKhn|h(h4{( zyatSfNz(bEuO@A^HeSl{XFz38@<&{xcr27-n>>l{LR2hraj&y2oMYnxxS_LGEr2(qx}h5Z^J+6+&*~ z>=#dT8Li-fN99fxj zvASV|MSaIrCirOp{VI^^vNF9Z?MLKU*DyOe107wg9_l$ud0*xis*sdI>8qk{C}3ws zRPNJ)TbW#cF=cYxfvoR&o2^zGY8w;3`r#JtNuaFfT5>70xumjri{N6Zd_7)woR`rD zKfNXJ5aE3O)(G;Aa>MQYd-d*bD6CBw1oaHLV_lq^PE=o_O)sOME1CEBKJ-LiZp#V2 zh@X1V^l>dR4kF1i8* zX;mjBUq6W|sibmU82Ej)nDycel8VW-E5(oMKItd)sxRj9V^C_a6U%@#Dfe+fU7O>L zfd#hUm7qBnp>d+*4>tZ7WJ2jXCTzX)zAhW9#Q143H4jssab+t>Wc6N$bH`|xQEW&^ zI2*j&y!#xJ-#pZ7J^C|q@|YT^edFK|Z&^bGA*mC-#Obp~^iZ%O!I<2{ z-M-@JEr@PA3~HXPFD~7qVmddqJsZ@K<0RYWPxFS4-k9P_%ew~t$O(3Zr;Fm27@DXm z8#_xFct!9i-PNp@?cpW0{N|Yg-Wj4%G)(1Iaxw-=TQ?S_sI=?vo`1I;%l8X1lC}Oa z#}qA`v;i)dxEzPr1@*^j0@B)-Ul)(F;qQ0c;jgo5CIGS5EpEN2H)WY`rf|IbLGTlR zC(pTQ0|@h9(aMuusRg5lg^SQ4h}+Vb>aIT2-Er3an$WEQ08Q@eM`XhJ61W|FxQ0Qau-KQ5>SEF| zLUb||`qxG+)AaNUJ8$3*whgiy|9M~Hc^5GQNoxa6CEzAp#=w}>?x-jQ5#Tu##GK1s zhm_*Xk$**epTm!9k71Aymf$6mKJrrD^)sDg*gduuUUR_aou>*^2!cWU(g6PLn@~*i zx#(zR=`!rlW2kn%?OUpzqOl+wc&{Gkrysc-(kEM6TQ>qZPHe_N!n^X&5dP_JI7bIc zIh(7Ob6p0{?C^X1-{m}6TYd%Gq(eeZ;u)K!w*cOo``1YjbS=lmSe9B2A#b@n`0rgt zz%1(8TqcC{$hq9Z2)l;88DO*ZHb#We_=IX?adcv7%iAFQU6=YW$IFm@8 z`m$ybU8tJm<`GZwhXfE3M9Yi#Ehf!HV@XF+4XM9|7kxRKm82&Tf%HKdsPG3G#OH`y z_EF5uymt+|Bx!|e#}88gn9BMSK&uwwX;S#iQJb7?siXn%SkgvbSVn#?hB8>V_F1${ z&R=xNf5UO&5BQN+SSiy(XbdR<);L%G5zCIxULlT#j^`Oc#mGJWck)OlU4_mE23Ok} z$!4cM?0Qe97Lat{e1e=XU}N{y>yGnMjAKGV6eU<*5fJ2eT_K!LbRCgS&h?MFkj)RH zrp~QVe;_v5`ptLVC%OI-q1cr-H*fdCiOBeofKT2+3_$MA$8PJ~@5R%EcPN0hqV<`e z2#8nL$$*dN%P*H7p~`FYXit$m%v}?Fs_&SV0_M0z$NQ_GQcI%BOB|HuJL|3ZLb$n@ z`H;x-Z#qbvN_15_zQKD{JF;SzO&!|NRF=p$F%|?(xmng7uer7U*^d3))7u~(-cuRt z;?m0o-R0ewa+tVS@`>zY37czRiA$VA7)a4a_{taFsk3a{iqLOO3!%uuTQBap#E)NG z?j+JQ;NJW2+266>wmEeWQwR9nV&C3SnQMC2BlnKmbbZ&QzSeMFvemuQKgz$M9mmzD z4wky&oqu=+Ad5%G;PMWL4tTEUl}5MS4*oZ6-*2mERMGdFE2n&R$a%3zaddRQWW*}> zoe}+#IDs(As8jvXr9@1z_B-wH)7RBi;!2*|9Tm2qlfOP%&TOTAcyZfn++ltH z>>kl=vgkfxkQ@@yllz~*BjnFkm;x4Bm)J#bw;JS+m_$|gtz1mt*Ase~*MT;#Czrlr zC)#E##_xlpaY*C5|7r$ODGN5HaV zvcJJujf4a~4DpR_Sy$~H#vwKl!Q-tgeNsQN`vVZACdQTVcFl!5fxXq zIBLeu8LCH@%F6eH<(*K(I51A#`^_OTWJN11BReF(N)mj5UGq}-R@PXi2rg`4eLO`@ zYQc=W3z0gU>(4g!N?N)Z{7`4+=zt&s&eWPMuTNp!0LjU~kFfs=w;ZEM#WJs01gdhT zkGrfL)|gEb1_gbf^RTe^j?cnz?mjILBbmkHKf7#W(+8~3YU@-Y^QXamr=p#oN|zfb z87~@~Dxu!GPJ)xN0!x~0J{<>6v{E+I9KI%?+yQQ=ZpxdXoo%L|Oo76_I^*h+)EGF0 zrR3u&inz7DJtGqLy2MqyA1Bc}OZWTw(1hwCf#G+Bt}b!;84q%;lT}DW^+0sFF|`~V zI*Z0IW=+z6bbqUi$N8m2)Fol*ZpGL4KGbhz@l6Z9oo}>4RGW$rkt6|}-*%0B^ynONy8b!K2@>F4pEld9l%{j6r6IUt@ov{XpS8{oDJk4~T=s`krij{gap2RM%mBZoz}oGX&D`C!xfqD?CKrhj*A^257+S{VB#^$Re~vWbmQv+@3-f$o zcl&I2DAUCLsaAQ!-4m1%e#7Fc!-duK{Z33?lXP9`5Z-5KW()GNY{N3o6!!)lJZ6JW z>y-Z!FS=)ZNgQ5Ak|F#$C8nBpuAsQVj`@rxC48A#2Gsb=UFUbRCcWx-UL=nb%8|nK z`)mQS!=fVp!)9)Q-_W#0bn2B!w6~P-Ev!T$Ck%R5LKZI`hXhdHjSA}mUV2<;W zuImM3d^<|el>r;`v9`Vjo3O@A>GLj981*M9A&koiYty^h=EI#v6~LiX z?9^O;IIi6@`cQlMbB4*elT8;>oHG@=oRf4=P$KFg`iUn3lJH!E_9M*@G@e6Ps|Du0qiq)wB9 z@WCH8nyBc$lDR;V-%D-MIQyNN4L1m-jsK(l5Uy?$b~L)JC6DBCZ+jYT-qZC>JGjV6NidkAuO=@y9Oobc_kQn z-9okV|E6EIW8FsQ_D|Hat~umYcPU|HcU81@&boRF%}>O4dGgYG7c$?9BFg(Yr}o*OsSPA#m`DKd1=btT)f-6z`kAd%anaDew2k4hmnpW z`NR5DL?QS+L(BKXz#7(*@S*Etjp>IjyQ6mem1IBOAYI66f7vPlXwUBUT0Eo);l6Qq ze0L=Dfa6;gg+KV^D6N z_295L;$#0v7r9Qbyo)cyGHBpyzLlu-gr-Cl=>ol6j3aZ8KG@Y>su$C@q64Kc-8pmr zn{(I0Y0W1Jy~$shG&)DGcA?^cldj*ieea44~T=z8`JA5b-zjRbo5txi4| z2TLf1#$O%8gy(CL7Co1TtA%tDljjaOALlqS{IhebsZ70$L;S(ae!#;KB0d4O$rR`FgV zRb(?~02jH5*5l1BL%U?ZK^!4mi6j1QAeqzP%SA~}&Yk)}1H1fAw6G82aCw)7uAcJ61YAqBgogBfR1{ov7pwpZgU2TDD8Sa11kLf~^8p%3C5$Hl*6 z6cQI`wNo%!CCc8hi(e(2+YMe3RC^P#md;W^! zsGHr=wWMV=JkTkjE@DuH`|(*Je^w?d`O%=5l0(QuXscqZ-~dZ@rd_O zT+5PVLWk8?WiXW0yi3K*72mr;nIGy|-<3)8$t2a>KFe|lcdm~7+OA-%A) zs9t|e{M787&`9CR=t}M(AdADLmvU}oC5OcEscH4$C4h7({r^hA2yjIopAXC8mwW8bLdh1jVn_v_<9Uu%vT&Pj zGN@7%l!mqEUqs;Edq0pF&Envc1RLM#LJ$K0RY2W$FN{v(1jF7Ony6*}qne6`Aa2iA zeKv|Fw1i!|gkD?KKCj7Uw(SJCWQ&SqB$-f=G{*5QO;xIbQl$fcMV874Xt}`wZ8UOU zu$pIsI09pEh?moeW`1^%eX$6L8hH-8O8IP0ua=58wP14kbwD4m^aAIoHg}l(we5Rs zed?Ni^uT(?_J74xmgB?%n26AvqdSSC+Nk#77Sa~Ki`;TQg-0BNDG)#hcg}M!O^sYLOk0L&wVp90h&!L|5smL1<{W&F-N2>T# z&ckkZ{-SKJqsy6n$)Rf#c(jWWkc857vWB-dXSTIYMWhcXP)^GF9vYfED(xE1ETun2 z`RjO1qUVAzckX|lcQm=X>dE0~AlQ#74Q%X`ku{oL?UJRcYKvELc}~M4yYQy>=i24* z>gqeZ=&-SEEmg>|!ob#ze%`}e?J)&-?zrsqxK`v2zO=S?g`+Csfd((92dPv1K}^cz zQBA|+rp|fRTYbfYmnb%IUbU^#O1Qq08r)v%dhVq3b>OhbRtd-hImO7k-S&kSkn5=R%y{MzP%&kbf zP+h;QVw?8+a|RQ&qgAjn=q2YXU7sn`ziNx`2U(uC%M-r?UVP3+n#|V1`4r7a z=S<(n_B3_=^q??;Q&VYELdy#*Pn1*n@_1)&7X-E$D!m3nqXY zxr@P#XWGdV4d=G#z5}5yqoPcxV!Ty4zzXyrZikvn5xb?3#*sh0pNIJ3Ypskrw${Ud z9+4HG@b&e6r?r_vy{nPSoa=2o8g#f(=zamDW~f*ucDI zs`oM>5>L2N;pL>RiiXF?^q4jc@i}}Of(;>$E9q5$qx^D+{;J;YNEG6+g-H!rdlrb- zjTo2oSrRey_4PE+@ZP8RYwQ<&zNtcOBm~esw!4KHS1Im4Tt3#+7&nJnA7rdtUxqp= zU!zQAi1ZaqW&ZUvz9yrVtf{447v4?oYWs*FO>YVbOdQh{(Q+FYi=$rB3ZhY`x@Sx}e>B-{br=*;XZe*aUrIwkky2 z=8?Zign~fHK}g72UpB&v^-ZSe120OZdm)xU9u~6D#l0*+H)K~K^z=;G{S6s zr0QSK^{aoI(|Gr+uHMS-BQHYr@zrRaoIm0BS^N>0OgvO}G)}vi=Ebp8w_RsMb7oM~LllhxiQU2KYWM@y{O2h1 z;h5O*jX(A#%sB#46bGgg4aN2gWyv@4weQq+&e&FeL1_z}aPKb}@*7K8xcNUZN#Jv? z`+L>P$Q^0b#=!Q&Wo;8$%_>QC=RZqqSF0$&r9w6fnY)7MAh&^hSWS*toCis=NFh?m zSc=L}?IelIJ|h*kIW_ivoRC)Vh34qvYzMhE)|{l8N3XrD9NgF0Gn~ADWUR@4@zELa zvCo8ygq>6NrkdwwR3dPePA-Ie(^$4~1|)7cIhc)k{fxRiUEWNZjZ7U4 z&wl_f%UVSyrSbgW35P~1E+l8lqIN7xU#ARIct*TColHctXT5}3)VMS{Ed&-0`u@T+ zJq*dTmr&4gPRZp0qq#08Hl8scC#Bz@yMe==bf#}In;4CKsXbu>Se>Rc4h^X`5V0q0 zoZ;2+VpH7dLVZjBIcM5WNM$k4!!=g3`xY5hoi&vMe6wVD;=F$f(JCI|Cs8XycC!<9 zl&>E;)UU>R$x`X>V7R?|h3ZzbsO&aVeabE_^NR1e&AloOc^sPlCKB^DxEaW_^2bED z!jHDhC#eF)zEX+waLm0tZe`vau``ZfcluUAR3#-CyS7=f;%}Uy@`?yeTgzCaiPkcq zQnA_6SeA#2qU!W}8q?{8!X-##GpZ6NgM}iMC%99<^GDqVUfwS_-@_?^qr??2u$UW@ zL|m>2vC@j=0n-xj12;mwW$^S=WNI6bqu_Z`f&GEI#*bM6gKlfD5mzj`JAKs|lV)7X zCZK8yw|ePRcIWsIdy3CtJ)wEi_Kkc)zVzGrgP6RmpjTV;w^Ssk{msnr@`s=VriIT_2#V_u3agFRlSyNz_oq+s=Ouy#aPR?+F)5=r zWzMQKi{7VgWzZ+Do8FF-vi}RQ`UWo7b+5j)$;?y7k4P}zfM(*C1iDs~-z}u39Q4$u zVnr^>WQSu0#V+({&&G(ZaPL%UxSg0BOni+#LM;0Xy+m-PfEAJA?OSc5Pyo zVdJN0Zh%90G^5Lw2rrjKINxgfN6DkbUH+EJs01Re&%3>eA8!|BO2i;Z=+H>#{p}o( zBC)E|P`zjUqkjdV1NLx&*IQ|FpThFjOx=NT^|uWdt(o$a7YQYSSuetP%!1bKXX>#@ z%yy>_DT?^+t=DVb$=4>g@C9bv2KlOY4Ixy|?X5odZdsv*g;B&1#qEbyxPKDS&)^g) z({1lks2OfCV;hkm=jyBH#+?)A;p2bhsW_qPnEV9hJbP6PTWC+dL`vYGYjSuuB8&JC z%L}KpdzKjeA282ePx=uRGA*5=WzyVeZJ+f~B{(4BTP1Noyby z{>iMjid#*1 zUs0_UGfkYgiGW0UJ;3;ZsZ~3+O#NwOi0YzJm-lf_{&sb8=_#VI)ItJ?)jX>__6F&( z8P89?*3^T{7o@Vy>M+2(c746N0(SiB>Z1O9;GLsbvf0rNzEHy@u;GmRDtK+f&)9g) zvnKZ~Rtcw7(K~8+Wor-oVkW|3=QFogbSt8n<%L9{{xf2KZ?P_l1Gx_7@YxcDiB}pM zO&8QJVizwCm)nX5i}Zy$9Vgp}J|9y%hLW3DbJb?N`ey@Xw|qUqVj_wCWr-W5u9E^!|G+^uukv&%#P}kUG`%_mpAuX?^5+Es!Dq|I_g6uIbfF$kcPL?qw~IKr zi6EKpTxteBe4;%c%a>_^pGwSSRi2tT2tKK-bE1^h&spoXZ(GhMi= zcRFrqoO#1tPL`wAlF57%tlQkTm|7O&kR$dncm%;KYWv`o!qIPfl>kj=hL*yj-1j!Z z@caV_&>Y$vD5?QeAsBAILeT$)a|R?es85}%Yf$00ggHDg%J?mc#imy?#XlPIhBqa* zi}qD=e`}4tl2c=b$)fe-B981{;gblAqs^jj^8QZWv|C1h^Chv@tcRfRUp`Wnc5ro4jvPc20dXM0IZ*B}eepJvamYW+oEQ^1MxZ5R>P5(-3x`Q5$o z0Wfj#{{F*m@R5ULx+e@V|IA#r6~MtVJ1kJ`9AJ(IX#1%esW%Yaq3Q!KvsiCi>bXs> z!E{|?InD_&bl7Ir=iE{WmQG{qXL!`6Ox#lzdBD0FXRla z_mO}v_lo{e7(-%a3@KlWsTb+{U0P$Dft9vm?exKT2LoEc;(*rF?c~M z+iaBoX)<$RzL3BX{-wMjUw?9<>^ZdvVTP;mUXOA`Il2A~xJa+9bZqf8p zefgRS@PfL$;UI|+N>UbKcjyV2tp<;$${jt7xYT6#$H;DZ-8kodHOH$t zkCMQJF7=%QrrK1ovBp`|&x~^!izoo*niXub$mcouzJp=3-$8=@VS%PB^b-mi;|4im zkc)Vp!_Z}Ye2Q`^*4H`1p~A~by_b~g?q-&Qy66VTE7LiWf?bkaU(FA(luticNXhP5 z$qvbZ_wkQeQTENyRJoKa847sdz09%b-64y5%i7 zw;#g5Cihq^`<`%vpjH*EOmp9(ptN-3Z!|S4pQ!!LV4vHF>=7Ax(%Hq>#oMLfWO{Xg z%Web{F11FjU~`QalqpA-CHFwxxDrtzO!eoQAEDU%=P<3DVEveG|V+~iKdbC;I~SzuiIqC z6NU^R!)V5Du>N<-Y3X$9 z-`5?@6eJzP36<;HeL)a446^1&N|H{~KYmXBGo_Ga9CjD>y4E{5d@XCD7BKyQk|gWj z)e2FReN=@2Ejmc^e~PIaelkqRrgjH*Z$pcN-}|r5d7nsrW?l^KUd`e&(#|gwGFty# z)66M9*`RZ`#&&7nwOw@=k$||(^PY8iXtujMN<;{)Z#1WF*Fyw(r=Zr48WtYgQLVpG z3`)?kdZ|EK*g0wwZ9~8hOeg5b=RdhWuUXa4R@MKbk!XQibZQhW7}AR`ZnqH!DUOOu zk+xCWdHNo6Q@JexF(9YtV~9RXfM#}@FR=1`r%-qz3TN?I;Pxy3G~<1`zn&vyQJ$kz zfq>eU_HerQDIOXvffYD#r)lzH0U(Ui)%i&J!10f3wQ6!Jr1A8>C77=ux4+cSw9|H= zuZ>dl{pF5x{z7=$qf%9hKvDy%cHPepaIh*lq~osgE|zNP9lRb`VIwc`uQ;t z&ILgf#;ftP5Kr$fo3LW_XOz{ey2h2X z@gObmsH%IwZZ?v66YT~FopsKxUaHR-QRim}`mCU}`SVjk>bo(XjLJELT19fXspi97 z^L@WhY0$FB2O<06G=Gmg9{KwuNI{XHhq_?9vuJ5qIwrx9dIinoX0D%2rp?aXbE){s z>P7R#WCQy}b7+XF$A5|9%Yupk^)sNGZObBN@t)4uv_Cis?YcRC!4Xq|>+Y2+JMGoJmDSUTKoq z8Nc)>F&6Wj+PRg`WaUB_ePG-C&GlS(2v#9VJxlK=(I-q6sxMj8)eCk`?&vI%bpm3HF7YWzYesq- zw+9nHo85U5esCBC8QAMg8}3t>AC=AP8eW7ube3>M4D=UMu>%!vewlXjy~2xBc0P@% zGI6HxBZ23X-Vylg$wSxUTJn&Q#gQ}-Ph#bK>%NK_6zWy`*>kKugYIuC|M%{c=~m8# zsU$8j!CZubxq~4m400j4Wqtu)n>>% z1DRuu83kW7_^WLw3rp%>9}nFs!K_w){VQ`muhIQzGt>XBY<>e)c`!sD_Zlw_lmrY*fD^c zB4#3>c-7z;=n9!&St{7ck*0J%U01~xI=}3Rs~q3tba{KX1|<_Xzv@j7ciMY+=dJaY zE31tkRi2h=Mm&Sc+@$*ad2FZt3;pc7h zJ;m-nha%FjIvZR;GfsAeze@{F(%IijCFZFdf#u|w!vAlQa=bND(xHP`jIxh@W^*+6 zh7*8k$!d0P$Vh-9ZZu0i(d^_cbAchI=jG+e6U(e+ zzvX>3Lj7ocfE-Nh#y_=E|Np2!S>{pH1t?(S00r!0v-wSi!3cN_gM+oSovgvttYT(u z29Z?~jr>*Kzv)&P4r|m0Z)=9?*2f92Ec!+#WzR$Y+E{5g^e?TYRg1EeN1aGm>phaH>E!%>heHxTD5X}iibZd&}DKw+3e%NwGjSpa3oS=?$<#&!Nj zAZddkYcvN%&fbG{BRq}J*OfFxML*BcD^@`F6%ub7QDdLYhFN}) z5zxeVyl+a_#wl1mEu~a3mCv~Mo}#k0GXt*6)tjdpHU~)oH3@5nJr-60#W=~aa}A&B zgy%W{d63%ka4Cvh?@1!{%h0DJ?rG+u291w9J+7iH6Ut-3s+d?9!k}(FBp&;(Vlkeg zfoKc!b#|gJ^mpf8FQ$jEKrEz+WVIpzgBNQ+IG102eOpRsO4wvnnl%lk_l+bNvNnCjW zG%&B*?O+(E>?g5;hW5nX^&`p%OoSS1@;UBHdzMsJHM1&kgH1V_II2tz)t-z7Y|Q%U zTp#Xt!&+|S|YR1ng zm!ESha$Rei$N@;9+|6_ynSXKDw9|5^Kk_-mMKCb(P`#at5_lt7Aty*6I z?2(9U$q8;H3L!f)!DZ!b(=l>h`+Zt1mN4bWOLyk=Fg&SwgSSc4D)P;?s`stFcdev5&76y6!uyZ zaG1^uU`tBLjf}Ck^+=R56*6yNM8?AYQZeimbUG!PQwIhgxCX01n86AKJL!*>DthPr zh?bf9rN>o5!%x++6*I1wfs^tD2^OGQFlQL;!YouSqUrUkDyg8vw}}K6b?S|}DaY#K zlI9`?K!J>CX>eys^-TkbpCjs*=Mo!141ieE)2!hme)7^Ln)3@o@bP-sKi0zKH{GjV z)yooJ7mtyNY8SkDxlSj31Mon6OJ9W2m%aIDJr`v@Ag&sb&@`b=^eNeGFMn!vsGYue zd!u*T%1w_>KAke!>3 zDL#iN7Y%e(g=Lu}M?CplZ5$L0Z8Dg7QINLjG0vpMr}$Z9Tb!+hlXohuQZ&B)L1A%b z1Ubjl$+$##aoa^Bl1{>8!|^n<3?B30dq&M;#iO&Bf9_8@xC~u5mnVWChq$2ArQ;tP zcRXQoR=j6%s0%*ma?3a?W7{uDY}GyM`}4MJfSW~!Xdd-ZS=8X#4-h;#6@pcB{DWC< zHu?;xx~Vs*@?Z@|fZ$yINPkQZzcB_+EI0LnzEbs2*9by+z?>d+_QmUD!xym2HQ;@E z)s^0xb=FggOL`@YPw@0iLW)9}r%fcn(dXwm4XwWwWczd9NIc0JSMb}F4S*^+pyZ+UG0ucLnT zKOgizd4K}bw=qBv7T9fmx6N<>`h@R5h3_Dd-`@L2%)!ReclMP>O45L+M^Oh*@@pPk zy;8n}Q+Xgp>15=-&f*Q{u;lbM=$ht>xlt818e;(TWQ#3*rTr^TRnux7K0)7a?~*Ta zDo)}*)`a#Ax@LGP>#rOtyBs#99!?D)4t1m6^lzS08r|OHaQ0o@=Wi?#2Jez29!6qk zJQ8>^Y5|0+)N0gCb}_kQHvJk;AnFk$|EamgxtC2_iCW7Od8Yd8d>dzh1AO;u%w`mz z7*-8`xE$0kX=K;7SadKi5*KQ3GgX10!RJYtilcRYfdDmd7$#uln(O@uafw-rwy}_sT=w!(mp2?neEndZ2{npxFll)f1QP z;Sy}y7HED&65y8a32>E9!zsQoA=ETI(m5?s*!h=BF~|XcJh0YJs`|Zr@*6o$M(rnz zlNefg<#8`)Qm7aXr=)+(4f%z?u@0)C9!4~B=R4^cpE>ZT9;LlimQ6UQYzU|!QVQlLgd4P9g=xa;g*r_r$(rTiravNK(xV?Tz5~7g?gdH2mJiU;xqr}p8*`;l);}Rt@>$fi zOXdkcx5yR&E;cH+=>?x4#tbjhtRRfR&%lG!yl&20Q6$2ZGrqJ#*9uI}$@evfFC)`w zWBPSVX(;bz)O7z}epr`eoF0JvVhE!fNp3V2pS4 zh(H~1gOaZ53f9o|i_TA6B2%3TVVUh`HXO12EjEuOCHZf1`XDo1eY!iO?9S9+QJle0 zo|aVQdAr)H+=5HTerpVe;z7nBRZH)2y`y!A)#UL}h!>=q-8g=!*z##+!Ji9db#M7^ zBWA_i!H0N4OC#&l`g33!Iu{br{7hB|5!^ef_nqw+23a10H%|%3#OWu>&&Ft;|^j2N|W2S zBb?uLH4Sp;r?>%NsUv%K^Y?qoI<CQF##iqK*5;vY0q<8o_g zIIu*llWY8LZ0j}l@>lcXfu!d*Bs-6V9{VF2uqcvedld`2*ob4zZBKoH@912Qyj!PH zO!CrruFtwpZGvl&ta|meQ7=;nP)t>rD0Ly$aOqi|YTo@o3Y61Kv*Igj(mxFh69SPU zXP@^bTXp13b5rW)omM5UE_kkM)Tjcai`VMvTqqz*u2RSTZ(?Ux`TZ^yv%PtRzw|if zE9}pG#7-eHb0k--d6>RwHn>|Kmd@WxK3>YLq^K?@N6 z*v)g;JwEWR*{}y(>qyr^jCHn6k&=Vt(!mSmAGgnPWn^l}$NTBOyd)tnHj)*bq%dTcg`#%+L_MkYl4X9Co&)Mdw%N z`~&Adc%J9`dY+PBf%wjUmVUz!Hn;34(@!Q#Edr$64qE?T=_=p- ziOF#TE%Q1Id~|ZqWya@bDG4imsl6c|>roUyzI$}bsYzM$K14&ecBemN{P|x@-h@}+ znI&8tVmujT5u~YC1>bjEm^YwJ)Yo@dyU$RawVI3%{!vPi@9n+*fsHdpIneqfmp z76{hW@nLX|rxr`hLo4H{<%ytG>%OagNooauMzQSN@QjQsso^eJ%}J<#*{&g6@DH2@ zK}4U(ke$$%Y%Y3hohoE%juHFpu^watrx*N5pZkmpE7^0Dds|X{14HCz6+so@nLxtV zkuTZUO^^JD4vtP<-H3Kx4WDViqG&%2U$6K3*_W4$q%~8jVde6us8#+KWGy{I;?f0o zl{u^-ZErf_Vln*zetna9^RKZGpv$$yPY+@;wM+AE>3sx`XSDe%@a3~DVRrMeme9HO>PDmZWnV={XzCX0nUpsaL98Jv5veo#HT z!pnlhYHFO&LeJ<18*Kg{<4v)-vsqp|uKnZHzqf@fx6mX9Gq|eR+LK0SmOY2_Mt^+p z8ShIp(Xx8_Yp*J|O&^5FdjQ9Qx`MtUw@*M>A5&IH3VqCd<2gE!6R9J8`nXe%c%MAm zW-81m=s=hjbqAq07h`KN-nmXKJz?-Fe)t77BOa>jE?WXGZ5mzIO(j>jrg2`sMl+ZE ztz}+c!~xx5n)fyrlRC*G#uqLFT`!H#faDnR1QJj-H-jma8A>R`2+i9xI7rt(7LAAI zXhbMljE526{6_kNp#*NhfXeaTxdf0V`Vxn7UW?(p8iFB|LcjM%%x6hf^<>Ja>BNJXK7`&ID1~0}EnZUZ z&p93MFV)z(S{#Os$q&=UN(JL~@9?8q()k6Gsiu}of@NEO#sXWgM+kTiY&%S12xh$R z_+%oCw0H-<9wm`51Q!{VF3Z@ z`Pop&@Hx;XqfpQ!_Xa|wNV5TyuFeB+m!i?*rWZHW%qhsu^wDB<99Rg*mz})~gRg|| z^t3&+<=(+r{X+_D(+D%Y+8S{J8Jw?j+|+Vq@mj3W`6I2{C6-F|!@(G?;fh z^zX-j%Yy5(v$N+axFa8`>*{hBa&}9SsS~~<92oD-Q4r+$*uyv~26&?b364FLT3}U} z7$h&kc#3g01mJ5x3;)O~*h$F!LiYK4`F0!_DMVQ@ub+(n$_eYgaYBvlKThP zqZ{%WH=6eUJ5FhH`?lNC|DiZU_Jv(`72Y*eOp4n# g#Uj3C|LKcb2Q@$!ysp*&n0d9%c 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%0AeMnE)nz1DsCUKNo{) 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 diff --git a/docs/images/Edit_env_msys2.png b/docs/images/Edit_env_msys2.png deleted file mode 100644 index fe6cb52b72de780fa8dfec940451859fae5c444a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18413 zcmbq)1ymeOw=D??1drevTn2|gaCdiy;O-V|2oT(YLvVKpZi9tjGq^hhcXt?gL-O5w z|MlK~pRCtw!B|)IsZ-Ub_TJ}osG__C8ZtgI92^{)l%%LK92`6y?0xeq1lWHei6%VQ z%QI(X31PU3A;KNlhZp8Tazb!$RnaK-hA&~CksKtooZ;ZmyPp1@_1YJiz`;rQONk1p ze%3!|Rj{GxP1t(8=Fy~X!7zSAVB?pZtI$So6<|c|OUl8hUJs01Jr>;V=tNG=2tpUT z{uGKi^5rEx>2~ikldNZPu^0#*uWx%_*5VSsAZ}E{HMT8B?`m!&=y8&0_cbwA%4_w$y<2nNo+MeAT7J&_cyDmK ztZlgA%$o8mIxpsDZM{XI1p7jp3_KL8?>B7ZZqH#oz`=cRCJmB)wdk7tY@9S*5dLzt zdR@)6t-PGgvcu@ZlZWBpm?PO#zaq#gzYNM>?KSO3Ie78sYpc9xLEtYOIM^13hAJ&@ zTz7`_gFme3Hso|t8N4F`+!;f|Q$c5w_JDYK;Urtr%>7K^vwA6gg2{RRH6GdK+oSz6 zNWaXKRAK8*r7eKK|7Y>VxT zxUwI;RK&%AvQ>BCH6#Ai)RI49;+WCJvZ_*SK3IVsK0~_mXHx`MxEbT~6P{G6AW)CV zX1nS!SJtvBPFGibnpDZFcI^qf`&MtCzxRC!Pp;3ZmRkAE)^c50KnYM`{pC46x%ds5<9}>(huO9|cL5NvXcn_BdxjBB+t$ZYFm9afin4JfpC_iE1R&>t zSFZ1A&UXRK$&mSE@6*la$BU5>V-hbi|M+FaYD{vPNxTV*a)*cIZ=ZX)zWN&^%bq3J2hGpeltf2?%VfubEKKe3yrY(0!Uyn#iDS!r*hQC`q0Z z0n%nA4S&1gvPBT16RZ`AXZ^Q-x=~FL)7y%uwei`6QGJ2B9OI~B86_i}(vzJk#dh+B zN?Lx)NpLc;R5-0r!YOjLY8#&GpO$cfU7_VRuy zYCZ9%_HX_rz5+w@fT>sjBB>>1A7jIk)W8NO$3j7U`r+qH_0KZDhlq)|ILTkdB>`#+ zRJn+5Rf<&pw)FFX+qG-fnaO*h_BkLEvLTx)`J<^nFX-t6sCnl8`qoZP7Hgf0o=Y?rK?g`22gScyAy`4d! zN;@MAw>YpFK1U(nY5B=fDk`f=H z&@Whs!}D6=Z?wcmMaB9%M!~gYkLgNkg^X?czirTtdII&@;b?jZZ4~~5F6Qk}pY}G`@ulaP$luTkH}dgQ(cdrO@Dcy3?=RW^G_oMPz^7aD(bm$;dO2NH ztzhgkhw1YG2JYerAf&P$4EjBIYw4b>~Ma+B&u45FWyUuea z7btADz=-HZ#e!_2!b18lcJW*4M@YM;=V?DH{~1l@VfhkN4}j;kAH#}e>PKWux{bL=(EB8g6IW7#9Bk)V4+a8B#t zFVsvjWK-u9T{n{M1{cylGI=&iso>Xl$qC0u>wRvU5nj|z-OoKK(cP+v{iRLs>EGkP(Rc5wc2tAFy zXgS$P7ojkC!`vLWRvCNsgNtGBj-n=l1ZHc8YmNti?)iuDjExc&*goAS_v^aqh}UKu zTmj*f!Xqf%@?sy`lK-zYU(fh1w0v;A z+%8I_y?VoE^3vU7wCXfhLp%thTdU21#57;)e3V>*ULBoW?X|WI9{dvFA-{5+jrW~y zY!1KEtj~nGtW>vBd1hV&S`-hr7U$Lvn+f*?@fI1XdhvuchYz$hBULD{K{hV^+5Iz< z$4rOG+;#-{e=v|dPT|`g2LL&VewFF!ex)<&efz2zan-M#zEH&&l|v)YlMEAw=X1N4 zAfe}bR>iQdZfJP?5v4g&?(hHZ`2I${tUr$U06ZddZ5yvY#mzf%3_1r7d?ZCC|#u7VLuiNWoeV~*V5&S z?RT{$>)MTDn^ffkyR%+0qZJ|?O+FPJu5_7@!`zLYc#2lh*D5lIWLz6mAyfjwy^Js$ z;n>G6!j&rUrQFMSaflGj>JuB1>#&F&DH}&SyCp6>djTGiT5}6^ zY9VXdNC=!0lcJrJewGpFvJm-E7rA*U0aBJ1@s`IlANRPvhtP`!JbO^`TsvHq?vM{L zgK~=@tf_q_=Qu8byhy-u1OeRB5b1Qc5TR>EVw!dntq^*Ec*N43q?(CL*z#o8h^|PW zyF=`ez(@XcLu|EiV@|@{^Iy@$u}L#{7T%ups`$Y_x8u~y8yh~kf+0<}%6w(il5$`#N1pLv;AR4OHOdu{K=i#U8M zy+$U!bYmHRm!$X>aUY#5em9xTLsQ!^;>|j8<8YLZ;9j+B1zk?=ln)jg5h zfRK6*oy4bZaod3gQ+Df60tWVeJEdL~BwNqd%FPOG?6;l{ETeQ~SKIXCVpg3=UyJy;eCp%l2NE2I zA(b$%C;n-{4+C(p*QcWbhgtQz+f6ks1$do=jnRr!;_={2RCzU zr>kK)U1@N?igU{ZH|BlSvOMXl_AjVSmr`UyXZbeq;f3I@O5jDQHY!#l@SooP8;r*M z7dOJeMZyO?X&JC1%kf`K@I*^E;V-ABAMxMQoGq;4w+-X>H5IrBCkc>Cx!e@=ZKG!_ zA*=zH((~U~;aw-%g4*A@@c-$iaZa}{OxoODG_Iclm}aXa^T?lHC&t5<^ZQb-*+$2h zv60>*JN?h8f`jZs7o{zX?4P*v-dS|$>n4Iqh8pTzsnBL>%HwbT+Eqb17_PKa5vS^B zSbXiMbt=sBG_v=}7(0=LnFUEpcdEWoXFFa@qvK4i5{Cv%Aqva6Nuqem*NVOfN#gLR z3D0a99Tva^ZsfaT>8u}{ug$zp0GfP(HiD!v+DFVdf4;U#=my5e0-Dte)k~x^Y_)- z>d|T9%Od-V^azVeXUS4|@=#;Je~<_Ng=lE(R#J?HuSe=!scs9!!^Xg{#&4ZqUUUtd zZIeYt6yGghz9;{G?=<4-{YR6cQt-Y$SVvPKaBtlymMY)+il`2}Bjz zMU#{kxSL*!h|!e_-_%80VCBdlDnH|U?Q5xRUE2xXw(~Uqaq_@0M~u9d?JMr~QRGSx z7XVoeei1OJmW_>)Kaak2MEvas(?|IHeJjp_-(7DWxlJ9&1~Ij#U!F+=;9VIAP}KRv z=yc4>8Zj*I5{+?cqnJaCQqf;&MP7>1t=_jJx+*H`S1%y>gHz&;FqgU4NB72sCb%s2 z{t+K^`ALXJbgsrrX_=Pq(4d=~T)nMH7b)1853%w`0ul%27hAN$qp2iZW3PkLBXoBh zXrbe4^~@@|2yw0x)yiZMP1DOccf+kxB&|^7)>A*d;OOnat?RU;oeZ_gW$*VxUa7t< z3ihqQemiF@m}V7bJzaU9wS!$=g}}>Oa81^mEFT>>#Sp*D6NAksRvs~fDmjb4mpE2# z!4!HPSY2up$5=e$Fds?lQEsozI8evKVl0$>CO@gB>TEoyeEebVW7e5OqNAd`e#rty z_Qn91ldJ)q-_F=SqY4wPTugh)_i34aB367FpjWE?O1r`8#{`9Q`-eVUY>u}XIAGBA zQTbNn@8h?{>-$Hmy|(qd>`WkA+S@UIDVoRrwOr0XqSzvAO={H;*>o`I}TO zqsu7v&97A#aT+vTT#Nzc+X@bKTMgJZiDC8punS~4X3m}4O{`aHKHa#xD`DnPMa1PTOcQdJ)eC#uq8X_W z9e7LB=x1HhY8J%6IORUasfzi`JEQ;Erm{N62dRY@_5w;V((kx)`uywR(c%k zUyq=OU<|2QS|)^w0#Q&0R+F!EJBTb%+8GVYPj|zi3CnaKFFJ0n((%pdcaMg}_F72% z!6sI``g0#!R)ijAWe9P+uJ=dZb+A-rtV<$I)1guVNEnimQu)3X{mHG3p0ax7d7~$U zt+Yw%yfLNN`>X}m=ShVwnHoe!C$u{q_XAyTbbcZ~KpW8CKD)y=bh%fZqkS-aI9_3R zn~-pk)1M5*1pfS}c**CoN*t83UN{t$NdSv&im(KGUsdc-0? zXX7+imCl~*AM@7?gD;Kzhzu>eS;W5qR`_`?yPKr5-N~GLfG{De!>Qmb^3`8WsDg%0 zzFS`|=AKtzNQB5tqEulgsql)Z6rE{gzWsN4bG5n!y*tZvNtoNC)4^#zD)~YE=Cj_> z1>iXq^jFC`Tjl*X>}5|rcZ~`K4+1vrJah9OD%&aMV#qh8B4?uTs94a7x6>^j3c{Q* zT^9L9S`_LI&OA_-IEYlZgL1qij$UK&7<3#RNZQesVI8h58sochSTHm>y^dA)-*?(e z|D_8w?y|L---)`i3~azW+#ii`X7gwEXcD%TP8g3lieKS=a`lR|(erLSe1Rh;N>t>i zJ;f?&@Q-ie!RRJQxDAzB>O^U;M7A=F)x??|7IEqm%pLB6?MKc)$+5^mTjw~=?i;a( zj>C1dbun76hn00+?LA;=DO+BKg$d#zUbb+5<}p?;xX~k|%4(IvaHn#qUke$rvmMpi z^>$1v8>h&3DNVvf5AKRsED;`){<*<%M9wmeZ0vWPPJgN1@dl)$omsX5z2rdS5~r$P zv?nz1AhM5G=lL}DH7QPNtCU6s@o5CQANcb)?ap{qfw3W^9#M0oz!laay`z0f_Xp2R zI|x=1je0jx+9QZL_8dtI^n*5nJZ9;9@H%H;Z1 z)au;x!1QJJw>$#53o5)D-4`k>bVSnjr&#(!s%_c`Y0(-)gsg0~G5mVdh&@k>oSCHW zI{ey8YU%UQJ0tVL_xpPF>(b$~>L0@l`<}X4Hkl!Hs&9a z6D*cxyrtgt7954;3X&e*1~&z#FgH6CS=jbYI7bP@#r zAfXPNi=o#Z-Vu}69_mK#l0RV_FKw5M{X{Nj;c z8kDAb!qP9^_=GK+QOaP@<0W152Ub&-yTspFB24YT9ZC5TTIv94-Y;Ml73gU z%0njvlP|-Jo@hQC9NkY`T!F_74#M+0Rbls|?`_e6k)eaL%RL+)yn%Cx0B*OkaM3nV zWp8_R!RrOfAAFDZ&!FP?w5awmgbC3YT5@hkHSL@LChh}ESqK}`7`~Tp`h(MVAPrmV zY@6SI0Ny$yRMh-jbC7~5!u2AhLJdmdHP7&cOi%kOku^TstozzQJF^@c6=QOE;~&Rh z)E&-!jW(}owsSB>plRHVnFspi7Ar*rZGZ=hsSUu?Ia14!?skD5n^*wIJL-#g@=q2m z_g}Qv!AJtm?alziTa_oxSY@;3KNDfwtRs>xL#LYfgBS2z|_Tx&tl}3 z^nGV8@1YZ|V6qf>#{JcE-t-C|%<@mVa3CY+RB!)%w30M?h9KSCZytP3eLK&uCo6$s z%g{sji^ARH*?$PeY=>e~+gAd*=f+tc2V@1`Za|NOtv90^Wf2pmMI9GUq7h8+#s9`= z?*|}P;jHG<=q{;i?G`h0ThWOsZfQ3I247m)zdMLLzsTj=C9G(s zCTDzJ%LD7pfzslyYK!}%+A@Q_fKL6qd0&S?XVn(!w@~y%n(5E63L+ z^>InyzBD&U+ZQ0d59eNzRj?_F=XzLfxS|e>xTGS=2~|Wm$6>sU%lH^vME#%~amigZ z%y`S!M#XJH49&RLp<$y<+p?apPnT*=ZnjBp4TY-cYsY?Z`nXqI*{~Py4#e|Ni>b_( zBrfrmChm9EV`bekPmjB65xM*p{ov==*E?uYJ^f~y`WBc5a`vuJU}i{dON7{04AZ#l z>p9Q!)iMy>1lJS5t=u|2K0viGrXaXegR!^x=!9q9>`v2_Q*#Ketcx5ywe3G^8q@oz z^$B?}=4-3HDu%0mr>HqT+z=xrh^8~uhW&Q)!apuu5Djwi{(f9U@}#lWnf|B7I>f(c zO-(+xM>w|o6S+zFnaN+3^)J`if|Ry-i)?hVU{LQ-$uYwF;wZ3T9lamY;SMz-3In=7 zyZPD^cFZ?baFE^D8%0=Uq9T6oK=Yub?~*p2(`|Y(e4PCe5OKDs;{wWFo71hb`JU6f z+0gQ{ouTH$lJjXwzdpftRfMlU%}A8K*(IT`!!J1zS(c9?2<*F$BTs#POjOMJdh+S+ z7s{XXsaZMg&?jfLA|hd=I;;#>`qU=|mOd4A*Guc%RVZm3^$}dIQtL3>ixn81k1IenJ<(ByY8epa#Ae33`+fXS#rvp= z7kM7-X*8ydwR-KR(4RWBJ@`Gx$*bXn#@u|^Jt2yWhoagWn02g1#_=hxGDvE*NusyH zDT?({Nvit?p^ZPkfu=Yaa2WH!S^r5xve>n6a$q#%G=Z{``wT5fVp!8VXo~D4&nrxm z=OfK6-^+EC5az7?yBdX3u*Jz7Mx%Dx=^$A{h1LOa%zR>o)4AOr55E}wlZ&;bSgbnL zl_N~XGgzW?<<=>S;$VVk=D8t_P0J^I`%#vhbZYR9yPllnixOS0-zfV<_3p_N zuceLA5_Vc%M=6;5&YTSiOxaZV$m(&_-c4uMtM(N33b%$Xv=v%{%|m5cl4tFBge)mXrm2iSp_13hiuU*GHTV~4BoHEh zlGbVquY~f9nYe+k&~1ppW|7<=dv|c+?)gAuMK+##=4q_GYsva{m#pKRG-c ziGT9F`DVRn$Mi-2Q@-~sN}@_I`A6+4E_ol8LnaYqCGF)DPYjpOUd_6iOj}J~7h?Wb z=__)j!deEU^A_0hdR134lO0)Sqaw1%7L{I?#~XX4sE0Z6Ve;@z=N0ag7a1cEaOtd2 zrUL`zPBh-;N{S1WFT!W=VM$BO^BdR}dhRDb9xRRW9RC`^IcAiQ+VUzNAv{8USzaR~ z1*NAce=)l;#Us*m|0QUCqJDe>$D#rmtE48W3ZNVUG8=Zs_GodBHMe1{Zr5V{_d;G4o$&5=yDQrNurbW6 zvglQOwfXSO={_wWi7q4&I_AMM8O-yJdp>4}!%Ft3<9PYRKITQDETYl@faSoI2y!^f_m$r7Gxw0@ zh+y-U%n5^+Z|Hia@UYq_31t1AHoXdJ3wPL0pW2?V;M3&7mT&8q>@m@1#9vG=K*t|L zAYga>FW%CuBRqGeM4@`4f6jUFq$hsp;we1|$E!hq)SLg)(C5ENI7@8IzheTOw4WRN zX*`|UKkp06FMo;s5A^YWk!1e20;XvsEFp}xz;Vj_g=KkoRXWr&^77z zam(=bVXtWUk@uu+pJs%>9eLfuq6R&Dr=0x_X0~ zC}MnKug>54cuYN!BQVDExWUG~#>6`o|BCXCq)p^}sAZH3$2_Qy$;Do@A7yX6V$#@DPZXK2udY(LjOWDO2S#6#S{kINJ@5M%_%L;h zsO_`nJ3e)EE)m{!Hr)N#F1zOeW;mP0VSkv*9Py=7^?#HMh<+?;XXX{VdsM>3%Y>5L zUiv-+JjgpARjMcVCqyg#5O`><2sZyd(0-rMmR{E0w`c#*LQ|NK)IiVpwQ!rj zVBD8`1uHzj-djF36lS4@Z@EC;24RZkn-Gsw*VZE6{+9!nV%!26U-`NGV}uV9{g*n51XS^nDe{xQ#yJYv>&bh-QZ z2(h>kH_2m|up%^~3N0V2Hfm?ocQCt)yhB2dkf+<2*`@y#b~y+qm*X0gn8U}zy8R3`7( z3zGBN)H~0}c&I&189dJf7b_M5xVEEe#;sopf0ZI#ipUMPCVe7uuceKZ*9ZD$iN zkO-P8}2i(=VRxtem%$nOvL&9hIv1)U7Df9r|&C2)D%WwL-S=vMB|LQ9=&U;Q!N zESFzoV>ly+N9N>Mn*IEg04s8o;3cdy)F`9ueF}LP!@vVn-mgxb78N-LSeJA zf%n=`b|0Al(IDTqIwET@I)N}YNb#uB!?kDb>wA>UW@p)N%mq0vqQ0wSdDT1Vt^zm zb&+ISv_jNUM8pm<0MN@^-+zH!Saf(;4HP0tt^Xca$@gKL4*Sm)UlsOXVG*ewa;2t+ zvIz1nB^cFLw|4b(aJI|po%9olW_DHjmM)o+J-D>Duc6G{=CksG#)o9$0$L0s*R ztu(cG&h}+_<_{e15%n$zoxe=hjHh$V?+4KOc5mDp_js9&eTMuD)Y>Sq3|#Sj05mi( zqq9PK{4Rfv+(}`!zvZcAp+@64;i8QOH7hhYMP)aHWf+S5ok9n$3H)5A%d7TD9%|F} z?gf+^MzqWhn2H&EIHVnG&KzY$rSHlNE+-j`;Y&^znYjl(!AOCHw>vQRW;- zIAvk|Zo^|d9X|IS{g)%_=kQz7;reO-0_(rkYK+m}19m(v7i`|`eTLDpLFV~(s^wgx zTr3+5PS$*SHvXeCMGq}-IFYlxd1{N-r3|HtVX@iJPGf@J5JI~32iUrcrfE@(bGe`a`rE0=$4?IbKHlZ&C ziZ$6kMW1clXM}0W{`94|P362-e>Y*LLu_Z#)4gk)`QDRpp88yYsRv@Z#Ij1TO$0OI zATiJVMa^&|`jxb*GU5!`mS?=_C;j1Wy zBE*ao9O)x-;hQuMGvHFwP_>`{YzZ(69Iwv?AYz;sdNz8TQ7tw)2Dtg&qqp7$%-`z3 zZDyiqDitFiIK_Jwueq*sL!LwbESnW>W{IFMH^8Y2R?DugxmMOwDGyAS^w|XeM+Q|F z&uu_;J^f)L0^vAC?T#NI+pxod~Fv>m?xnE=x64B~Q)RUGPtG zc5xuMCc6elp=Oz2%#9!b#3Xgozh)DzeS3vMo;S!tgioA_O(zl%Cjy4FuD#Rt{%BupBsY3dsV|2^=IcR@13=s;u`9Yp?j@MPAiREP|6HPW`uCC7L?)0r z3W6(8O#`LhQL%57vt7O`lz#qHY^{+#hlZsS%8INinuJbe9)GJnqK8BNfoM!>MRJi( z5kmp>baDhH&0rk5%&SGar!q0ANYK1-KO1@nKB(AsZ_Sv`1sg?#?!bI$#?B>FEg=c6*@doOrbXq5`0Q0|18_qF|JSy8@^QrWGpF|_AV7DSMaaS{&JGibyqU(ReOpVG%~G0 zVL)cL%c!&-NybIjSP|D_$;F&HG+=e+crI6}P3z@#{mmE=*V^aCR6c8gMnL@h68fUn zn86o9@$(VmG5u9%1z3G_NZnr7B=Q10JeY$C^TL^f*h(>I64^LDTp=t zqRGk@c6(43Pb#ut^bl1d9)97NW%}Gav6RoFJj;cokB3M3A+=bcX2Uq$K~Bkz_43Wi zyCF-tvk__*v76oH1M=b-yeo_c{*+2C&b>Qnhe<%NiI#2!mlVkjjqM{x5?fT4F}JH0 zozn-gb5Oi^L4UDI#UoJ33)%ZlsUDRqY)skmcsJtzaBAPK6Iox`QVBVj2%|&7 zSBoZ;cQDP5&A{#GqgG}C>G+%GtKTI&xHk^2e)3a;O+FvysoK^M7Y<`j%GK@2v@9pW z6W5wH08Di33wFKnKERK?-s@s1N%CYbM_LA3+(q?*YY&be@iU3X6(wmP@{YN49QquN zWtn;Lky>|3F{s|-%62q!A1v^59mEk4r>=z2sUr9BJZq5qPxL%|s8=%V%44)=*unN% z-jJT_3n7teqK3Sd!EaG<*rO|==aQuT>7qJG1Ht1oob`jk8AAW5ZOJIf-P|9A{%{^w z<*2~@D)h5Th;#|=ghhMN7r54Rw-A0r4l4@d-DOjSWonz{afZ(EKI#V|+5+HI0X!az z{EnKl6Axz+;>97jV+cf)8QicG{Rz#dt}b-mjVvV&gs)C60I(OxS7u1L*BkV55#H3q z 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 diff --git a/docs/images/install_go.png b/docs/images/install_go.png deleted file mode 100644 index 40aed63ee69c04b7f2ef5db6e8c3b7902e2dc5ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 165519 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≥w=pNTE@1crcB1ccfOPW|M-$hLgMD`ZslOsehdw; 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

2D4xmWYaM4WOMS~NclcU71{<5H z+S0t!aO-a|hKQq*lv8E<^dgZVh5qEk1W2;NqN1Yki=h7*mvF&@@iA*G6v~a=iA?lj zi`VrG%V_8cSvzHZB*(d=n_)X#nJ0PFs_?;){pw(@*P05G-3O5G9z2dbbKKP(>;PGTTxBi3+2^DDb6nq0Mn8H>U;{$J1yPMnf*72^q;*`oIYA|31&2K(Od?2!kXEk;znyPchv^>8M z{%l6$>*r^C@5I!6?}RZoH_z#$#yAM(4&XPyLZTV?N#`Vn0n1@FHl}j1TJ+U&zgmeO zwgvVo44OL+=Xv!<+h2lKa{^Ivd4ssy?$?rUXR6%MfHx_%X`7B`vwbliotr|Q0mP?U z^dJHd*l&Blxw|)XGwf#d_xE>HTc$udGxwBenP)m+UVQsg*8k7PLOyvq{sT>nHta}2 z84}rlUWELct}+y7j`#XsoAs~1+4YeBzm4dLOmKn!wA=jWFKIk*8~@`coigkj+5fzR zJZ3j|&i~^l_m#o_uT|Nfndv{L?w>1}wd4KoGX85%|L^UF2g;|cFPcqGDC<;G{&iXG zlu{6Qcc7bLzbG~}HF9{{^Bd5Nlk@XGW)bD&<{~UJYQfbEX`!Q|s{;8JENuJ27(VE{ ziF$+>xm9w5ZX0K4RBGz-9{_EHi28yA2#?L>{Q!MYneHkl$fhg~%5#6PZCuLDK0-m! zdZ~q2@w=_I`30fK+hyeLE$m#D@@_yY#vQgkuzo|2`^DzOUG-DrZFdyEv2M*3=})_- z`()cYAwJm9rqU_FgDk?D4|Hwr@Qgynw^qNs(4W6V$g5b}c{iI`(Ee+4(`(>iI>f&$ z2DMPhrnLV;6BJig=E#;!LIjh2#B-x^SHbODEN+Ex+iwd=N@7+R5Bi6Md@_g=3-_Of z`L8oRx-V2#hD7QLm~k%eRdOjQsZzsp@%V&94yR8OK0u}r>(zoM*`o6>7O}c9LHzA$ zT6^wkpMsSY370`r6xZ3=LbU~zhi5Ka>oq&MHrm+>7;D|f?(le4cO1Yp5i}6y2VBo- ztTtUKmt4dz)sU}x(!Nd#bQI&ISX6O4n9I$V!4@NPirk$Ij!_DKq&^<-gY|G;rS#g{ z|LzsrZCAoBuJP}+j`p`<1ePQ;HuCYgJs?;f9_szE9+}xhX9u%r72gVYey>KgOal|R zXEx<1)-OpJc_;yEqC)z^MqSXYjNlb@ZE9l3>%7V`$-JqgFUAJ$$@9C~W^gao6-a-a z&HmdVTyPlZ-Xy+8#3n^&bHWy743ZOqexbc`!KjV)AD1C28Xo#>)tp>VkR)~Z{slv^ z6&QliCMXfvw$z5P6+5MR+TZtiSwT_JzXX@gzd*y-KOjh@URu?KOLLLO;4v^fD)xQ~ z2->qV$+*Dg&#+iMqpxA~SkCz;y1nHIbk{Aq<}t2Xg(}+gt1i`9-&|7%(Eb zEu26I2+Y%g z-<*_#p}6}{L0h^Q{?DFq7iVa5!Fd^NK^En3`^pMB7Z;D-W=R2!Ca$gR>5ia{T-Na4 za^sULBHn_+w8F?1ZSb8bU`o^1cnx(GS8FAwXX5kIZ=&RR4$ojJj%w|Wh8h7X33L9K zv8Q9o*KNI{SKfFooV(_iPm$686`6iJ*8H^n1n z8~6nj$WDnDnf9W{+dF z4eU_Ec|%+rgJf^6xnf>~u6Il5bXUHk-vvuI*66XmKbsf4&ck|M2>sTdO(CbbhB7*K zxKp$Kwz%hAMs}o6-w;L3$1pPYp;oIyA-=)ho|yQz4s&i;-z6KIKZmTQA18eec(@*%hBGtLz82WS5FnB`9PjQ4@&l@)pnN``#;(Ai?Vdpk*Q zo#TCzYBq3z%W07#ru*{2u~v}#Q!jqN?Dw$lukx1OD=hTxe+#}>Oh(b+m8qH(kF_+t4zj93M15C2uxt9!-NS1U?xVJPOF#pqNaiO%ZV1 zdoR@-uWbyczk?lPy7u?ZvQ&x_plk5%C+W~16ew)QL9~76J&yh__a#4B8@Or?DH#{* z9sSaNU_=n}BU;j1UhGffe*gX*5DEns{D2$*S!ZYSBRo2u3k+~^v=;08?yrD7?@Uz{ zSis8K*dR3DEUUPjZM<>=N_SAsr-8_Y>&d8hw0+LxHu3(U)Z!HwWvAU&2WnOSSJ9Lm z-Q94QRE;nIdY6bKh7{hl-h!`NiZ!97rKRhxfyxXLBiLIWQ6VkAO)2u%T+I+rdt*>?NuFOj%r>92|0BxszK_mvZvV!`cSS_(& z`=v3RBS>)GD@h`?JG$CVCG8ww*8M*g>-!JeZz=$Kim$#>R$@VT%^WaK8%1KnD~TTQv=* zF`S*9m3rJhueP>{Kz%;W7~_a(op;hc(?bef!ZLIY_f3V z(IV4!#ca7bB`ImC%;nUE8<-Z^nz-!MGi8|qRPH^1OZt^iXBw=8aP*jrF5c(n<&lvxq1y|l263kjcK;qW5_ylMJTC)E zP9}%pH(#-^^lFQ!!`Kv0Pt-UV_}qLYcGXI!#_z6OT7kKroMH$D>$TA?5w@f{C@+Q9 zz>W!gnlDr@_sd|ZLEldC1Uw zgnxj4HPT7EK7Pv#2`qAY{paapfQHNOl<=aC2BA;6av3}YcHDQ=lt(SWzZzfECgJIW z?LzE&{X6V?PtLPu+o*fl3~M!R<*yi;#%WNmPidlw=^z;lI8=zp3DXP-NPT!F%CXt< z6Dl1oc~;LWsTb^r6_oDaH1_+dr{Vdc4B!i1wOC=BaeirZSbclZzdmBbNBRC*cu~nd z(WQA^U3>W!#fw>%xqS+`$dUa|er~W4W3AUu`}5Pbw0Wct1!xCcPgSCYzI%7GCq?SjLQL84f7pA=x2)Q&Ul^skyFo-6LCxWYL9C@_gd>Y-Vg5|u#bIzKyJYa*EP?1o@4xK z&~>t~2%YR<{u1|iV_sCHNU~oa`%g6`(Alyl0Pgd^Qsbx0qN22dHq(AdxoilWOjUKn zVr~`a8%X?K`0MP8aD{+SwQLN=%*@jh`29}@KZt(_d&>UMpKD~Ki=%Emp$C--*5bPd zwHnnv$fLI77#tk3FH-LxWuh2wP;HFwY=_a!)Jr`|I}D)7RS5?W&j?Bg0y?^vj9)Ra zu|ojA{FN$-?07I*RtF(-PVK;Tvlp4R<-UXnu{B>VztZ#I>X&)Uz2oIYn0EK%eO_zwgBe4`w zZ~$WXdCk9i_3E(AI4?hcDFZ)y9!kF&y8&`q;X0$)RYwjhb&znuCfbd@+Z^HA6%zvI z%a+^c&w7Y$EuKsF4VcDyB=K@pu*91=5)aNqE>4FW3NE(=*VcM`85)2BDbT#+2*#nq z@s~h?P6sGB1 z0*Ip0&>+Fly#Lk%m>m&0)!K^KDq+V|9bMemzyj(bMls>AdE?q8X#!71B_7&{+*d&R(4}z4*y)C{LYG z&zs&;PI8NQLBA&}P)&*+SmE)7^Gr z&(u{VP;9TQ;8M}?N?I0CAU=C=mN@s5a69FPue+4CW?%sEU!$*|C`qnF-E&DaoWwAi zb!r3rPDyaeY=Y`wpYxmRmKqotmKiNVHNwoIsl!P+2czA7hu|@tS^>5wxBWsUGj8$ke-QP~o(v5!%I)C{Q^8CD= zZfWYXYRHMe0L3LHl9Ej6S(j+<#;cgVnJLNbIbObM86Cr^&c4=Mno_30K;s|QvRCw$=E5l(i7*TD1Y$zGzDa($EI8eS`HYNIO<>|Cw z4Hw}{eHLr~HT5!a(TWQ@&wub`h~YO%MU{D#v46Iy%GTnUrUh`d^?xg5wwY;)T1%v; z9ZRPZY1y7?g-pk4tH7D0a#KR5gWD_KV$wUv4qu#x`?6ELBE`HtmVW0B$;ivQvk3@S zSVsUK^SzB7i2wrypTfdS>ZpU?5o+fNt{OL1<*Sq?^X_Q1ktJu&upkRRB<*T>o-c zww3`42?2UTD2rv|oV<+<#TK7T(WUOkPXqa;_&{1SJ$OJVv91y&9rO1~M7^-s)f%%V zTvsxUV7GxE_5ci2Se)?Z_sX6^!omxWhLL}- zsC~R&*Z{Dmh}`oxAOW1t;YTvFd3B3gS7XjGCn5(OpV#!4Rc#3`Gc&R0^(pav>q&!! zH)pEBK}dV2_V@7U&(NU=`CuuIR8m#e2I(wt6Uc~&KHrmRgh^w{B_}cB1D!Lp{8bi_L;;zPsbX_F8oPX=Nc=M7eeOHL9j zK99pY;4@g9tlS)tZ`8iS{m4jOEIF4wBPh$u>~%qIu$oq;z7k==2LodXA&2nrQkT$r z#7%w3&Qw4hIC^y1%;dK=7NmY9wYC@4gD+zej6dJZ zan~MuY)UKzMGO}<_6-RJB#$Z^yk}t*YD11pVu_X*PEc;vH3KC)cHUWoW3I`J2q(lP`tVrkT-DNfF#vXVO21 zlvgze1k6@HdB++HryE%aklL+#d7D$1ZLGC~c>b*g5PKG+|Ki=Wr{z$H`59`@ojY$# z__=D0?_i*qnSRAK>D-W3ApW1`D^>(8*j6Y_G4xRYTKbnSNdEqUuf!9cXV&=4(1S&+ zES4Q~#27K5eqdYxJAuafRYgU`Jm^wFLoqr!RdIHx!XGm|GSi@N*`5v9CG(9*YkxW) zfG>U%X+q`0va`KwNMTgebRP&r2?+==zz$jAYNfs)`u#f-1;rZk?fYcV!3pI3=p81( zvz}7>n+)9z3`+ACcHJE{(?5y>qaJ+PHZg%Ys-{M&M~;D_3S+_UTNiM=a70j|WL#Pj zoUuJwNH9aA{jx{KX?;;|-3-L7g=i@c%NzW`?;P}A!rU(I!v~#pO9^vrCp&w8NRoT= z#zxI;rnNP#t)k**RHOk!c~?PLRKMU`PdR8gJborW;v|$}FZB5?h>MGhXsVv*>(dCi zm3+4>Y=R>j9E{TW@m$M3WVEzVZ-rgw7x;1{F)kY*&<0|iZ-7xcm)AN|g24}j-hkb_ zjgKE?IEsJv;zdV>bWDG-{v5ls*5u@P+xPE8t*wj>n@OXObyI`jHI|f>J(ifqo$&CF z$;gOJiVH&&b3ou>VAcjebPrOdCAFBxAqMO|z6%wp0w%Vm>Wqop&{;zkiKM|iu9MR? z2DW2F_-b}8CTP-b-MXc6?xjM`)|MGWN0({3lr7sT(^uS3SdJB8&&oz?Q;0LK^o=Ay z!dzx?bP&n#+j{7a-dv}Y$(${XAR|n9>CX1Y+O$iP$?BA3HzhP29`0nD7zGw;W)3;R zvy|^zgNCU8O9XQ$daL_Y0*b=#hF^QHj8+s{=4mLs*|h(5I>CeT{`kCYqxzDf>V(s8 zu%uG#Pk5)$^%`cpPD9XwXJ7i!M)Q7WE(|rk9ImTYPt$mlqM&4$mLKLr))i+n^g@+V zS1xLgS2VwkDp?Zs#>2|HIsLmo1ys_CvzP>}t#t*|d~ddNxR5ED`w?(LSFylGNikJb zsk1ks*rqfX`%+QGr19pB{;3Ak4x^~OtcPyCW<1qB@_3PJ&ox8S$0Z`5T{e5V*DTnit#QIxWkighVMk7!m?7B0b ze}+v!Ns0=(F%3Pj7WF@Vn4o%g!R!jQs@}h&Cf3Y(%@jL zuj9Vxo$ufRTIO;81Kz3ic9t z;B(w(Fn7!5o=%c<3_Td?Xn*FdOTju_gEDn=oujX%3SgEdir45ygPd z-{#cV#8VPAwfGuZnn*IPWOb_3F;%(Uxved$SFc_(tgXnM(unIVyM#+VflLNf;mj@d z85+XacmCFbyT;OXB*9aOiz%Pw?QDuz>s<%`VC~;y#s8#DsYYpbhXX4uI}7Jo7|G(h zzrH1NTGGfHOlRW8SRF*SmRF!WL!pfeZ}oED*Q|Z}K?bq9G{;qw(EG~ryb5nSseV|_ z(kYOao2a9?!aKbn~-)l6TM_XMQ2dc>Cu@ht`Z$0rS;A8>N+VCB=+<`go$36^-p`alpqd8elCSDJv6)hZkR|0ValuWTwtim8bt`*meB57&qD6Lt<_v9F`~eFaW?Ob5!CkdLC7D=i-n_X9Tes104`KhpP?IqfeABe&fa7&g(@ASw>1t&R79U|Nj!T-$jInA zzcWjT2-3T9?XXr+Ap!LVz{?zCp_ciero@c4{Eu`fDPsA#Haz&`kW_m zRuSX_=dU1EimFP1d#IZU%a`@XQ}g$4lV&M$6bAJ zW!)CNWN6a!U--$Io9J`M4y8z`^JBsB_066)#g$ivM|e0aEK0x0Bhs|`*aY>-aR*XO zJ_NO)QR-rRkbj1SWRadQ^b417+fokK-1trRL09{^+ATGG?9PwGW2F}kyvLE-K~1WW zN-Y1-Ti+XLQ+o)Yx zGGbtfhKkC%B_-v$%=71O(hNHZ?GS9sBR##Jqw)ojpY`|=$2h>9kYxf3=Tz=;vclUs zDJdDU3*WzE_ts^KWe~p}2{a&ESpi!_XZhhFdo>#;`{PHCZrr=4_bW7voDeI>Zg-jz zG7kZ@fB0m28x%H5)%;{F^Frvfa0q1p}cou zV#OQq1Xl`>k&z-0-#iP8O1$CC15PJP$TLuK_@OL18 zuZcA5zQ^QgT|G0-h^pb2tT$hMrMXqBToP-(q5z1N!;WcLfu=oiT$z^j6+@X8cUtzF zgo`0xvg+LtGs=k9nacbp<-A=D+<27_fBiU2ukwj)IVAzu-KcwwZtZNE%J0Z|lpzKk8Xun~;)8J$Z>S^7Qnsob^bx_-4KY=c9#YSd%s_q zs_Q;w<>d>z^nS*ji($M7`AEgC@X*Gi`r!lbd z_I>;Y2gD%4-|cXX5RM{?quD&@vKFo`&q;l_@sI^<)Oj7 zdBYiLhn$?87AO$~-`FtRuUb5VF;n0#%=~rkO9(pO3abgC1aAGJ{#_(MGa|oe9c$`> zr5msm0!YP_e#zor1dJ8L_Jf+Ezt%BZT}jzltJ)@tr|DG3MzpQ&vy_y+@$15$;Jy!m z!B9OtIX;CD3NZ>OQ#UlRZ=2dG(}4UnG*$PGT38?qjf|8eKl!B^&0X{yPC+Dt!8}qp z(d>nVC>{ygrkVVRFB^kIG1zFC;hiOLSmlPEt7RhBM?W%$0}ko&$w?+o5gN8!HrzT} zV>y9~yCuw#0wZ<;_c37!t>uOH=f>T5L!?A_aj2QO8`1Z@ePsNVla)CV@%G?AaUML9 zFG-m0u{E|$I;@{P!H~;)XiywkCquY%J2>=PZ)<0F*oci~T0SbVwX;r`oTR^o(sor; zW*MwC)``r%%@wLYjHN1AAAMDt*8_;l9MTw-@(BKrgtF9-Tvq6vqdiBS1I5$GvA%~7 z<1f({evSTkTY8daXLm<3#q}S*e1zo8^5pC9WoEwY#odj5-}bRTR!7bTP_7xD7{?}$ z?de~vj}IdHG#ZSEqQhDCdNKe!K{92>JWPsm^M#dZSZ>k%xFY+159SyFS~(uZH>`~o zav<;ne$zfC;42ZN2rsT~4Bd>Op-r^DdU0!`=gDt94q!@Qj-~y=;*&^9ek@?uk)DgA zR9BY5lm!%Sox?b6ydvFZJOzmE9n-vDxL_hKF7w@cNfdMnzL$-~qpPBJEl5x%82}sk zHu28&f)P~v+<*Tr?#$E+%%*B^c0maC?_(BNj;pSypY>+f#;WnRwzpmtC#6&e$Hp=u z+&RC0UyFU{12GPCuN=7U7SB~xNs<4aKt<1QHL(%~ah>BCf@oNwIl zFZ1l`%EJA7w2chs@#&dvu3a<`sX}&pZ?~?C_3F_aWi54pRn1TSY-(nP6!Qof@oM#E zXGw34!d6+J*NA3AE1Vut@A)bEWr8Uql9`1?TdA%v3M%TtVG_Tcg9Xn?C(aliEde=o z2tX=rgKamnvIMjp36MTq(Q?Ioe5aG`_--oU9mJkeMuM67;`m&vb`@RGBU-FGhIs{5 zzv>Q&teqemElb~#_fsE2=m>ZR)I#!%)`!3BK8Tb5_V*0a_pxaYJx|6L4D4Ui5=Jg` zV%rAHDO#nKMQAT71?)ub;JH%3A#cIjQL z@Dd;{YM&S-Zdw=sR(DlP9>68Iqbk(RI^nLdNgq6&uFl_RBsWzT`A+f1gD0JC@%neF z8%wjOkmf;=SbMa<{e;!%yfDXOWL!y>HrE|>&->#YY`09Mc>}k5@+y3^=BmzWCSN}# z6Isn;>F9Tx2UB6@ z8eUhggH94HEayMDkYPkBw5B@>F29k@B>@&8#&Dz^LGn+Fd4sPJ{%VDG z3>WqYn2zfcmFsexFg#UQHb;qn1jRVi$=)UaTEf6mEn&me0f0>;?Fn9!eqF&J&(^=BXjnwyTBu{K~4gc(X0+!Mc568GI+Mpvvs)R@s8Kk zbbWo-d3kj;I3XX11mm>#GX{XOHv}?!b&l(AVmmtaCJQLrcszos(+&JSBBMpxG5f@~ z+l>1qkXoM1$*xUy(n2iSGQ`K+hw-KyR3Fh4&DHykPq*ntCsgPCsMuTrzt z*9Oi20hSvsENGPMQPYSxVSJjNhVV1{ffFK-_Zcq+V%BV}o+w3MdvU>-#78<_B4nHw zXr3om{s1{jz*LF9-7}5+O@HUE_0A4s0L(}{S-xfr$dG_*BG^5uSv)%dhOr4hF$YVUga(>x;`n;sWhvaNO#(x7@fKD9}WhljZ@qC17JStgkk$JSRwyDV^WK zMPbb{{G!TXmV1Zse|!Omjw;ouB(~6Sti9lY8lF@8D(mHd%gm$0Qr=(_ez}Qb&7jWH zpBd%Tp-jYFxS;2aanHUO@I1$itPlvuDkFlYFTFDQc9(GCQd`D`G?rN3Q+;ac5a-t4 z$W3eIODGSk?*>}RdTY{t(xO~MX0^NnB3>UsX_Sua`GfaY8uSFwpp!yyjqF_52mwB4_Kj9JdbBWh0x_s?$T#BUxPm72nZYB%h{diF{|g1LulE z7CdzBPRrrMes~{Kj!(?{<0l<8GV|{$atuGznJMPG0>s(@I|~M<#yHh{0rBBPP$DeQ zr$#RA;=Q%jzi+hnL;1#Dgb!A%;tj`{sq{j_cN;mV88x2*#NKsi-ak6p z^|{g4-~g(7PzZnz!VrwC8g)*Zg}+waq3hJxJMw~@!PcQ6?Aa+-31}ec=mJWt)`>d0 zS%)p*41fI^t*=lU9H(>_M<-&_HH5c>n}IBxKdIc*+t~lXfA3z)=+BgS#|xCJivymC z9<^?l?UIXZdcIeC^B%=RYKZQOLd=Q+k6sMXBZIgE>cGYFiE>bTpwuRBINA&d!4UX5Fk|R)7=Ie`q&8sWKfP@rn=>okwK_eDeL z=Ks>hXH57F5*THr(AFhW8J;a0eDryXlzLtY2n%c>vR*Tdq90Q>zXjd8d4snxgKPM4 z`01Ggh6|eXBkd=F_#X>Ob4)$GeAE808SB52p(X|j&tG6nvh?Jalune~yODjVIlQvB z>2dK7e|gXQkHA;>g|Jd=rvnrpAyJE3b8apn$aVoO+fv5itil@xX4J$5v|G`g<}NBHTHUsx4b+zF6C#!zBv#S>Xi9zg2jTEg+w z=`c6y^Zonyo8g}ewR@@{7AS@`!_xo+aa%ailG;);?`X;`(Ux8-Gn`AVLq^l;CA_~KV2yYinQ=(6j+%Y*+)MpYb}blUg0h=4jnWNNARedfKtBABzj?C~x! z6wYio?;dH(Zg$#!sh%AAdJDq$T1$0*N+14L&OWf|@4ukU1aTr$BC^?nG~lZYlr&^k ze{35d>UrG)(SSgWFZ+B>P7YViA7$X?#%mA3_g&sZ8{A~Qf17Nj@TZ}X(cpOIKXnrD zA}_h@aoYu_?PH`oE9XIO8si(u$sd; zj{8gFsuVDlmQf+K@sDvcd!=YM2v?m>{`gPiH50~vyn2`Kc?n}%4MsKu>>TWaK%ji} zz@wm4)+7HD_-XK>L0~~ZRMjA~$5mWU$xNH7EN%EO zCwQn-+V}6@YL+HEN>@TzO+^I-(d<^5;!8^IFhEH#IXP)IH%o}9;-TSSL_9^k>M@oS zgO&`yiz9S)EiKd(_w0~>R=gn~Fw(^xVIjjFXS8`=0iio`+FA>T>?9Zhk_k?lJT<^2 zi*!%A0hF>o7_|mz9}*G(&aI7(rqH?IfR0G=7LkBM=D**_!zx3AaT#FK_nOZR5KS~x zC}uO0I7kpN6AFG;DRpUdIFS`qtuOrAR!{9|#Jo`EICU^&Wg`-NTb@$r%ES$+EBk|1 zWb@(*6eyez$pb4IB(10ia5vHgS7Q(6ACVO4pL9<@NJY%Lmg8^m?G!=74eb8nk6TvU z+smm_V@HT+vXk--1t_(-^Z?G?2;_{G zM|vQJpcZ_?>)R>`ommT1Oz{Zju*u3M@cg(e;DfulL50YB$VC9NbdVF?pw*X-vs9MVpl0 zze#{t!b{sbI-TQ9|fNsdMYb{NlOa{v~mX zze!PLwq=nMrcCmO@9Z`)`yJlB%rPy5yjZ&d1*REmoKM+;SwE*F3g}%xgg_V44yKZS z|D5ETK5~tOzgL$T1zD>{cRASD{8Q&hUnF196fc!qG{5A7E&Vs=K-^!UQcX-Ay z0gXY_xZukNX*>Zq0Qg`~1LW_jkBdPbh~vtyfWpRrEe*gP<96x+;+Bp%GdK->iLgh! zkKiEV{!0enj$a-X12>vOd0wGySLu)Nu)}|A0rGiI-FcvwX|Ei=C1fLn0$O&UJiqx` zGsG>Xdh*##IH7x^G55rxq@)cGk`Bz%EMO;#Y&DLEs>ruM0d#vC8Z|~0^4r}5J zQs15p%8~<;^ue;XAKv5FSE3JGB#7Jb2q3dEEq&Qvk_XMXVOMEB>95V*erX45gNj9b zgpw3+9?}i5O9nd7ry~HL-_u?QjTgLLz8|YpT^G)DTH@Q1Esm=%Z!?IY!sl(^KvF&S zm5^Y7+pvH1CJ4z7p%e#S$c)EfTL3z~$y8=`wlQoTfLS15G>xfo!`|_IA&*{kP-K%H z*Dof-m3dF&;&z^55*u0@hkW_+r{kMe`92)?ILrPbqqjK=O@J;nXyma_VTtNHCeuL)s|0YSC}j+Eg`!Y1u2(Jk7K zdk4W$L{piW*~SZtEQpI+YJ1{P(QpciS=6h!+n=~R;5Xg5$a7foMQA)ktb{z!j~+qd zhs)M9;#+fS9(c9s*P8RG%DP3JN8MU0_vI+{?H2n5APRL9ove@5@?Vsz~@fUi!}+ zCHY3n8Od8bJPJ%ar>H1KyG?T~%g?)O@2)>4Y1%Nav%U5|UFspsJ$z}b`Is}&< z(-WQ5o<_gP>&b%U?LY!a3`WEU^PZf|7ow2x6@(Z_F4f*Icn3pFY{qi?hBAZzMy2?) zLKio`y&Yt(obC5xnd#mZlNg=&4ee^Hr{FnNoz)}5$9F|+)h}NTxLy3l3`WEEha^rA z)TKf2O6hh$2!6@gSmBnH+Z?ZU)ihAB3VHo4$yBWIq}L`GsqmGnAN$MLD% z$0*7|OWat-Xi^OQ(Z_Gk@_<;mktQuobtEfQSt}SbyJ&In0LRJ3_{|mGN)I<%`$V^S z=<^>>d%FGitW0w3K0e7bF*fNCtq|mIi;R}9c^?}RN?uHG(QOjwJ%|q17TEFKRTV>{ zxsqj)|4iP{I`=I}hTAKOdnJov>2*LtXQt5A9n_zdmAoyjG|3wldp4JS==KB7K`f1d zx<6J<8@#p6EOVCRpVC!z-J0*nAgLWY&PpdzzKU#1jZwa#BG82AP|=bbNM3U&g8XSx z#@9{!)9KB)n~Z1`m3|GJrl25t04l$ik~b006=LLCQW7O11EN54q(9Hz{-kvNNAcUF zq%b-$F^nx*Bv_bxp)$Rn1nH#$0!ke^9iZrcPAksFhADp8a0572BqV={(ylm&2J20^ zMuk847T)iN#>7a2*a|Vv(``VqK%){1apYKaFbh(Uid-dbpz@2BG2nPMf);` z`rgRcoTR!sd3!LL6#P+bWW?(_>xEdPj<5UPQ5d}>9m_~ZKp}@46UsWj0)vAVAh2w_ z(h{AMi}OonW{^KJTFXc$DnxboX9OVEIp?!)S``!`$;8J1{YP>C9tD{EWaQ*JbBD6+ z8SkmsP_pshZTuCRfo&qAJ30Vz1G^&WP`S9cV8D>UdGseR^{|azA2KHkSfWu|=4%b* zi|oE50}7JQc!d)qi2(9th!PgwXTNCYp%(n2-`rF=+Xo^quVy2bHtwq+u}A)kUL;g5 zgv8>PG{UY{A*r@JxtB!rtcwXhn-Savu^45{yLUu^!MYtEYY+Az<~+CJnEOnX@Mp3B zjP%Hejf-Ou{Q2!Yu!}wU>U=;UjZfy?=UF(f5p!Qw(H-W>3#kR|9B@DZp!Zr_S}Hy6 zc9xNm`G8Rj8wx~6929HAQ_KZX%rJ){HK1>mnVp@g+NRT>XTEi@HjOkd;(}+}u~vsu zw~7X$Ql;=ycM|!$sX(_wKt~u>Us{TRv8OI%gZZy52l0W5vr9vWnST0xwn9>|ukGux z(O9l?n+HF>e=o8>hxd@bzAAcaKCL~nZ#5#p)O583{Jdqc8Qmp7PQ_Ihf19KqE42|5 z)l?efPukp?d|1}J^^EweE zp(xqkh2@||=NeJkA*A-++_ad#ogT0BSN*TDky!hJ59(~CR|(YnFD~mFt+q$bBfH5% z6SBz@cw-8)lg>w#w@mC||Bv($>Rr@Zj!0mHE0`DPCl(TX$B1Ni1#* znF}zj&g2CljJq^ayYJFlRLCq$PQ)a3JGIXgNFT)CaWe3Ra_Lk&UQCRQRo4_&cRk)t z?~LqT3Oms}8S+Rn2~fQA3ciw5Z;F23r|q#Cq|lKDvngknqw0IHsOqt>h#Jp$d6Z2! zu9UuMliYWBNikJhSHAi3C6@l?fN?iVygH955ixOQv@N`bk?t&O7lkJUeP0_hQ=){Ts6NI-)wXb= zuC{cp6B|$C_lPl9IqaR!wBxXtZ?(CKvWM4tx){KtZ_L7S{Q>#UhlGT3*v`s8D;c)T zqok~9ps0TzmTT9tL+6ht>n-)lX2=VZh?%;6it(V*a*2UWwcnmn6!^;=cno^Rg_p{g)!myR?tH(!S}oA#Dg z*yqherSpeSZIi)g@Uk|CGda$EI-iH_VWQjw>xW}lnPO~R=vob7Y%JoQfRDnjqYB1F z+}(WopK5|JN>K>+nU(^Adb+mtTv*+V06lp|b}_wLfewo!27)<83>WZeYNEL7_V#ff zCNZ&bB(*Rk#GZimA${<8H@t7v_;(K>q-+!O0G=$RXuyCFJAD0mYrn*Xjg80dZ*M9E zl?V!4f=HBOdwYxbo*Tx_bkq}h7rd5LWQX7c;%}>JEd@#3WKPchMJwX8ugjl*FF80i zcBB;i3f%e#I*Jax}DT=UZ>!c^tZkO@=)y6abxSc{HWrM+Xs$H6~4e>|WusL02i zmeXEbEXVoqC(na&-NM4)HLGc&!27Ll16l6MHHlOVwez^o-BjBXR}$hfaz3I@#s6e! z%kElefx2XpO7&#>r99!4+uO)k?oo;rE0zKNUrWqVk&e|*dVlDMaOAjSs1y3XT_``c zUNAn3?Rd~#H_;|jjY;>KJiJ&s9;=C<`1$vKC28uy**f|1*L7w?4Y`sFHL0q8*CKAw zt2u5M705mY0c!+urggb6Of&I@@qc zCN~!oj;j`XOVox!$dNQilSRuW}%A=lwjx>&VA1ky}q!32SuugtVi(RVBT!? zvuDo`o+Ky-TY(0-^&Jf_1eqRA1@Jl{La)#9cVvSY*C+TPJqR28Ig2Kdd>_Re(Y$Yp!ecfX`*i41%#_Xkhu>KuC8Mm*~^d)6++n zfYw_)xxN5iv(Dgeg}Ks6>%agZcJn2b!uxl2M;ijUmnNN$oSp4ckyidr$ETj8pUS4;vjB`Jq-M-y*y77ajW%Yp2dnwrMtp4{Hep*fq z1>}4^kqt=pbpCN5R-~Z!Kvms20xGDEuG#j(^&yZ$JZ<>czVO9W0_mZLCrHV(bZixG zePz(gMrodlRs3)6F7MvI-=ANQIz8TCa}0ez zY)l-6-}Bw(x(Mv9knYMZP>`2qC`&;t>of0py2l8e3q(n>3WzXaQtW!KYpQYGLiZYwd7-9z=_RTKDV z@ccVAXpnnwkwe-ag&c1~)&qM;oMYTL}r~W5~D;O>CCd=E1q3-O)LdU=jF% z6n$i*)0>D810~e=5Ca{bwrkL2&akDWHF0m<6p4Y3T}gE}nQXGEGQpz>lty1v^VR0D zQLykUv0++lZH?C%*8R&e%2aPL%17Sk3w`CQh-kbEuW$6uW@ctz9J8bEhU{0BRRn^g z;Z&O4IaYtJ8g~7A=7T87T7%+71V1zHB;)UIyA#f>9({XG?)vLlqqzE#!3S3Z#s*P0|-T-CN@HNb|qfkRV*&YOVls*5xcdwb^wfH5YtFW>t?Qi=ZhI!e@HZ1h| zx{h&k^=SFDf!xo>&RP2tLP^TxT9;e;f3(l{F|xyz_hd4(&)t-%xEWba;&VA8V%tw zY`p$}5+cIB6zLr)#JVZSKg+EYd=D9Z08}#y2+||Lj5rx@9p8f$Tu3OlTiwwO{3y}StFZXNQekn5rIMkpTbMVWy*nb)sJVpMf>bbyIB;?!y&xoSjS04ycj)YnAZtzQD(&+nqa<>kakcN#B4 zU`7KTXns-fDLDliG@M^oRY{nzDSpe}cbnYUxa*m1e=Yd+b#v7UkyKdI&-%*4Zf__y z(hA-|j94AT)+}1b?P?)7K#OlOAdY+_iiq}=@gyrY^0WT_Y&c7;~Fr) zK)RetW;VH!*^2NE#~s*DbX-6i)ro3fSZJKLHCA)xit{qd&1W3{hD9&%{`zH2VeHnd z(yo-FwHyuga!7rWyT-9A=P$8m?MdCaiSvdrQQpEF_kOchD_xajhX+53kAFA`#Zl0R z`qG|IF~z4ziY0((5T)4HgzVm@PoH20;Vhdho26%H1z5hnE%&96WoGF}$~}S32dTdz z_t35!N(OfKIH(t;@agH3M4OQ$AXGRx`RKaGo!(w?tgPIzEmh3!h!-Eb93{%)HrebMQ2A+B^4!pAW&Ld z+{w@$D8gI1OJ`m*U?=Q+7E_RBUoAD)JbJ{}(uH$SUzg*A zqbrB2QPGdAz|b-HnNI28sIjo-V+i)Mb+fte7!i2_WTRaY($xA+j-3}p+(LhNDfuPS z`IdCHQ~(cswlIqDp%_MzZB3%feXMh%)bzqM zv8H|dd}m+Q46-|`*l(4!Zo8&9G$E1Rym6RvXDpz7t_#Pqc&0mZm2%DCbtrL+(!7xo zgQJF(+*vWR6X?B^p?qt9K7@*0e0juT(4C`)4&4U0MCs=)+L(vKfM5>QbEr?pD;=fz#n9oe4uFTVu5 z1(rsCT_q*En~2xdL^jmX1@@k*L(d@dkJqKw3<5BT5{h+N-(}7jcIF8HQi=}2!yob^ zREz+>vKhG zQ2#&yFdY$r9HZ_SBdl6={T5oZ4D%uISnw1bKky5b{8C1gb3ZjB-3lkUU8k9?DBC3C zWAVk6#E6bJRB19C+^tI@XO6Vt9}ZA^*w{kshi>=#SoX9XjAb+5H#H8H?c;y@Ry)u#cVe$vz;iWC0|vh>K!$m?!g~Tw zLA90pwzCbbKU1oqQbpt7$aj6Huj}aG5C|PhkxngBxs^fW0^|fBMuWh;BYBtw_Y}g= z_wO*?fC;$Hw7(yk+SuG+Wn~SNe*7gz#-&MKMy6vZ``OxLX8AOo;x0hosxi3`F!`L* zG;-k>o+^jvlUTA3txNlFQxdS-TGIc0pXj9OzWfOoeG0yV$<9{Fx+WE2UB;`0ExR$0$6IyWVIt^LX2-XKE^ zdaSONc5t|>_cd#@t}$=@@nZ-OZbZJh_w6)>WyM}4kDDm~^rugwDWY2g(3tr4`N}L$ zZ`}OPX(D6%2Op8MU#uKIx+D;$m`TKF*&*A+c!cagV&>2-f!L@M3*1M z4zhYLP3`5_uTzP#A|5Qycbvo*Pch0W#Y=!y59}AmtswE3-Q7$=7 zjK(1HCoDvpfsqTZ+OQvIt9swDN>9ThZoD1po)p1)cHKc*{Vpc8Nc`~%^*8)hsIs1O zEnx@saB(FhnwA745nfpJmK>=u!HE)QanCDRKa#6@V+YyAn*H>qNH6z?@S*g(bU+a# zZVCqdx~8fh5u!26v449M%rO$WW@O>VP=8-2_AQfh3rjFgZ++$M&Q{mx*{(c$3^P_rRYJ>{CMo<0kE zCAP5dhS<7uvF_n{VL;=!HpPkoJ5Bej_xV>UvCoivhf94wJ)>H%&ShPR$B+a!)(t|5 zF!C-9n7DVuK+AvIk$wRGg@Xer2hW_emSQk0ipZ!)`&FBQj*qTT5D7W0@j}|k@166h zD`X}2T}V(ui~@V;a`<#r{`#I>-aGx2`_@>}=;*g@-(K9^!w6edIgFx)8=cx~2T{t8 zq;zRP6pSU9V=qL5L(`7{`|VFpt_`l<@a!*kV&|G>NH7reWvkDGaK>!p*$|RYgo3Ae zKKn>~Y2hG;J$7F#nO#Csq)Z9cjE4h#K1&*2EOY|C1*k;7~nGRz*3x_o_-UC zj3OX~CLh&lz1ly54_$V``%5AOx^Db;T}wTddN+#fFA+L-Oy80>Vu@&*ry~OOzjc?d z_T50TR4azbT*!WTvv^D5R}?4oA}!U}#Zz>mYIKP87EEd-vNJTQAT zG(0ru{-t}m_@fx&x(QGq%lSo0)?l|ZR9C$pA0UT?#q6K`X4^adBN>9XotBjqe0u5z z;ghsOS@OA)P2NgO`7TaOU*t zqH5I7VCxN7k-N8F*Fa>N`c+b08TtJ~p-}1-9H)x@+$g@|F0oF(xogSp(Jr%*7vvEh zH5stGkDjcDen=NoI+1bGrR|L@F_9p@H=@*(gH^&8P-;VL6&Wq9jy?1+WoZD2iXZV@ ztrw{JMm_xtYYR)rtgO;|ZX&SxE}k8%BA_8Od@2>z)qGh%G7^PN@dovqKCm-BH8cOW z7J&NkS+Q)wF9g1lmXUGVpN=SWK74z>w;5j;8Xo>s(ZCkrrh@ca4BUDQE;+f2D%(EK zhP$1xdS9Hr5`pnJr6!yAKQ)VVh^&|X^o$M!ZIL5dh!}eD z;D`up_!j`<+y;B8U*oyY`$_3xW4q-%fzYT%bU7}rNJ;^s(b2M1HBWu>M=ucwPpX(d zV!e0t-A=PjWk8TtB1}ZqlNG@+3a+OpFpny3y0{5Lx7`8G`B4tI+-d$4P zDm1#=zvk9f%_YT#1&t8JhH;R-=ZhnUz@pbbHT~LeWO)j=md7zRoePusvYIme#-#r% zR{@<+aC^H)T7FQN+qwB{v{_bR80o^v-c(~YqN}E){RFw;!d^Zr$&UllGG1b%2x~%s z7`D3pt4GSZxStDg>>Vn^(H?3@6i!~cUgxmbyr2xFFBWZy4f!_i!11Wz^4FsozOIp{ znL^-LuFy1F*JpJvup1>V72Ci zo&JZ1d-xc@QzQ$i$L&qy+2eHYLuXu5k&tL`j!H`vOkW&UNb_5d1P5Bp=#V#!7M2Je zvvt)?q}PUb$7VvyBjmY4f=7EryDBMZxBkauZF3V5u&;4;>98NN8r;*-K~e8wB@LwP z=~4{y;;fQQQ4wM(z!sZ*C<24xHWCFK(O?$u{~_$H!>anzJx~yo4wVK$P!UBM0ci*lqKs>qR#W)PvpwjGLr0-UpOeAlXistOuT# zFP>0tORie+O+W`&&P~Lr^8sLjxuC8G67QA4oTe{DLOK`jAC`Km1?U4WN}G2oLkbfD zX+L0q-xTRs$wqDU)IMT07ccV_F<#JWYFB#dy{h3&6GDmOrm2~I;ed9|?}UGRe2j@t z?E##X`uf+7amvtK0X2Qoky9M#D2KKh97L&JaH5<)g2@YKo3 z5B=}`7=-V`MuMN9?1JG*7%g(aeX23_agP%J*Aj%{QSbJ7b8Z{Vwl})wahqyPJ*N9t zqX+5XCi!}gT=pisnn;+Qjh^{)PTZGn-GF#nO6UG1Gqr|M;oRyEqW{WR;lDUl`n8@? zaK(NTeniU9`h6ob^vQ1<@jEZY#?eru{!F6;UE$^bSMeJ8r@sh$sJv6OIoL11D|mlu zT6>s$jE`qDjqJYMNejyzef(?h0`l5x(0Gg3GF&A7y9S87-|q{uhh(3;fA$bfTf9I0 zdW?@{gg&`>KmTO?x=L|R18k`+zls|?@E64Y9bo+Z%{=)Jv_`|PDA2UvafyB;%HB0y z>dUD9@EG~q|NaTi`+r~NhI&F0)pW$AOQ=u?o1*>qA;LUTme1NiAyi;oqem%0XXwn@ z_}9??8*fS#RUTe>57naDX5Dw?`mU7)q}T z<#hJ`hQcH4D&ykwKOXPz2x$6H;67^@`bCC<_D&P^(qk7N?|;3(KR)4wd?GCwhxLly zH&ic&y&Dw&`2fW506`xNsT-WXwEV}@r!XT!MHMJ`iH9?U_J58Jp~zG9B8 z`%idsIwC_zdP`AQk@Be%J`rjE{~AIH0puYA5{;CSwO#S?B%lBL5G!CHlpp5)NBt7rn8E{o%`Hy)f+?GMUK=28&K)V?K&xbTdzJew>1jWqkrT{qu z^Z)T4|My7HI~0)k+F2fmCmBT+xY?i_b;5u-`DYN|N9W|7I@xAkCcME z|NSLs#q^O!h^Oa$pF=GdM)3R1-<{(7@1vR0n}jT9^5{#iMukVMrfszU*M$B3ND^x^ zSyECm+q+#d1h5D|2uP!I;%muVUJMwj2seCc-+^Yj^+qp_P|gV)DkA3u_hQc9PWZbQ zeHRG6A+!}I`mK^?=*)8+H0A*axZ#{#pG0?BseOxo)Cq*hvE1SWlrd%0&JdJkIO_f5;9yK97oh)89&LctaEcDYSg{eAP_I{;u z<5qnYb;E3IG3bL>t;t*$>K2yp0DkF^7frQ zJu@;q3J5(APp(E2&KwU4YV!1phrskoh28r5jErY47|)&?8j>w^X`+Bbj8qKoWh#7$ z85eThr*22r(q!Z7!WrFeZEfj7+XaHKhMzx)AG^CFWM8JAiq2jT|9LkkI zBx{?Sn<1)hDKt{l(texs%K?ivNLF5+ZJ{eBBr0lb={k|`%kQrqD=Vi}e-MX-5qfb8 zGGyOs%j>|qYnd2!0)daqC{Zybk0ZNc*$k(J!9^3~^|RtcpSNC+f?E@`$vrvv&1i_=3)YFgl34mnGPGnGi|$-%1XHKh4pX7xsQA#fQlNrd#e z6{T9SSp%3KLm^xVmS;+xVYUO{KOMdbx?BNkKrpfjvUdm|IUcTX8p6Pn)D05-l{X;q z>g5a3+(?dQi0nH1P%<42x^-~;e(u?|!7pK88vAly;hHV#U4mQt4 zh@jwSF+EL->_QlLEfW(o2?-38_j0WujOL9Lb0AN0RVkq0<=qv9LOsm zV#@%&LrJKtywuyvt<{rs8G6JDRG)ao@x1YbWn`EEg+Z>)Yxm@(Ef@1^Os|@F8pz*P z_zZOb+t_xm&2VuQSNE2#*Fi^jcT2svB;e`XW$((=0t~NVSmoUXG@%>EtAoPANc}Nd zdr~s%ScNcJ9WG;{zb|(Tsz9Wj`?~3AA2Q)hPHLzeu5qiB85hkiiYXB!wkdv_?V6~_ zD=ciRH?L{#Qg{0OHa8=~eItU&9iF1UKl2I7n?Ty_KT05iO^QK4UEfYTm34|U3BatI zbldl@;4kI=I`<4ExC@0%ST^8TOd+OAi&FVix~a%yh|TJF_ZT0W7Vo+4Ps$MLJJW4_ zw^^J2@G%5&;bX}wiGt!`GvT{){s?9@e8ub65&L-{V|X|g9RPp|M(`^9UH^d5!Zi`W zFbLkY&Pg>rTIRHOSSWk>ZlXwk;ruxK4GuTj#cokGwTd{AXXjI#DZF=#UYEXRc71ih zu}{O}3;uu80W2i7mC}@c<~Ngq$pH8Hhb;wbsnq0_U<{`c2QCP^y!^=Bp*OLMgw2yl?#-VqB2ocze zp$}$jc+E6;x1T=E$;j|~t6q@=sgplOiXVPL7DiY#>aRGoTpU!iWD2{h*yP}_n>Twh zk7$OhkC$Z~9-aHJ(ZWgS6-4R!BtAj7(mC3F!fC&4V)ECoYhW^dt%HXOzp|>b2Z|G* zrYQow4!k4L){ConHjcYUVDP)aFQ6hMwIiaTw-+^r+swnyZ|1-D(l z-cAA!TCfA+;o}<+WuOcJ$Xw$@O-QxNNp1I#a;A1qYb$1hH~#muo{w%E#vVBaFem^L zv#_xdm)Hn~6IlYlz08_NYU?Zxh+H}#=69FoaUiR*FFdHveq`08JI-Dnn7o{p(oOhXy6oW|BW32e?;}B{= zb{Z9bR#w(pm}H&S>BkB+$BI{clCOXeo?*Jl`v!SIN`HFAjT`+KKt@1vGx)}Nnd%NW z4`zSg1LS@E=peN#s{8Q4m@7c{I{2#@f^1gDl`79BU25Drm=y1Sef^evfBi(-c``V* zLZ_iwy0x=2j1S97`hcHFKs{rpgD+0PiKSC>^YV{^JAFSpBFPVp&bntS=a*JJWa(Y~ z5fT;y(Q{KZ7rJFcNJZ?4PS3QKrE@H=3k9gN2C|8XOX#kaZsploc)%ASM-+B||LtI9 zm+jv`(#(EcL_xh)H4Wbez8QdALPG&btlO66PlBmGq%Rp}Y>Q~{za1`p_Gdh4cXzHl zUhi8t;18dL;S3<0iQd`N*-fBJ1X|J3PVX>=S1Z%Oor%0{hP9%=I9wbvvkUI?Q@H>H z3+43&();#?ay`pULTG>##eHs>n^`R*gqc)ujwfN(pbNHhAZlYwayt20f`f{JV5K4G zDL+{9GU$#&3st8NxxuZmP$d9e2pDI}m6w4p?1^HhUt0%$seeJKv|h!2kYx&E|pg+TPa+-D2 z-?$1t15kv{@rx?U5CYK<1qOY~m>Xc9@<~on$H~$8~mJq?d;j+pE-etz4|E2TFFQmcM<+cbOE_9J4fn8JuJs zT3&Ji>u|j-FuDL{oz7C0C}_%CgJp5c9DDqJ;v^4Gg((G&f_O< z=p$Iv?w91}ab>1ld|^M#cy$Du`IGySmp%Zuvm z$)o)wi?D<@aWEUhGWz6Sy}G|cRz^Sr_)RI{%5ThhWe9c^my{s=8XUp+kQ!$7C)T@o(Ri&z6FWGGiNodk1@%?(Sp;6-FUhzCZ8>VB zX$FBXv^n3id3Px1OlRfRTt2P68oDiFwO!sicrwFMf^I98*05p8~hYcmX7IJMX%mo_g>1j=#vS{h)`C`Qf zN;o_7i!{`Og;+>a0EtdhrV=5x7umyi=wMt5<6zYJ^&tjdiTUTK?%Dk{J~9Az!2cR| z4CwzCJ%rwJ9UlGxP}k!49Xudm@c0Mks`~ht^7q1m&S?L=YX?mCc_|Rk(NL~tvaHJ!kM`CleWb7sbiV#o5@c&cW-d>Hq+V_pZ!qdbnQJn*Ef%RAkTi)X7lZLI8{ zCY)4zD|P-q*g_nLzv>Aw<5k-&mR&4tqR6&HZBn+azV3Xh7Td$4eFa`-6CGVMCEY0F zEU<=MONiR>w3qXOW8AeFQ2m7A(y8 zjLP4e!QUJq9r?WzA1R%GSEf>K`lu_8&j+EMfdOk+SlCTy)xeDgxJk_wn|qW`gv*di zq0gX83$8)KUnzb(HIQfM{3#^IlzYdlt<=sfe(y84e}Mny0JqW*9~i|V8YWPkesDO; z_~PYD9Yc#e`>{XWm|BIFHJJ&}WwoVfhVe&s*BGz^l_ zJRng$e7ZtndTtX?`Wk@IzW$lUVwCLm7O~x*6_giWaCZC7rW^~93!0`M#!1Dq;Q%aw z2-^v=F=e-@!XhPCje5I`yF(znbFC$qMgmSI$Oxa zCkFy_T3%+!KZ*>3)-MrFS{}Idxf}?<(Ty;$pj3Y|j@uO|RL~|z&!esL!sNL{AmyErJqH>V~0pFt`xn0DrC_5C-_1QjVYjZK0QD1IMHSD+wdk90kNN=|_9qj-03 zVYG7NG~L)mq_;BhX{^FPx&7|}6P2BYSC%8pj!$Gycdaty+kkS)21dmxDV2npb1Or+ zNa;W@h7-%lcEdxm!WJdWi6%2^L!GWYLcU18m_IX!&hqVGCNYA5l#FDa6F0s;`bg4M z&E@R)Az%@F($X+M>(7{fY9MO}?0kYDm6JF6!lYD#mAM_4)6OmFAf|5#^gG8x>lTRZ z8!cTR#8Q~Iuz~f0fZ3sdbA07;T}ztN_ZfwKfvlXB+rKqE*hspbR*k^%XR`RGYkj-RneU6hzsIZy>Gu(7L%qSaj*TJ0W7l- z?v37Jw#?zw+{tm<|LTw( zn^hr3O_VBukmX)K_2sz$7D6$kSIBd~n+!v};C9X(_U-$~%vGxwM!^NSwG9*XfS*o; zZe83`2Y7cAl@5}Xm5#4QfIOX*o*r5r;fi+Uhq9{b?0j@ICq?grGW;`2qkYuf457y}*Ofa}8n^J@!*sf;=GQo{QMR4y^VnL;>S zz?ow2cG~RGM!0@9JIigKKE?SBWqeW&rsnGcw%+a8IJRb>QjGY0zN`B7ZBFAh5UL)q zrsuvWW8B~gJp0U?wa64HluiF%Sb%0SwUasC43qRVmF@I*8%k|cV5n%ily_BO=;A(O zz#b)QXwb>w^$hFih=?v^G|J-#1Nso=ARCMq^37uQS!r1=HEX#K@s(U$pFGjfKiHUx zR6+P@(0Qk`k$vGe=G*!ddEhl63*kRh=2PYlVOYuc=bIW1?FTa?mAOFZAR;>Yp5?mJ z!E6)|8B^n0+QZC?1~h*UTsCf}OmZ0);LAgXMKGR4!|tT(2Es#hIc-CK`TF$(4QBt6 ze{s-wO<|H?nYQt_jCJ=y#L+oX@S&48qOy{iMV*v{Bp*Zq+3mXVR{;TW`&aE)nBT$Z ztX%XV0~3>e-?wh9GYs5M&xLY-{J5PX5m)ZqocT&q{tiw0C)fE26a86!*fTbNeucx* zO%*#P!9-t$+VZtMJk{S`Gi!M-SUQLV(kgYcJ{cI7--QLH${io~JX{*DNW=9{zfsxV z9r1Jp*_^+F2NO)vUm_$aBSXRh>=W(e=0JU5qD9GeYbZF_OvtW8!#1q2pnXvpVpxXo z-nLa3h<>!TX2JWQQ3`3(F+O;3jYTMUfS*b%cgatn)%t;rhcr|9ZnH2;#}IZ2CE{5QDXc9 zzg>om{%qe^+Fu)k6DnCu;05{LOhNH(x<*Zo1`E8kX$P3Ez|JxoDVNrv(f?J&zOik- z_!F@1#eimD?@l#DvIUKyjh*fESGh0g&08y)|7gn<$}qHd|CnqcJGq-%rEY%z!2=zM zkQ)Z6sh{@ZhlibznQA5e?$>iMLSjK>_9}YG`P5HJt>j)>cP*q$1*;l>h%RhXBwPEc6F}AGV zYTvBA+HO!O*7G#WvoADd4@%2qP*FsXk7_Y)u4~I1i#VbU5v4HjNm;Cr3A}yF48)LB z*F8fpyX@IycT+F-1TPAm^U6n?n--BOX+U&t`z+`aAI~Dvz)W}duJXJIV=ec0%5IE`w%YViL)F&c3XQqk&(5#lauttB3raQy zq}&f)7n02hQTu3en}0gASv}Fw)^?X|c6)Hu2hMGv0Jjtvbbo~HqCpL;U>LV3L6R|P7&ly*}?UloHuX54_eVKPYp~RTzNMZ)YSet7lnv#3J2B2Xur0I$ZZHccqSg4U5 z;VQY16JcF%mK>KzMnNF|n~|g7E}aRyY|} z!z1?wKZ`}P`ZK)JU~NVq($Ji8-kT>i+q zSC+A#tBK2hAXc7vdZoARh15$!E1*B7_7SiokLoLs@Q&mPlxB2#PqEt*i!uN|K$1@?j#D1> z(e-bFtJ|j@m!S2M=tpJdC2O{(XM}KQA&B#+0V>$^{IVbPKdk=@UyZAB!YLY)0gt@9wHFFm5W`-JpWYm{pkyo$2 z)JjAYX%H_rpmiRne+f+!%EWSLA0KU};Ns$fVPGJFcD=_5Ep5-hfOuN)4HKzcC{IJr z!JYoYQzEHF^ytH7sf7o3K8A$_T7j$PQfQrs8BKb2MWX1HTeDl&Q&OuwZY?Qu zjK5E}A+MZzopD0o*iF_Xb~*N5jUiKX_bbwr0*xHJiu1bRYA*Q;?K<1rJsh^&%y7?*| zr;qsf{CLz(kJAsyGSlwc+S<}3QdV=YivU@or+JX%%5gm<8U?2zN)^3y?aVu2UyDN= z=E#60QWlUSmw%v{e+>eo`o=az6ya5!)bQ|dG4&Y>9*<3=6lqUEjs@z^Jdb$&Dlt%` z)S{t>sIvOdsL*WXLGihbHAP~OI%VQBdkzi`>y1Ha!iX^0v+1FOOq2H~-w^WLMY>Zf#}A_eq1eJR#`& z_or(8eI}RC&|E&|y_(%tkJ%~!t`g`yZthHl#JipoyBzPg{L=406`q#kU{a$rVMLVT zyQyga+s!7ZD@;P3MQ7qBucG1$`&JTH8wzi?G4I|c*xom{aR-~L)=Lp!nbrDR`f(iw z7*8||G%4v-qP%~CM=2ta_OYiCBYyBZlXx?$D+LvE$xH1JNa;3j?$W{>_x4q#Nom^= z$**rm_yF?`vQR=YB2Ort^c$mj(KV~kpQ)-Bp{af>=>%G+wwYPbEr|<6@;;exZaeAk z5x1vwcTYQVabZCOb^+cCaZ>f8MZK2?9fym|1A{UVp3nswmRA3+rabz(OGbuH&=YFM( zj9N!&+C2F6--5h-_awFb_U^q;iVEll#6-@*hD)Nz5}~JOO8KTNUk6?$)SUef8<`Wf zyKS?NbN{FYgYn=uSKiN$B%krSol^msZD}AY?P)cbh-n!bG8`m1+ep1Ctc{!C+uF!a zHXJHu!l&Z*%$abU9KP4U^)!Sx3%U?93`8ELx% zbAk5o+(l2{Z=EWOC2CNhZ{N(w2)Q}=U5<$aCY%!Bx(cbU@9CSk@iT_o2PhE$;E;Ru z3L8|L($ftrEG*t@JiOZhjob3_Z8z0ApXI}6n2$je5eowk_%vi%(M8;!nT=|d?Q&$icnU7?M;I12naHoRf?_INX`#Ao&-{$ zLAWFp%T5lK8^rm`#9m3i!is+OE64Wxs80g@57yevi@8}bB{&*-$4kq!-W7ocAvCu< zR*H%~-$~5M!hxCoICW%O@FP&u_%{8Wfx|t$J+CM9aCWq{w_ovTsGCjg$g^K&_dBTi zILCNR{D|Ne_^3tq=T^Qd=DZrs@csKa898}7@yE0rGvwp|*(Ed-J%3e0WdLVYS66Fw zrDSJQfj*+h0c)?@GuE~k{{5m#$8I11P0h6+QG|Ab_pHxyUn8?h|KQsQuX586sTSsM zW}?@mOzWGaDMU-!hh&uGUn-Cs_1t6;qN%y4#s{6H5B~nxuq1ln8eAJKYAV|y^;{26 z)gWGLK-)f$|8djA?KaMKSQ&(Pz#qC4Usa8XgG2gNH!3vheY!z6tIeMYBPbVlMuDtXOyX$9yX|Gnj^k4lU&3#CUF-36tWk_>~wLm6B2gB1iNA<;|_? zl_7I2;fr&R3F0qbzNj3uY(yQN9SqMEkit4^j4oJY-8#WKw4Aw=;nTitkFKApFE(?uN{T@Sgj`N{cL&)yhN)Vhzs4rw1nKgdAFl_P2=5ySpOiz@PzK&-l z$V~QXc<@wCpn+f@&!UdMGp2@+mX?-`UC+WL;7$(#$jcz{DcSKeD4u`$l7yqD)YjSQ z3Bf4mZ=T;Oy|koOR#rgxxk605Oq`TJCKegMoz4P&)4^lj%fM#FsNiM&(6-WcIbYqZ(k|NQaTTN$kD z?0oTOXS=o4GpU}A2yUJRZ@k1Lg_HB7oRgCB_d;EOg@Fq+rZET?D2wq$vhy34UJl9m z{P?ju!YCfW_jwy?`n9NTLY`hex*^>fhesPN?!ZXt=oZrc)wn@Sa^*Q35eEKmF}CYd zIxDQ#1NlncPXC%`MB*7uH#JY_^Jwif?^#${W?X+HWbkEA{qDoWr)tTmepoMFydWee z_hOFa!%^=W7^s`#E5?sHw7K|`qYkilA@?xBdIfMdaH;}K=1wlI76sm z+f@l3uuj+T}Ub#1hm_!N3^xRjJ8tA{3((5u>7JPz8Nazg<*h(^#rZ>+{i z=iHW-lG@xJkPHip@b~PURRqog7?-|UGw$u_5r&qW1t@NU70~nv*7e`VQZ?cM3vdC~ zIo;DXYacPyyG~4GVwfy1Lmzre4f89@Wzi4qJ2x7=QnLvTE8O7&aHN;L z3~NH-Pt1$3$O8EnuLHTvh-xf7mk-I0H?Kkgi_NZ!sxVUiF38aoW#7oc| z;0Y^lif5*!;E3XE%aI*m5wY~ESki?7TjG~41$XJ%+M5x_R7M~YosXA zqd!p!1V!XoZ&VPCa7B%J!U;TYT0CrWbmRb+(fdU0d7k+2*dUn3&HeQckf3)|lD~LW zb^qP#?|AWwZoltYCHy)75FW?*=oUA`*a^95A=4+co2zTIiZ3{UNmyvUfj#BoT57+1 zZFOz!_h^4hV>6U9-~3MFh%N|wV21SW<{yJpZTui9c@jeH2e^ZqFxG&WYct!q zh%~+C@7%+IyW$QvF~9vL3JJ*q&-6yfjzPEYS&8jWV?d709q&rP!d{f)s zU)XFl0p06qDA|>k+VeY{imeJj90l?OSE+7L8Jj(|-(Saz1ecB$0~TNm{dO!C$GJW{ zJbaUt0rTkSvd)H|pPzVtg;Y8jx#&G^oK`6e!3J_he>x7v>nJ^WSLV*F02+cSDJcor zA$HRPgG+9At>k*t^UGtxz6L^qh;>G965G<$lnjzS4=IAoMu!mPS;^+I+oJW}@WJWMlrfImq6*X|k~Av`%VaSB zCVgaUK>TC4I`_M>yS28j_33bt(JdldpC+9|SsJh`NTH*rCz-h#l9-Wk8Jw3s+WCH{ zDL7cKa?8GH?89Oaa!QG+gK zqa|=Fg3>5r2@VMFWYH5KHx7{ejA;Nq<;RcVL#C$LmjnF#VZ%YA>mJuCMa<9Uxt4l^ zHik^~3~=~_x)BJkzn5Bk)&^4Sho4PmuFgD_CN^V%oCxU@9l1c}3|Tx#xIdM8PGU6Y zNeEixtzWqm0nURYxuk4taCT(w?COa_{VX{6*WQ;9x)x&bFbVLO-JA=-(c_JL*2}uw z9aW4bzHDyR@mf`tyh?z7^UQOLJ=Q7*K-YNE(ohq@j%DkFwoHC=wbUf%ym+t6=Op=* z?~wGoM+5}KrEnqpylS%XbQX4-nQ6ARo*qN*}P*a5?y--230X2>?vX4&4N)i9_3t~($v*xu|Kg4m7j%HZ0&6B(&p z&1>7k=n$=M=Toq4h%c%9FePW_NDXoLwE9N8$WFY$dR0MhOw0Isb5qmY zK$bFH&2^E@O?fh8F>h{}K0c2OE9d2<6MUzmaBX%@Q!-rs_22F2$0CkwN5P5mvPAjh zClIT)bSSfY1VwfLW4E88`ep^-RD#nSoPWT6BQER0($~@D*z1e#RDGUQlzIn@y*GD_ z^kTmT+z;B`Za>ejYrz|WQrpFy7*9GH>$*H@Uzek6bqAt7saB+%CiD(IX~`dMjaHP; z$_U?_{FVwba+e@2pfe~TCLu{mNgmuCggLPOu&R$WMt&sA6A`UFFWZ{Nl4{PbAECV zVEx+C(sH=mhVlzvp;xdMv0Nxl3Ox#q-jq9i5Y+HH^)1)JLQ^uS3httxOwR5t()u66}1V9g>tZ zoR;eV`NPD;uHP}nkPm2RZ%5!gjTwCggx9u(4SPB}x_xqUX`syS75A~IYpkL?$tq3e zVLRlPs4U%+Al}C*^OgUO9y&0z$ID$PLD5$$A9&~L_dv{s_C1o&be`h6~PtwBya$2||wCD=b)CB9bx*(Z;6lq$ogF}q8^ zCM8aE&4FwTsg!kgO5sxR2&X`j+c~o|{T_(VGc(B&O9Op3eg^6D4YfC>TrRh>x*qcu zHVHm8Zy>1-y&mzvOK<_!PB4G(+al{ZTOSEE<5*$PEOMuP7X3WSh7y&nZ5 zI^euO1oTEKxB<$Z56L@R=jcP2w3wKKdefGV+t)rvoaa&udAcMp$-G`&vmsIL9j*`)&=g^@6+MG79O z;HMR|o;P_81z}nml9grMWY&5oUyd?z2jT5 z(Kvb+>wJ*pA;JE5sU;57&E5wU6?GbcBArgxS5-)g8i8-0=M+K!_#g3g=!X;KpG0+$ zvu^!8%j(-RAHtsTjK6S&pprB{S7EBMZkfa2vKzE)wE-TZQsyWfw6CL}aP9PfM)=8- zZ>>%o?Ch4iOG2#d?4Ci=`ZwB4{wwMTO^GKz*KPpNHWW9R_jXL7x{4T0#FUseK{r;* zQ0sk--8$4qdo4D4Z@^6kY_!w#jlwWIHwgsJNiKhgOsa zt2N^1et3osH@((k&IGt+f4SKW=S!*U9Q~^=QCjQXHgXk?DeP?LkG#u^2$({FWCIsC zY%t;5x3l??2#WD#j>yS=j>YL=Q{P;REU;owq1E_6vs}#ZuKw%S{BWmf8)?(_odg92 zYU%0*6)bi^wVUW?3}pkb#o<6EYcqNK)|-a3tL0N_$IOH|%J_s+ZHhP!?b+c${H=%8 z63WULI19>gy*xIf*49=l*nE6^?$wS5TOu?pvWaqNKL(EgajJ(+lbD(5f3&kO^K-03 zCI21q`J;W7aVKjZsLa5spP8tzrW)TMNMLuyx(Hp(JX+|0d^y0zEn6I(KCpeyYHmp@ zq$`#esqbl2J7dAGz^F_=UJ^ybR?bfd`g!p%Fq}GLIVeGV#?!6_b!jS>1wh>B%Tgy( zFQ|B57v#J!SdHo(Ua253=!!$Q=kf{)9wtNPHyIgm!1D1)3w~0CF7&UbXL@mBxXe*e zR!6E77kWq``Hd1>bF;sC{eyTwB<8PqAh6?>2XGY^lW{n5u3yH$5lBlfP6CvGpbP(1 zsOCRYJjd7&)R0qB64&Zc=QMwd3#GrOQbZakaPu~T%4`1IMl9JQ$H0Utj4Ko3K%x^H zjo>`w`#f}BjgK@A(Ug=B!HjR;K6P(sDI63TO+ncJl#Y-pD00I_e1C;qRia*DJ6zR* z0nLR&qZyI1dd&{B&szns>L3%$e>Y$ZZjnhq*zyeye)8NHSV&~=-9l(cpMQ8ZB8ZLC zQZ6)vV;u^-19=s)IKiOCav@iVx#nMYN9MynVy&+Wuxg+3Q1RGfhERLeRfLd2pmuq= zGlmbt#O*@#n_b&jO}@&5Kr%KeyGxhy^_JNoL&oLcP=qTkDe3x#xl;Ya<+<@tSY2hw(_ul(XY-KfIW)-YRBE!oi=TE?T9&AXNS0+#cClvWR& z?#4ZNQV*u;j~+dOiwC6JuZthEi>JUzzWVnh$GCrYb1+BMt2xNVa%uDGc%=;v(<@F= zXWII?tAKP(0!?^0vkb=%`;J^Sf5g5XnA9w^$2vb+j7o@~UXe|cxv>Sc8~~GxZsJ}a z>xNM0dUHqvY$#Sx-QHbU!GppoKQ<0zyG)IOx9~{4#?>?s{nq6JR{>>R>TmGgCVUVvXGBqh;V3z8t+ z<7_U}>%Rw_9Gs8-yofX4CWA&pQ*e#lY&RZdp6y;{$eI#Yg{u5o6|)w*Et?VLC)4NO ztneT|V}1CL*qGZ{;33DuCICU9I~phC60pe1nvR{5(#ynMI-s6_!wp0u@t`UOKJJW( zb{(&B{i&2ww^Elv`1QLapmwjJp>e3)EX8TqgAzb`M&BpTq6D31ETO3?l|nr%F7pxp zHMh0*U;x`cz}Vmp$oE^cw5Xu+uy1SIb7+5lQ;{;pFTP8!OW_&?1x1vA6N!$lCIE|< zEo>|wSJ;{*LJgi_gIq|8bo_#s78O9JkKbxg|GJwhDZm%nF+WpVCwh1mVk2TpndWiJ z_d(HmNRfz{2zAUw&7041dOpl#u5Z9=nb27X9U9ts#hDI~Pjchd5&j2YN4x>FkX+(} zF`1e+7q5HaI<7Q91%3}r2Y`qXcwKZK*oe(dI|i1&mxM~KkJ!P~8V{t9tk*^_n<(dA zvo`gwZ)&=%%%WMpM>zzc(;YE!0a1`2hoA&e)dV(#?r=|H-VbA@upCf!K0kC};&(b| zu50kQ>`+`>+#G^Ks@1ru9ggM}%2lg?`i{eW6}Pr>-zVSoKwYu$$lm*XS@ff1J0RF0 zh@PJQ{`#}f6HNSS0%+I{tEkOI#=9NgzK{T@;ME&vA~_ZhkScPqH5QcjEzX+pAjx6V z7)QU4u>{H=$u=v4n;q+ifc>a7IC%TI%#m0kn98eLLlfGIi7rmcr$;Rt9vpaw zK6+zgV{^6cq5!JL?=sK_$r2RmDn}@CVgbD}yTA)mJQ*B-zpHV<3CU-9)UM=Su(Y`H z0V-5p56FI~JOE_J)$dG9`H;#((0v&;O5D1Dg++}J1h?c&WW`2(SCA72Du2y_LT(mi zuL1R=)eyhZlPYQ8=b{L8oSt;~h7e6k-uCb}AhI;GSV8I&Le;c&{q9w2YE&q62hwnp z=(YqlYx13wI6V1iroWl+7^ne_aRP#1et8pgdsrQQi3L(Tx@0nV9xR5*f;?8|*DW+? zZCUKb>%u59hT64;)~QrE26Z}={PbIy^c!Y~IHBH?q!KD$xWm6S|O)8$woudjzTO zJj_y_SsUYwo@z>QGXWq-EZ;ejqFAi#o1qBH9#9V#+XM{X$VDkArp1G21Y&X>oQ@}_ zXTWbEcfT<-R6)=jLdiIw8Ws*nDy@cNo8d}*N;t@o`c9t8FSBx}H_xpuD;^#kS|SB| zRQJaoTjtGy%P^Ec^!6T~Xa0^me~$pbPq50#3Vnl39r7eN%sI-uWnkSvBzEE$=z-HO4G=B9)g9pDBhpg>nq}*~x*p zIRQap?p}>G-w2%1)q+mYd{#O=*|4mOEWzL3M|vx$*ac-%IkUN@j{Sf z;i93TA?%*dcV#_tHw4S{_D8BHFQ|orp|xLckc(s@(^}>scLGSYfjz0&RJQzM^U>cL zg3SyXT%|}~P9rW3fgC~5SsOsg20A%Cy}j z@~noa0bYV^JPw1?o9yvz0Na}LSq9by7BGPsHtpPAm!d#uQP-(j;5Er4i&PxK8zYm1 zw!<8hU}+(^7Et?L8vGd~KlSb_5!fFvTI#)dA-|L?9P#T;VQ#b5zs|VH-F4P)ckcE6~f#P-sM+{%_bh~*VTCJXsTkow3J+@Ada@p2vcObFfjLLG5H6 zwaLrxM2{r4YfxefQchd2k_^Zcs$F+$&~}6F*D!ZVVPrPFK7VB&|Ir;-$~?nEt`dEb zGN&s;kbePbndF@hcY<7I!~8qTnR;=Qa7}$h1|m=kOYFY_eer|}J8e@_+|S+4GW7ra zWf#j685E7Cro@oQMYnhPgb7v=MA+)ADb8n0l&FqRgda19enD|=%|c%P%O~u)YNb$Cta$)u*Qe6MEZnK&-5>IEUm2JNlJG7YY2q( z^oS7sG_Dw?T|OxN!C`3$DX0DZe){K~>-YXXt6Vkb?ChK+aH4mu?IhF;7LQ5Nx{wF+ zw_YOm4$GwxxK%q{(S89?mGi!V&*z<_z9n`v_D&ppVy8%9^$JAXS9v$Nx%TfsL@f%* zm&s7J2&LNCG0Erc@K0f3o@W^N9)uoHFs`4Sb4XX3oBHP{Jxv1GV9j|kCVYc?q=7ji zpbiTZ3DF_;+uh%+1^eO*v&YDEV$a9if$9TD3X6V#7!*Pmh$nR?D<6q0lDh@;Jd(r~ zXSc2k-QG(!M_(d;c`kG}`CVPl_%~Pmn#_9jEP0MrNUgydvIAK`&| zCFa|=>JZGnn$l7D=iJ}31eV_EA(mr#h3dNtx@QWWD@3XDnx4`oF zx6l07zo^Du@}Qj`6TYZuzua(2b@L%ALuc;)&u6DFdpI&r-DKX(3;mB@{jYBXR(4R& zWzqH$_qeNCo9goyRve6?pa1!y|N7A1e`)N=40{Lf(17exc!1X~j_CjSebEUx-eKlw z4{d}+akMgCFq6GWMdR0Skre+s$^UxqzhA!HBuWbJj(?hqyJPjfAAMTX)kRY5|Lc>- zQ!dz&Up`~~)*r~_|DWUd-w&&aiY$}01Xw0pkoesHe|w!25u~vn9Vw!fcTOW#)&1RE zzWT;)Aj*f0`xo(_pONC~PdBfW$i12gxj~@WU&27-trr*~+3xZf&9{XJaMirj69E^F;`|4BBc|D}tF8b+ zyg6AydygsjwX+dd-tDRkoQhOI>leNIUpX7YM=}Uc0}? zgfd?v`qGm8n5sJXWf0|T{ER?CPQ8vb_>lZ#(Wow?gkUiA*;qb5lWU&Q8DGA6dy#nd z_`pRgAys3F&Lx~sWV)i8fRfwH8z3zUopG0KY+glNh$|>4vbh}N>gm1FIm}Cx14|t= zV&nGzn(}JA9FUkX*Q>@oc!6$Q*muj99||!_!v=MAb!WTS%ug0wUc=Hv-b#-6bvEprmwni*$E` zba!`mcf+^mz4v~98D{33J!h}A_IhHKy&5$wdbLN1eiu00EBJMti^kTjsIp7IL(1Wu z%#jZH$+J9!odw2d+aFKDHab2dYH6k3V~Xj4VRQey(ycv$L;&&@hN>&q8xGQ~S++dtDn&ji50AcQ z1)!Hce)sN=P%!4~K_wool;pm~U;3b#(hW%a_+n?M3&dzYOodjK1=T2804W7cQLE@) z^6LoaVm#=1)o?d@^FZi;aw0pw`lQ|K2PtK<lW!pkU?J>DFg0B6roSBhQ{Hl+a5TK+0 z0Q&~GtJu4ElVFd13>51Fg&rXF-fy=y{jK?Hm^Z|qIePa-d z(g7ZpKQF02ROMa6h_ch1FEU}U^cB`D=RRUe?S78`tV>Dlbpc*62JG<6qHjaM``~{n zm|EE2Y=r%5QDHwJpX~phN_mx0oLc&ybt!M03F}`^O+jZg+`r;R(iWUuplQ3xyQybT zeL+rfOc!(%!*Ord5is>@T|K=90qU!%AK$i)2h6KoyW96M%D3?N-P%`WH&Jj%)9-lv z&T_mmtJ(=04#ISwrviFu=rAISLpuCcHdMY}+~DLD%_GMuJ&bLiFtI;#%l#OM%$ph2 zbVG6L&Zz6hCm|*Q;>N1rY z51Y@NsQB*m0uEQNDT+@6#{3Nuysn6rG2%p}N^@?ot?#kSz0-mYZ#NHi1|^6nHhz>} z$c1Etg|IyZr-tiyZpWg0x|AXVi|ez${}yshmNzLqTPpc=1TXo^iT%{HD@^o$F!Mb= zlL+jGobX_UY{<`2N4cH|TD`Zf6~Lt<7gq-`oPT?TX3Gb|Lm#LCdlI28>uVE+DSPJ} zW;|6 za22C3yHbC*v8eyjLPpT`maXj`O+f?FEI9JQE7(aycErqCutH8RH(-)3$Uh(z>`r&! zgKA5}vF1CDB2NSdpyUCCxqo&nBJc<$Q%2&)QQ{Cy9N1bP-x|PX{|+NLM7uUQ4HXC@IA@|5<{Ns4nBXsz@pc}+>;==ngZ!G zt}(snzGNTbR2?9qJKS{lCNX8cL3b^jkBC?h81fcXT$~io_tc!s;(&)Bu7D2^VRcHS z@aQNh{lFKT95Pof1_6mXQ+I zji>l~&RcEY{(`4bEvI)9)*>+OzshRWycw0WJYIE#ub`G2kj7?_wEi*Eh8v(R+jR8( zsy%R&`-7DXhx?1eNU4EmqEfK|8R3rN%`eiqy(v@^8K=|c-|+Mbo&AWSwfQUP=x=}i zTWLMJFYdjV@_5Y~G!5TUgr%L6ag=reVusEty>Ck&dP8f&i@Z{J)ignSj2+O?|dqGDZ(Y=o189n8#pJXh8NmcXFRzX)t^6^h#8U5;@e!jlRT$__0*vodVbp( zt_CT)K<~M0{;kqeJfLYqT)aW8c)PcwBM17mS(@h|k>|7NN?ZDsbL<}5G_J1BaEB3~ zkpUN4{Ai;&u1Y+_O6L3Nz6%~0oOh!y$+ zo;c=$2!UHIXV7_Yp?q_R6o?7{c^XdTqF2IndHT%zSkrleT(Ez-(_7hOsfGzd^x3r( zhOi3o5~U|&(~N_&rp{rd)Io$qI)QOj3t7b99~p-H|^$>}7f zO$*=|pRLE_Js+kP6+q=ZpFvoPQyB66YpiQIs!(N_1D4AYB{D8FW78ht?uNC*YX$mR zICSirAmWR;iQlC6=af(}f0t-sZzi|}Y~{2OwpIl^ZkKqU)tDP>!zHw0TysG|At)*4 zN#F4SdIN*YzOUQ^yF?F|Qw*Cv1!Fc>~JHcOv`|=(? z8BbptTEm^9@L%YRwGA5we%2B7MjoH&&{tC^tQnowt{dsN(eIz!uQNdUoU#uev_0?& zfa4K-_0v(0pv2$T;6ot_H!0~4SX6ejo2V6o!Thg=u`!tn@PY_cto$4S!RBYyUyj;6 zG~E+}vO3%{BGunA>rxs-CKJCwn<(elTmgzGUy8~I68Gx9U>)v( z&(}$x0UEll&dQq~JkPW=NzCn&HN}}Z?E)a}I{J03UIvqB5}d&9sy<>|1)9K$p}x_-4HC&s{TPw=J#`0#czfYk(6{&yvOp9k?5RDp@L?pKib|U0j#HrXvXB43W$P1wNsc69B zx6LIOE{eHBV;QVna&QySHH!;X`X_mJ-G%&-M__k_&xaDi{%-k(*b;FwzQX3&2(Af9 zr>7cLdv~^7mcr|z#CKiRko%H(ilKiPA#@TiBc-G3B7_?~rgE&cTC8}%yP$vy;;-Sx z#RW1B!L+jS?szuStAB%4urm{E|HlQuc%>-)xl}V0#M2I7brVf4GxLv%I`~7KI8xs1T$8oE$?>fA^Ht)L=FYgH!E^HUq#a$BL6RjBqx$ z^o}3zM8(C0Upzg)zyZ+V=3VWdGEX>feQC2!r$3ypLUru{7NBJ|7nlIMfK3B4L4Lbl zBS1mjfiX1j5EOB_S=at#`#q*aU052gOAwF(4kog|gD+={O=brK9tQL4kEbxmV2ZQ= z$jaargFydowbW8$thSWxXa9W~0MrBo2v&jO4jXiLaoMa80H6b!@u2av;B>qiuY>g( zf`3D%IsY&GfBN*d4}!yO52X@E#V76i1JDT&dVqR^3MggY1J8ENM$fmPns`GH{u9NU z??n^%0XC17Xla0>L>q(_^!(&jq}D9{BkpGrNd9grDk_>y&ZwNB_7EHzfV;q;G*UgS znl^yRWO)5wW(R;#5k;V(0bJPe{1zJZ<(|dSVufzvE)${(unxxT0CJOwXEqElo(9PF z0;^kJe$`s9=!6a}9oJ3yX*tJo$(I4h-y?XDI|+3CijsL#fgNPYA_hc9aO9R-IX8 z41+plvVW|UPYPj)Y;U5+4OgmM;33Q2v|u`)E*Kc6X*hG z56Jrg#U=xopU%$4*SXPS17H<`V~@WL2C%tM7d3!##d6`r`-GRTuAu><4gFtQf$pPk;B2)Wbc6k|W|ljo zG?|}z^@ExS(Le@@sI=%KezM9v!K;V_jo-Ia!9PhcKGHN@!?d8%j}>L+{Ob-Hx%+8X zPFeT3k0>2tFXBZ#CY2EA;)i`ZLW^x`uA3B$@p-($27DT^%sbtYpLDlt`Y?6A0kC11 z;NaC&KZ_p1iSwH&%Plk9$S(3GHB_woSFX(|1C#JVj%yv}3+BPGP$oE>X$+h&>@D)x zfBDj0bj=Fm5go|%rBAeSU}7>_4L#9sOX*N*O9j~8Kso-tT3;ozmef+=1rvb-s>K? zdE)GDPh+GtQ#;%N$gs(Ux}pAWjiR;0V}+EMSQ|2vaT_3f)vr*>q#YE{t~9y8L(Ck( zmAz@^^L%_KuOMH(QEE9l@nE>q2WGSa9sp3KvV&LFH#R^gh0b{dMEcXyF=7DzedG2F z0n$MD5{Stmm~``>{4SbI-zd(Zvz(Wj;!9VGu)1Ff|TLTZRJA7Jv^RtT|v3 z7%-H~`up-la%aCF3x@EnFaQNjlp;M92kYd+w78dk#T|Qnatz&V>cB>%jpGDe<&-4~ab!8&K1L#`LNP%_nHk&>QP)OtsrXT&yJzCSJZuM*w1UQ-sY!jzPA zXfnQ-QGh>J+$yuLol$x5;YCZTQa|+(IuS#)q6&zbLIr%w*@1cHedhkP`)HH!F)Rd& zdIseDKlR(6U`5@@%ehIGh-(*(vPlfC-U!g}I~T|H?v?w1!8Ly(9`o;nI*(77{?2t9 z2pElwEG$wZf9v-~5pd)QA}T1nj(#h%{%%i((=DEP!8wH6EnNbJ=x;`dlq*4<_+U-i zr#=@yffKsI)dj+a$0baf(D0#7+#&SO-3* zivX`Y{G7Wqn={_AhYOg!UAM?b8@4F)N^0M^xc*rI#!e%w2+ZUcQsS@`A|t|yUMf0LFF)aE zc!75f|29w|KQXu}#;10V%!h+q_Yz4MJ%;Sppdyaqto)6sN{HZ)>1I`=)X?_pGflb z&iVM zo)}i`F$wQ;_2>x*fuFS&8=}{Ug(D{w*S?gMl||6po{{U1%_nKr+bVslN!rheO@vD1 z-tr>h;(AbUwXx}JRM1N=Kb`ZDMqMNNY(<9TWZ45ZAUHUw7M* ztt}l#qeUj~Bsq^h;phdTBIIY`cE1({-wW@|JO?z2@vwh39 z4-{%*)J*Udb~9FOCm)dlES4)`**R;8*{qk)s5DyWl&7KrPzza1+tX2^NY^|nh|U8C zaQuF^DAGOvlJ8W4irU1+jMG(1K*w4HP=Q86?#Wa1_o|brM|IN^$%~fKMF)6vj(K?h zf;CaQ*>ROuR~IKC3O{^&uGD$?C2$l-@8p30A%Ob{Dw=h0?MLrEi#g;gBYEqps$z;B z?08I#jEQQbLrJtZM-=8}jquygYrA2b1J3d2NokiHV~_aGBx&R^xAI47bp? zuB&gySWQoQ#z>u>V8Kf_eUk?lF4B7qJ%(mk1VRNQ4s{w{*qk#SD75Xf@mnl0`D$!sO3*9(-cIuQoBU!FrPJjfr`+Qd zJq`&ehUe5U`E$ssUi9Kcgr~P!tYa@16y*;O2!R81D6S^jrW|`-mt-I&VBJPORvDJ( z!$uzO1YbbG$Tev{g3whXb$ZoqGoyB1lc6d~2C~8Wz8!y_HV6lX|HhKv4LtSc?|#c{ z5=}m#Fjk33Mb?R^LT>lqZS}a~vGqZZ_3H0=Xh+k3nlX)B$&ST|c6pQI66;Iy5Z<#9 z2`1x;f2`CuFbH%jUGAJ1NCr>eqU$>c9FOx81IbY%YPtXy? znsxDYudwXABZ}(A6{}gi*!@19sbInge9|JnaL~}C*xMY?=@W`pw!xxWD@-a51D40; zWg-&^HMPX9Rv#rL_#O=lb(XoPsnTYzbbkMEY@tQBE6fUdu>O63S0@g6_?O(=&5Q&^ zfggM%h!~N|#+Zf|am4}-{ovtQBNl-?Jg7iwmNjmHM8+CJqEl_wP%+;aCHq%ra0buD zfmR|(^6|5&qvNY2|zZ9#T0c#4!oPr!ko_YbKAWOvwJ?X$F~< zw#qJzgnOQOJGWRUMwG&{r2!5;Y{g@K4{~C@ zlK@(|jhDH`ld_zW?q3@^qO)%BFuiE9Io@#IK^ht+#Y@FY7uAi`)r}q=jk%Un1^8yU z>I3P+419QCa!7L};NwffX6-Q9l!D!b{6*{6>COL?yFdd+V0 zz_-6|Yz(FXEryjfBI{m|}EA9jU2 zT~E9WIlSju<)Gfo@LjZzJLE$$?UaZ7?zUJF@S*{WuJm#6k&041upm(_MfTc3C zrf1NnV3Vnuq={pZs-x5qWPpS4!)g3}kOy@keHJt8NL@j?^uWxh4cqI8Cn=S7$i+z$ z;d)!e6$Tfl?P-i(682heWX^pG{hRm>b)nd)&BpcVt5EIPVwZXKsNI9%$P1yr82K_< z)jJlv;2-Kq7YQo|X0|O%hYyLK%1x&fSZC*uthvl92I%s0LO8WFyKBYv5Kbn7YkR&G zc4TACPkIDpco+8>yOMAg-?OQ%UrB{Xb3`oSNrc>VOf&8%y1TvTY}@qtFvU-v!3 zuEqYv`H3nBjD(AfixcMO=jU=`GqoDdHE>mHEdRzU%)`G`btTxNipe1!P0|3gl!9+GRRMe9D!P(gapwL_2+Y@tjZ7{}JS_Gm$F;S|zdIKg=Xq@{hENPu%2_7b{Kf zjJBw{!*Dtb!g;;x>#rjT@BN!gO2WW0I6FJ*niuk#3)8dJB8gxL?5tolnnz~-b+0CAiz3eLD=b>y2oz-QC!kF& zuIt2tmd9B=?$pS7Z?;*k&#iT<`>1O>KwnPAB4Y5e=CPPKwxSa2#TJQUCy~I%YD~t= zD%Qkn`*Z%w2X|N0?QKyrJsb=NMBE-Xb~0a2I+e7WvJ>k;#x}p@mrN<}kPzcpT1ZYl-|Hm0tf|(YD@Rb$JV?qtrV`}F z!lIulJ6)w*Z(ef##3@QE1^!{Zoal*NTUK1WW!n~Uq&pyg2}^_N0|5@Y_u%Yrd=4y! z79@!e9N|dE0Rf?|;m_deeH%C;)a3iJU59p52~&&7Wf>={%@ky1dxK8AKGCtp1rWN5 zZm?0avnOC}bBn0Ea&kEyPR{aikorBGv|{n`>7-8k&Rnro6yC}3>F8LsnC8s)*8ltY ziY$asL|vV8r%JN2fLbhSwrov?POD&j&LmCw!Q{;lA#*#e4hn!7%0WF)HDN@7xy?Tg0^qpjg*yyr)WE4KxC zm4VlQZS(m2puVneP=Ax=HhG*cNoD}zin@s>gQBNmeq+C8!*(f`#Efk@iP+;=k2+&z zg|q2#Fz!tQmwim!=g;l+;OV*KE#aM6#5YyTl>KqS<5bAwgo%kMnaYg=Hl?k2(Ei16 z4FA%S+Za8G?`8}-n5Uq$kj`#{MlK@K9Zo2s?1)K9s*qT?0YQ zn051MCN~9rzLk&IA6dnX7kHFlqhJ7n!KYj$928C!m6@c>6|on^KW$~ueIcRDa5Ar& zi)iOlOa4&%-`B0_XS-OKNZ7r1Wsg=;&o|5aef^_*{M+z>Ml|@5=ku=!!*=2;NH4ez zo_MOI7cvi6?|n7ab_FtpE`odV8xVp@n-KQVLqGEB_@?_HW-TP7b&s`&WG-8!P!@k` zzU}A4K*BTz&-bUjE(~{@Rg#lqab*l+jpYtXqGjh<)$^V`%_;QwSB-Y?6#4lI)MeGm zx!(;{qG0egbVw}j*@ z^$xoM4}a&qX_&F8gXtO_bvcg2?AQ?4)5-fm4)uh5+~3u5(xu6(8#!_rO1QggA+@Q- zf{FE-!cDb!CIf}NG)g+eUEPDec=y#$hgBqOtlJHrtf>z0n5T^%pA_l%r5$l&@uS|E zh*PP$f)RQzvqM04h;q3nE{zeJkMZv&oqE&Vh{XwcH`qt$VItOnly>(sHFfgi^yH)@Gz=Uu;clGabQQ1V zl#~=v$&Z-|ueHdcQ3?5C*4NRHYG9mz2gE{+H90p;NZF`twFimVXAtbG52nwC8&7Nw zES(sv+8sXfxJnkkN=i)~D&I6Dlf*8K95c6^EqezBZO)Y&@UtS*URhXL0IkK8dSKR()>7h)p*gus3Mlr20l&1C zD>bo2uePR!jD|S|oE(9;t3W!}++zjn{_oo5r9GGxg#E?6Zra|^+Pc)W2S>g&0wuKn z^%hraHqZ(Ks|L}JUo;PzZ5(VYEB|C<4{viICYI6_7aM3y3%#%7Vk+>-|57PIAF1IP zX!>;jeaJ_^j$nLXIB2Q<4)@@t%bC+WCcEjV=tpf0$>b1!^`UQ6qNIPY(gpfW@yrZU z{6Ljsgo1P%?#WRODx2eWj%sq!XvS8p#)_?wGrdTtdroZrM{BOafvuqJQ``#8*QwOd zijyo6DLVZb%XA3e4T98>@g&~6H2nCJ5mUJ}geY~tncvusGSU_3Eia7~&qO*aVy^18 zpgulJVp>$bXJJ}0y<45jFijG$+3_TInz{C?FIP6-EFi?{m$|O z4x8TR)~9D^;2408WzJf6PyqPC(fRq82Ur4X%0h{|N7;KdX7&&P;l zx3~#YQ$R^E^AH9KFqWJ*%!Zy-*~b)idr>P#a9RUhz=jdXHhvNbzW=}@YsbLvv|Cd3 zcZ9{M=gy<48TNF>;!uhAhSnhm!OX}==-W5;{QO+SiO%Vn8N1t4z0btNkQxk#XU3Tr ze{S2m(~$bTmXo_Y8J5;u;Q8FJ(xk84mf8wvCsj8D`^Zrcsy~&8+@eP)-ko-gG0b2O>VeB)29put9Gl zg&T^O$uu6EP*RGht0na+nP)o~<9T!}t*(j(`r#i>W%u?6W$cRQR2A^^JI;}&&eP@0_O#^W!g-kLFke4^Gy=@-G#)oa zb0e)fXUO5caJpQUik5n#xOThzenuy9VC(kbVFJ{g?~y+KD>e62;Ia}kr396`v;C+l z448mCyxQi&?!5cSPe|y})-J21B@G}R2U>fhnDq3ebcDc+*E<-C9t|IVX}f`djErn{ zVb0Xj_i%R^BGIudzH6dBsn*QVP!|8+Ljbf0^x*=w&3{!=g%LIVphqAuYS7fw1cS}U zZ90Dlc>AbcES#v{Opr@Cuq^3NFD@>Y)t)&2#bFNLhpKxDyLKC11P3@Ei zMqrpuN=B9hebSl^4r5c5a=_P&U+*;#Kz~EV9pC-}wg4qHwYigG3f)d&QPJO`rVzmZ z6h2Z40vqJwI@q>_`zcHrm*2L-tstnHS`ZATL>Y?tvl?p&ga zse50d!lEd3A%jNq>A9ptT_gQJHLQ(MHDPAm!ot{iI7Do$-7rgBcOW3@=4R7;ZcUM~ zq;8#8HyOaNjD1pPGOT~Yse(jNQnIn0ZRUUJXvu_NY>OiuXKWUl`hPL7K8Ol8nI!Gr zuC*Xj1#c^aQQW`iB+p9r^iT&{)p-{^R0=JvChi@_f}LFgp_j>~oZ?b-P-DsT2YaWb zVG#8Ics;I;T3~2t=~rD{J$(hs!_7Vaku)!~q!rJ*g5v+U03Wo5ylUd14-58_a6v~0 z1_|!C#;$5wnR{k>`h4zjMD21)A1nhHGWrf2#2ot3f&4*8PcJeqYY%7_{q1&!*LHV* zXA3Q~YSGcrspIJ*${~&BrsNy;KIX|g#n#*RojCfHxcp6XE@?bS;qe%{=e|j$^$|w? z*xQrtEe=ve$? ztR&i4>FoTrV=HfK%Q(Wz7EpC*e|UHZ9yOEGReoTP@e_>nm~nj^o}8+l#6S7#MKz{N zQPtNA1I`fbF}j4jb51Ej0n&CCBO0)FcB>C~9~SV9pj3p_rC<)1j5B58Eibcw*k_Oa zsTYZsljB9#^35S*V9hBP`;)`}ONczzJrW0}P}m<5-xN4&49VhcB&iNC)otvmG;6)t6+VsK$KM-ILu*PQ$TLARF8tvf36Q%ka}3N)rvAbIDU zHVfS0ga`RN&Fn!zQB7J7h7a_1ygD@ zk|z!v<4p0^EQ6C{p=O|5&ZaUa{$j*_INBRLUVH;8#Ytf*s-z@mn++mJ0lNV!SjWdH zI+c*xt9GlMw;34de`R05 z!0_b@M0!=ESsxTluCTYYEo^nH=6EtU;DfyArL@ zyM1pWH}T`mCpCgs}=S!@TL_ehh zIFTgqTH?Z! zG!nt)02I7hlOd&!*9Gke?*%hB?N=@hQ>kot$jQq7OijhdjGH$R*fs69=LIK!_xU}& zrBWTy#-2Tkw26qjeTgeXMHUK%_<;zAQ%Pk!XUZV+HopA->Y_Glamq2$qQTW z1&vyU7uWZZM8D_f<=x>PUVe85g$Q~B8*;XU=Z#rjeo4;0JVuUjj+p|BV{V$L#LW0z z=Ecb>ug5(K8d`h#COVl++Ba9>_c=K^px*Hg4Mkkj(<`8q7)j-k0R4`!x6qF6t5$HO zto~tMTK!_6dDC>+Z?3AUUgo+*|LvP^VcHFt&{PH3r%L{w!z}2X8{~h~ zw?$OwvnRvGQ~jGJpjO~$L1ImzpvbN$dELXB)AF_Zi1UuC1^7PTNm!c%2fj_gF zKU;ZBR4aJz^=pBYqhve)yQKLG)$53aGJ6@PWGRpJHjRy`=PK<{ZN)TV(X-sFR!my)tnCc)>`=}cR6-_{|Vv6=@#KI6L?Xq1}7DC!y* zdpEnxxE^EUwE2Fehur;8;ts4$xyeVo}|yRfiu zXE%~wTe}cMu1rWs$ZEYTAbI)K{ozv1Qbkp<6FB83GU#!G#+;>7Gu`*&E4ZO%e+N`h zQj3bhfToJ!ZP~l)Lc^n{~nIAB@ za;OnBwwN>~P;^1V|1ahLsIK_eHQu!3RX8yE}BulYkp%=GlH^DYL02?P|{i^!o;bX>s8Z^C7!^XrPeIw!UeJ+g;0p z=j!STY$eBfd6k)!UUQifr(Wh8ga3{QK5rTo%rFIdT@MQbkgCB1s@0{a%-{{>~VPt?AeXF?( z2B$vdMfOp4eaUDX^dUHl6sGa=*|#9R71lt1@Vi5 z*2B`=JD>R^2Y&Mn4N!n1rPF^NUxKY=&Ea8=AGjTf@RWo*SJv?2$I}8kp9xnY{RbO+ zovf}42#EQxaP$S!U#gfRnI;!P0a9Tx)R1wdna$#0!5J;Whvio79}AM`wiTyuZZWBK zXwY_koh<9$^sV?0Nf%^pbLvc_oyl4pcPTV98z)RI2xqq0;T{i(f}rW>aahcupx)ME zmjo{-fo3txT`G4PdS>6YyciQpUXicFTvM+jXz*d5LYSv&&I0%g$+UAMfA6p+>;e`)_u(9q=6? zlTOJ{Mv=R|uBfe?prA1{Hi}G3%e+nmXvX~&yxu{LWlXGTPU|!n!T=e02?nJDtUmzs z-BCX9pxkKB&!`^3va(JCV|Or8nIAa5S6hL`?Y~UH07#E9Ie9xta!Klc0|jUg>4GMQ z+^%fN)F>v15+)PPLt6}{8V4D9bqOI%CiacJ1fy&WD8P;+Dk{v;tQj46IsjC{2Y9XL zPa{{9m3?AhhyZPo3Oic_Ty4vpO3+pTU15OG%d7rPY~7>LT8_5dTWJMz6s0YBCB*$< z+|qeHocHs|?bXRQ&6?=lo0`Gl%3`5L%Q93wyXep&N+GJzJ#F~>^z_rGf9Zd-L>8La z@c$>*OOQ)2y}xqYmeocTp|5G>RmzAiE{IkF#=JaOi)* zOR~izz@oMrR9AYF2B3j4_#_t?4~OiuRkPFcb25^@Pu!1v(fQ!F`hdmtcOVo7^g6WR z??!5XneE2L(NLQpbl=d_-~lr$YlZm?UFZl1hSSs2;8#>wDnQeWB9Ttx&R1dIKRBSI zq3Y}#liO%PN5_mxvDGZyFf}kX7B)0|XKK3lk;DDl0V||ku~3`-`}9XM=k;EHUmvWD zj116wWTIOC*!usGM1DMOr5P9WLjqx}`Gy?6t=P($Ohjc~UV@^+NH$TjdzJr7inIhV z2S*~YNYv!=*ss^G0e3AbC8fRGphqz@kOxECvVrTlIyO3nI8LL~hFS~_TBBJ+ecwz= z%PB7M#q^uc8sG25S(wCfR4Aotb*BCPJ;`CEs-=ono`*L&gklOBvn`;=HhJL`6_dih zLD(%!x@M>@lg!d9$l>P)z_&D}F}qe;)=Tb2;_Qe;Q9|P$3IJrOJ;APTYNYnls=r(0Vi0A)4<%`v z5gDI#CJV3cAU*@N4CpoMH*2~$44_J5<(tgMW;G70C|3gDm>f>Lp6Byd1M$9T8xzBK zOoC4g(S6Pa=4f+9`=J$Fc68@=o9FeH|&4oplMdg*1TcepBn>#xB|3DAL;B1{# zQ7Qi>!pY8I>;9m`U}sp%y`j?*x6^nA`jrZmymmG> zzh5Gh6c%Oyi+yr(^25WV4co=p^4W!ji{%Hx@7(kNrnOkAkvj4i#nc)$(bsRknvwdO zk?}K}?=D6ne)5716dFZZwP2Vdym3Pl`2rd?%D=jDgWJ3KSjeHv4ABJg35!*Mz>=%E zLmLRF9UW`BJ*enQGr;Jqjw^M}i4 zVqC}JIF+-lUy2#^(Nl;|4?k8liL5Oo#(RD6>tzSw@sLs1wtG9jE^)SBRhd_7j>Qef zyxr{XUPQ%#`S;=A#x!Q7-|Qgq;)b72QQ7Y0-zOyk)pTwLFD&T8A*s9L@9%f0N}AqM z?c+Khm-?u4ea4L{^ZJxt*`cx8&qqKqpo>pU}xfr?OeUrs|FOy-sJ|}vYMLh?WLH7Po5G{opHq)YEK8ap--S`2%0sYSy*Ce zHEQ#pgpcPM;{l4XkAVd8o@R;`yZ!C&`FTKPsix7WS=4nI)$2e52+7tHGT-`SzJl2b zWS>~v!2vmDKO&nXlc-uX3z!J(k1U}JG?b6!j;Zt3PL`ImEA9{Yhmg1`($13A4jVja{vAN3S6Pp zE*?%|RAN4$xo^3dn2>{}PtS^%H3<)~PhPKRDwlheijHn?1EXMfYsnVL7UM_2C02ZR z;&8ph=6k-hOYUL&rj?r6-}_>(FFx*tLeFJ>-^h8okpD5qy%iO7c=ekX>zEi{)s5p_ z@A2JKGCh3GVKg8JKazRDG)G+ixZl&*7^P;r$=vZ!r=V22dNaWhGc|p28}S@+)jB@j zawbVYZ^7Lu%7^@jZ~5IKYBtT|SG1pzJF_Q@l`(n$Nv^Cp~7u^X6 z$J6QQRA?v?2aKBdJW6~{D zr(h?gJw3egO79~c?TZt15i*QdV&s_BC>3zhusS>$xITn;kB*W4*Tcue(F?6%_hHH< zO$KIXigur8BkDqeLrzxQR0>}$JJz>u7Vokl7A%yuRLJ^nmwwu8natH7Wm3{?glE_f zHW6e0`wCKprvL+mZ5MH~{e-!daHP0AJ&T{@jdtg-&-SDr=u~bkMEOLd=SZz~X9CpZ zJRHIYkw8jXJxcAl-E$_Z^?TSj$XHI;Gd1r637B`$F2$GBJP~C!nN#RPYx=OBGoh3F z;Z&_P&W;@`Xx;eaOTrw6F3u(#&0*Eas&(Y3eVDx7qoB2q1LBnMk+dP;I-79O9$ch) z#v>Tet!HM|f40#xS8j&|qL%Y@qDk3zlQSm|Ew3eqj~r2*fUhg|@yo}b0G6}6zcjT< zav`44VH?xk2?`|W-O+Jxqo-D}85m+)TgziEYQ9hd^kx)z(t=RUYoe#ZHpyX2#%*Q zy8a*opvW*_M&q>PVv@YGx95x<7x5FEa7$aRIo-en&YqrtjUE7wCJ$_iMc=OV5LO@O z$|UVuG$11&Y~~~~-Cb7R4L03jg0!2|RGZ%Giv zUc<*rZrE&&2w`Di1v?XyoxY{kotg4EPbvoMyq4BbW0%lkbYm1!+ToqcmNjG4k)%TY#!MH?HjiJV59A+L8P0*20+YndD~q z0-gxpzYwQd@7Tyrw@A{LEgG`Zbzv`%?DjYVpk4Z6~#}W#Nr?HUP-_m=hm9@zqAVh zl%Buo&^rrz%!^941_o)t$R;oK0-?;A?yNn~m)kABwA}crRaR^i@(3$uPK*v~@e)36 z`XnwUAnxs)f^Z~jjm0Q2X(A*S_NZw~5_+KWIP^&dYtfR%#YXj8^3I7QPutWuBQoF1 z1-)vm=i5MHe*^GLyVBn~yIstimtq^jv3PhAyK%nErGcjyteK_z(@-s-w|y;Mggl6c zFWlY9)=w&ygy47($~LSEXsk`_H>8e-vw>hPD_B}U0vKV3K99+?F9IY)t$a6IrxPK7)7MxoNNZZq z93QK2o@uD6qM)L-;aRu%<>r#V{qx5jNx|(3%D;q~N%8SOT{;K`nHW%+KofTxq;6pE z8WkPgk=Fc>z`f@hNAsk9aE2(SVv@&r&X@X~;Ssu=g-LI0Gn4!F!3y;LP2wfHPkB|S zga8ZYV(3zjyTy}mg+MB|weal-xo;u90r&~E2|0f5yzut63l25E?O6J##>f&R#=neR z`+e{C&7M$GI375AR9xGam?eezMQ`AYFJKT8N8sRm86WXU4>MtG)*%E{{$`xcdhO(* zqlkKH@vd|7us>eLzr`>(ynq2je<)e!Oc&Sjfh>m7gM+RyksQczMLDh4Smau0>dJ$K zG)>Nvpum7C_p=f+%NKGY&0>AsqE>RYfV(pTaWYVIC7`(*m6&ermf+7}Rcq%CsxlpC z)PKD`|1J7?3E#!T9IZ8_w|%zvw;pfv?Zfa{LZ1;XqW`OA%i>wroBv1GSHM-ZJ>hcg zK(UY#5GiRSq(MbMN>Wm~ySqdMR0O2Eq(PcPhl+sGeQ2cNAkComg|Qe ztgO2U-}J%~PpdB{d`(=K!<8>6V+-GyNlnH@J5I&Ne{+uy^G$mlhmEx^ZR+S76MZ5; zp`HOb$!5%Qr!*?BM;19M|H@wgdp{pv=Kj8&>pgcdG$xces?f4|L6;L#K6U$W0Qh!yQtI*>D__F` zJ>=sh<}y1kIOz8L!P_pTiQ=2~rd8yZ#c0z!mvr&&Hl*sT4rOwJ`^vmm0sth@4V>JRUQvpbo z%1yHfCawEWzeguI*?oOY40O6bNx;a%-JOulnRT(>N_#U?j@YiSMW2n#b@i_sq@=2Q zXf8Mh&S+_ACAhAiot*MpU!@E(z0m{gRW41h0H9`qXNJr^nNnZ>dFMN3n`8Esa^QDJ zqq&MLyxI4ptgBKv)b{dTK>=&+;hy?ki?P<2pGY!v2)+hj%L}k2-}0Kat`^c!T@vMu))gvWqJ(*#QQ#V>)q6aA#Hc@Lu~O1bxMXbJ*z#{4K|i~Jb_mL-?S*Z=U1LC8+T-YYECm~=}xk+%iNMn z_0cCW>>2m^D(%fs2mbqFM%!kR+V^l6BD|WMS|W;P%f<()tjGaif^)atkG#4msw?Hm zu&C(E&`abUa6YLhs9;~QwkEvmfR+IJH>2_hV(wD0yy3MT`$gIlw@NKXMPa%jXb#Y4 zdzDoOB}d5=BHLadQHo}&P>h@cm|6J|j1$1-W!|P*YJ+m36_`@>wY4sZI@d0v6scB^I4Z(rX&+F5;#Kf_y4h0jtJJw_* zBl&GJlzAdZ(~9>3dlAQzcFBa;ZodSENb9goSRLECiW@HhpPfSEN#}L<2Pfoe;y8Hm zQ85{JgNfL!>^TCj8#3}cON48AvC>2V)udt{8BeUk#$li$1g4`^P=uO*sgg0|KJC zXktXgbw$>RLYS{@G`|XD&_#o*Hw3il-4%5!Hpf=N+TCS7CHJG_P-pzaX$TXA%2-dm zCBYpsPF}Rqmzfh9#u`d-bBUB}Y*3LavS4%33TR<^pI@$3ukD$|@kM4h)YW=>w;pX? zo%K58fvPLVwDl*?2=1*O2R0{SxhEk@AzfQX=Ub!}v-SdV{QKnOXJDvKrblzF!wDMv zdbX;7-Q`=djm<%=A!kcO{`Vk+*czPsi-q3i3m z)zz+cbEIWP0n`eSG-1f5_CLpi)WF6Km6bBFUtVCX*zA9lI3tuW__v4 z-Y|FU6AM>>zNi<*E!`=DSA-G*XYCUkBIXrtw**V9TyWYuxyCZvEuYMbB)JtElk~_#tvhGJyn(t_T7njil}AqXQlD;%7u;ov z^i8LEU&XNOs*?LYcwA;?(%j^6Qcqv>X-#tQ8-KL7(GE0_0gV^1$`9NT-evKK$32UO zUcICy_sd#Ww8Xe4U+}uuz7l{aDe-cU1xe55e35h{PnCD*VtAeZ`J`zSC*fU=yK55( zQ$Y9qo*boJleh8kKHbr%XIOLPDMUvs)$0|7_SM}(MPQHaENBg4Y`sWi zj)x|ED5M^?qO_2#j;+R!&awG$^~C+o;72XbtsP!-!skkCI%Ld-t7?p;w@9^p{CrN| z7W|GNR>tNP=Q`#+Ub=wz!QE8+$l{f!e{EmD)s=r&rr9LRAr47ECpH{!=z*Pn7t64Uq_9R7?)eWPmIc6ILq1SS?SOvM^k6J`?-0+zNf;CZG zyu_i*AGUk(!8_+a+P)7MG11bBcl6W7=n#og{e+CX!e9bF5jOO?Yxt-3t!V)_$)J}T zYKE^$Zf?doEcV+0F7)Gvx#N$K2EbRP4?4>eE=Jr0Vb9N~b=aK)p^s)jw!~aQV!hjn z7dAX-ZEru_ohFI(+n`uGq-?jP1o3}B?lnEX`PAbU)A`SR)Wot``a322J_~5{L+rS zE+f{O+w}|TCLU{wCpV&5?@E|W7zOe+qxAGkxD8U2Af2d-Zwz+<@#QaW^_UGXDz!)j zrS(Ez<^X@@w9DGxC&qj-V)^I}Zt(S&2`R?r(^Up7(2Z!qho{4Ck%?=uqa-x@i!`n5%yA^pY`Sm*!!tK2*`%1vZv+t%?oZQ1M**WJ6I zEOb8xSG)l>b?=*~R1zHs@1@8`N$yL^TVz5xNU&V?>a!vELsPW*KV`>Xh367C9(-Kz2= z7gPEF?~m+QtR3pso#Z?>g#N$3X*^SZFl!_1_7@ju3gNOWXNEc2?HJYuZHJ zp$qJ{nV6Oqz8@6Br~6R<{B-&M-Z zeRgtUoQZM@cdcG@6*%u%f;sv5bA8Bh?ap`HTPs3Ig)%0pMC9%}mxGVLKZ|>AqHO#~ z)&n^(@D=oh4d~`Od#BmvdK@t5zu-UMcW7d3lR8&+p?cafxxM`TMp5SkjirVfqca@Gx?^!lO z=1w8CkgJpDS-!8VAmb_UUmit*qwRv}Q+9^GIci(JJ~Dz_Y<|IgA^yFu^`-#_Gc)++ zgGJ%x11f@vM??@$QDz@F6`82@(P(3C3WaJ07r(#f)8+pt;>6MAJJcq4S^4=!$mLN* zC8aHU*+Yz4uHHb)mot8iuJKMnHj`8tJ>9`nS$q#@&phCRtQe?q`A|f}^z9jFyfyi` z!G9BPDJVYP0?((@8cd|YQjgP|oSXur*Z!+6hlxK`GtnP966GA0m}Gt`=O&Mdab=Z- zy-k?e%wt(o-$kG|SF$ASry0 zJAPG0FwG&X1!^9xqVWKnQp)~$ysUVAnDHfI2Q8vtz5SBJuvNb&y^Xl(tAJYsP*fjI zKQng69FOKVAg((qjM#G>6~oZgSI*}&NR?Y&sXg@0wks7>3P`&U8xojvSel(PyI7`4 z$uH{`$56Ae>;`&>bwaQy1?-mm@N=muol}sSq?T{CH6?RpgeB~|XEOi#yj~oCbT)bb z0G}Tt75?g0RWCj!UFzFvl8Ngi{FXVg)voGvb%f;_OaToWvMp>o5@s4ISaJe6jUU~BE0z8G zBN29U>&`0}Ji@!TF2k6f@B7%!eW)6&up^MpCC(W352~!JyxU>J*=?jeP9c#yWe=kS z@Pp}`$cz4^aS-C9U%*YuskcK2exbROIF_~OyD-VG$?rY~ggVNx9=Gu=i43HJoWIWe z87U+?HRK>|1X{+wHm!i2K#0Zu7$^+AOew~G%jTM@sw(l?fZU#`M|JZ`UQ_BwY*qpz!?Dm~vYiS%C<%F>5bKgBztnV_{kw{D7 zc^f$4OTPJ~r4i$vN5`Smm}n4jTA>F_0u*;Ngp%l+E8}?2P$<*c+Rbx`ZHY3nvRZjn zmbW0zmI`&i($c8cg#C`S1tdb<_SpotmAQl64XFfsY|uSe>s?1knwFlqd23P>;oAT{ z%O*j9fUtpAFRPJ9&MJfuV-J4y%DTIoU8Pp{AprScr+=w=W~MH zq#NywUT%Y?raOx(0YJU`^zB>LsB<4$lYYfJuR~p2oX*U1pVUi8D3Dy}lOMT1IbN9TvA4mlk-qS^vd%>B9Q9a%jY;x~d{K|1b*3+JY7i4HwIEi`4^!gSn@Uf>lL zBMjE3#Ub~mJ5#p66rF!iV-qU6r`(9mDPyVLxdN?-4InuUdMrX~lk-)M%ewGiKbG=7 zoFCL!VgB#g;rjG$2$ezWL}fvbV*hP_B~8x z5)~CjeYLS0lTWjPw4RlCVovqVojiH6yA^zM!x87up)J@_y8-SFJGOU9QV0XpPCrwN zhm=^2dtz@GDlD}aXFj=kA)0d39ECqH@eI-CW67J{c| zJ7oM*8@Zjt&piw|7EHWC%p~r|Cm0E4>+ni7!v$%=JVz#`y7TiSi~*!v_n8<20s^`Z zI_lo-?VNnHA$0V>A`zB@$T_&~QD$C|DtlWoac+*_5!a|~4#&oNx)*ybR>VAktY5+rLn|CM!g%Y ziQ2EGTfs1ujWG-CbW(Olvqxu7X;s>bR~~u$r9$&@aRQdv9G{Hp>Zg^M_Nr7Ev?M(X z%SvxWc*l?9c!G=q=*?o&IY^5LA#>fiyimDFD+&9VGT*k3KS5eZNQmPU&@UD?7kauo zUrrEDKu{t3!-ud0XOsz6ge8`vuJMy80-*aB&=+~U4y)})(V=NyOs|$qh6DK%= z#zLuHYau_}Pd5JUeR{e6)0ieA9;g8Th(b-gBBKt?0Fx!PeYYu5$lq@bm1(76V|%c~ z2MmSfx)n{)Kq>wDL@(gZ4;=W|u~5+>8Az_r2#en*$ghrmkgPr1O7i;E8D$ScI1a#{ zgct&qfPe=63LL5jn>`(GrKI#xVc&pw(mw?8yX`;YmzjFqT%;B2r8q3u7hc1$j#U~E; zR~kAxlpWlEQHP|ZXL=VDOoyQxXmFT)7_c(5&CG_=>@tk>S>3ku$}2QnE}~GV@~Ffh z*tAeP5;Y?uP{b@r09MICku5$HacPa-h*NXM`H-9IvK*bUw!J+E0l2KZyk%BF+}x@a z6Ei-irP(jvLiu;Um_L8I(xL1-j!m%NWuqGiQ3VwH~!;8!cN8tug>8042-q5LaTWrTU)!V++0p)ZsF%IAbvU3!b0#aIyw#U>7S(67m4|a zjoYPnp+3hT)W||w5|R)Tb4SNW)Ok`scWC3$#{T{YNLK{jkL{MZ<%VCoB?nJ=X6YSz z=4a2(cbZyMv_prthcEq1ICg#}8mk(NAuE1SZ?6J^G6 zvVi5k3Js;Ka$Hi%wV)BdQsubPI5w6rKp|Y|zN~Zh>}D;0T2=_;?Lm|r;v50tM@?fM zVj>Pq<~Kb3i0*xPeEQS#+r&RKIJ%5=IT{ERq%145Orx%!Vak_NrzE0+?KJVSb?_d+lid@Wi$|KG=QYDOglojIcU7 zWb2R&0S885+ZmrCA0Y z5!r%9)Ih4|FdvZhGpeZUP?ptB8bVl1Ss#RSSo=4~k1CWvSM(?H@&p*%XUS#F*Ju5<(_sKI! z1bktTg#4S3wr@ifb{Tt{B(jDzcPS{EzkbcM?p1sONvreG85yW=Su$oj)REa%U#@1My0y07@v^s7|p72UMBtMZ|S?Ic-LLPA0aW4Q`5)4Lg8bqnW( z6cW3=(gmLw*6i#!i_0(e-*+`dd2Iq%g{ma6R0Ly~W1^kUes{jhbY!P@mzGR`Uc7QQ zVz^nrQ&)GF5|?2^GvOQNIw4`EXaF%!zeSJe@x5&%R6q+4389CQ5(b83$RWhyH6G)n z2M?Zi>}|kv?ah!O z&(M+nc1MlFidj-;B5S|!`J!BC`<9!U+Wq_9@(S{O?_JJkB+FZ5q3o1CcXS{ZcoX|P zYU%fhJZUaAeEHhbqmbLY`_!sC^|e}w@x&$Bg!73Se~SpG{lW>~Iq&zka@K7(dh;~+ zH14irnuKLA3_UHiz8AV<988<6)MofNjA~r&5nWZi!t%(d%W?8qSl!0NAv(-{o zRz;@J#A6o^SSry9t?O%BblW_F!`T~g;tf3|m3(JC%}~3%B<+ovYwLjuJ^!83znq-7 zz?`G6OS*S;xw?MgOms|$#}Ki3+V0Md@p|g(%DLsLO$^?~W_QVgD;j~^+%wD1hOQ{4 zgV||nrxE=g+hgiWmubkz0An~s(XsWZx>E(8?Sg#|h%r|rpOTu!PaE}62Y zh|qO(L<*t)S`>jjwFyk#-rgape_{5`4t7ZBYp{)@9eM($I1han(a7#JSJZ+L`mn-d;B!wHmE-P_VWxP|8)y{S+LmR%%``RA!Zb zzS6$1k4L@fE^z=cxArqA8Id$Fpd#&oBC282OXsye(`aGIvV4#0cuYEE@EB+^=V-ak~utH|Du3r|Z= z%#Z1<)!;KQGGbs7sA=V;Mplc5()0+JKChoeRO0LqPUl~p##{o-(8p5O}{T#BJU%_ZEE`Hfu zK#MckZq9mlch_{GJMD1?Vmf9HVoo2Q9sbX3-emnidFq9~lxS${>^11Ow@Y3krsGoL#x;^S8)H}yq^cS zjA5anX37x&Hotu<1qUj|Dn?FO!)Di*nwEAkw`{x%u=5`%f@|02VN1tXeqAv6`Mh7I zN0p=NQUDhM_J2ReS$6^DmIxMPIaES>FS4P4Ob*XylTH(LPNNc^)sqj#RN7{+M@zvO zB0Ia*dTw7S7}^~*b^Qf@)+K#Dd@@@TX1eUj&}PhGI#A#b_oRvV zdn#`x3lrZUT443CkS5~;GB#8;zldaD-zZ<-*ucMWlno6&M9O^FPgFva_H_@ySTbyw;@Mkqx~(?7|#7g`gl7BMKn*& zBWVFG{5!-N`fSAE5fMrYvU%W&5__&S>>c{KT%0onL3`Gp^4RHWB6b*jcaqP~T&cFGt(rJ+f2)?6^i@ANKEF2{@ zWG*}R1$fXV0hI?57f9|ZLQsSL_U+Dfd@lxGUbXS|cm*9kSX)R9r`!l;^*q`P!8ET! z)vT?hVW?#C82ExcVW(*p8zR#Omx`ezsqE@^ z6n1Lxuj89cdTbB+1cw`N5IX<~(`-MG6qpeFSrvA5a{ALZD=I3m-{8fl`MyOgs6Q$v zFN~_;%a{35zU7km6e?&bEqV0eY1-@U@eIeMAqjdi7cP_ThgdV~>T<0ZKznkK={5~~ z!5pvgnr+2_y5`zQPKUa9=4ypn?*rW%EEU3HLkRQY`tK3m}G0 ze;(1^ZltWElMJP(DT@a`%(O%L&*mZpo0t*=%ge# z9~7FF8G*WQp>p~P^~5|j*J#yh-F?{D*=Hc9TSu6syHz=z;nuD9@)i!b=X=~%s&lu; zytKRy(UDXO@DB7WNj`X9Ey z3XM!mW`cn0d{2iE5^rPn$m*K1SpbOpol>~>!p_6P zW3%ft`TX!oZBO;?`OU7TL~uW|)RB3v>q18vPzA9N(^V}!e7Dl@hf1zmjRf|K0FVK3 zYI&>;X1sZOL*FS-hm_ZN8ClHf){fj;m`g-Bj`FHwfFSiG@-3m9&N%(PX8$zCaSuVn z#w`!~Zf}83eJ|{Ye!QG6=CA{6ILw6atu-ZX!WIVB>}`Jjr`Y8|(iD{6s}>8^I`S=P z4)m-;wXhg1XZ-)rS}yF-vxJ18>J;2U;Lo{OWkmA9E?wz5x$?Wb_nGs zmTZ(iZl(~DS~6X^c=h)$?vYZmKCGWyQa+#$4xyqZ4}bFpl_&H2DvraekC!g^m(_V_ zMzgn_+8INnbmE`8Q8+MjG|F6A!G8K2@$?K|BLm5FNdI|r z61;h0ear5KK~&7sgWvOpV|)|7(%NO8@072}3E$sOOVYuPer8Ge260404CDVb6eg@{ z&5)=Z&@;6$Qh&iJPtQNfqb3T<(=sfxzK&qQj-!#_wBPS1<6OXwlQ}e}_p2~l%#W6y z)(?9BNCX!oVm{{CkPkG;v$((Ie(%M7cwpP`_#IX$@euh?svN|><>U`vP_Vm0;OCo` zmhtGUjlAaL(ap2JUzl|LGEDi#*>~>8ms-|0Qd8EXB+vc6NPOb&7luUU>$#W~g&F2y z4u4<6>1D%Sq*4Akql1wd)a;-Ch?nEc3EyXBT5CBaz4~-BQTmAfe~H5MtT)B?r4>TL z^ysuN_41bg8BW9{!efGm4aqttyDkmhI=uhV;SCbF@9NFnQ@jxw(W*^Hk7LVnKZkN^Gue`Zo4G&PLsn`v&W=kIyL={a?{oaaA+x~F~S zQAk;xo_16u18D$@X3L*vf9Ds$UJI(5zWQAy0aW1XKWlA+z? z-(SEisoLFND??H`q_v4E=Ls93X`R*|*%=X0;{GMhRv`h4cglpwHAa=!wcHunLjC&l zY~vCou3QQ>ua}h13AGJOgkr-sjv4Q74x?$!8(R#X)YNhGEiK_!@IZO*TcGlO8&$*ftG}UuyB~Q8yXV?d&(z7}DdyS=@|Lk~FM;_L4d3WA%2A?%jJf z=C*BtFdOb)aD4Ge1iGx`jy`@8GHBkP=!JQL9OY&gJPeU}2C8UlWBg}TSd-mi<@bYr z;F+pDhNgo>1{zLjI_no0DOsidpPwEqso{jfZREUrz3y>j!YxvPr_~7*zd!t=i|=LM zx!06pS2(;r9m5nlzXl_gR(ySJO>RX~zyX6s(%E)mjY6K$GJs2~oL2g?`^-vA`%Fbd z#9GXm6P~kkmm{#wuUS)o!cWuBmR=9~6ZUx}#APRX?e>{eVeJILy`8JW9pfJC%Ft3? zK~b^9vd-@Ll`D^P@wsQS8PMySCXg#$V5ZmDs=PFGd-So0gX`9hWGzpObfVW<8jL9e z8+zF^VQC&6t!Xvm(mf&;nAUwK*ROzYYnS@6e9}Zb{)3(|Ld^kc9eHq?1uErgrtR!d z+CucE&eOwT`{h~GXjNp-q8$z75h1L*Zeduh5+GF~>)^m0`jPhc={3#+hcnOCO)2Ne znpog`+4yzShH&MnkvPGlYtpOVMkW<-~9$*|LK=~Crx|8N+vC>W}s$|!nM zL1w5=!1JJ-Mu1f$M=7^79E}=ONc3C}RzsK?F!%=vz2{r0l$4X}DlNhrb5l+c)lgcl z(c>USH%(HC2v<7gj4b4putAlx;1K8f_o?Im{;&>gD&Z`m;DXAN}4g(B$4a0+C>! zcL*Lmu&Ue0W4!J^dKau+q3bMNOgaTNC^F`^0bthfxGlsj_DCEp83Ee|T?pc;&`2h4`C5!BqHktjmZRE(=QV zG|jFQeK=6+_wq!JLQ~*Sk;7t^$3+naK0b9=iF|!^lwu`LD}q&}Qy0nmyY!lV9IH=F z)q4{VP>i_&RS}^Gr)>v#EYg6ChSc-M>~AggNcN;Ju6P}GnXwx+Bg=l=%;yJXVo=WO zX73Qlhbq;6OVQEMSU=#d`9P+!VQcU4P+F7E@lKf#ad$+UqFf+2)azAubRYXnrh!l@ z&dNUHb7OkomHt{fNxvEu4K>}+pLqgjeXJ}>A>?gmxmLOg6bJ;)x2RaMBX2>It zNiyOf3s3MMvvtWpgRi(R^BPZJlEeT)n#k|R@k*>811|R7_xhmb>ci{)A}h7qwGk{@ zay3_Z+Pq(!Mt4#M@xJs)vly=xW~pOKkzb;wjdeKsA|4|!w|H)aLVT#)CX{BxAqc!C zJq9yySSlTtOqE#+5U~9H=bcId}d%_Uji~@(rJ$FsFY_U|b@hj`KzFM~^zG zDOnio+!nI9bCq%o+Y(Yv3Jsk;7O83b+OmAYwW6xRWO!?7Z?m`~97>pqtJQhFn03b> z$Xu=8)R#O5xnQ023uHI4I=7an@q-TcfClm7L5N7*QQl&HmD0q-1Y5KeF~4)cP>D$j zRBi+N|6^X;SdA+ko9(-$x%G6D4<^NP?i#bD>v^LZm?{S2E_0K8;wlTW!DzL*Ril9N z170HOhM>0bqYw7P5|vd|Il{)7j6ObZ0s|u&bhCn4flnZrUw4?UtE+pX6m~f!*q6eh zoD~g=2Q6JYi=ccNst>8z15Ar%a~2ksamS0)t%k*#o-V$Em}$zBCr*4d=E(M{tBv7w zE6sg8GEpzV@2UtPfKaME&6F|bnyuq)O z_mp~}*P)}OL&1KN!q3$UgHYsp>J>j~+}Jz-%OG9aYj8qpMKSH8fJT+ytl%x z+_GloIuY(EKaZTf>hOUYqaaPMsSAFGQBpKMzP`=+9Q5?OYOo>Tk2&pctsq(I4h@yB z!-^cXtP#=Rb&8;h|0&3xRwqMLvq+ z;@{M&ENdWgI)g%Gn>A@rW^upe7hr{AA3+kjfBdxeIotn52YFNgF!^dbX*5)g;PtS?%*F7FbU-?vePCia=YH)u$% ziDuXAe|CtmSezpja8>LOG!lAlwVfcahc5HM2HmN|q1hA!Y>U*@S3i2ccymMX2BDFG z!Jz0BSMXlJpDlfsySbSLiG*(gULz0_5W|IFf}*oUUiIWTfsIW?7dN-zbiDZW&U#0r z_L28-UU%+V32&Xpj{`wtS|-%STo;*KcRrnlfTf*y10~vXcSczNNIs4Zb^9xL5WllV zSdvmLv?i2=OdT9-ut1f?(&6op%aogw=Rs#Wl;zhrQu1pLeGNMj6qa{M1NnZiqU_ec z>~ne^TyQj?WXU~nef3Mc&-VQ2#22&Bi(CT%9OuuS>ke0bI>BmNVCQTE;KQJ&p!N5p zz%Nb1o|eeGcr3QzxB4E6D-jVz^TL@8XyK1iYT98x{JHmnHEw2mB_^iBrMbALUO*HD zltG_^xTVffv$i3>$N6ivC|y%niJKo49nD=O$kr&$>46}Ibb@o;Xp9};dNI6cq0(T- zz9%XwnKLa%j%RLX@UyCd-BTQ(ZD(WC1u?Z=jjPKal-y+a4>M0)xM6($JT=|ToA-kF z50aSP(nBp{dT5Do;N@^&LD?;FgWI{Y)OT#6er?DriJKMo;zgyo_6*Th5i#=a!c;18 z=!jFPt1DB(70>Ia_~?;!#oXlFTn+^27_6+U#6v!5cRu?I!@1rq`2z(ILL{G027CM1 z-2LOHhkSfO;KLmHo+zU#&6)=LM$4=c9hXN;_IITcx$Gp~^ncJWD-(bm>>#17%+dXx zRPn0<2j5>1b69Iv%*}ZY5&MU1j&6^eH3gFP#nj^el7y_#ozDei^l*|vG1jGK`k3~T zmkqkXgK@gbN{Wi9nVGjS2>WO(nnHP2>>9aOYU|xVGJ$O9jp*X+thjQ*6#81H+&IRZ zWs9^dqL9X`Ak+`@(C+Rw?Rs5b81hEUGhUEw@iT>R+~X?L;#7*I24&o1YBg1e`bkJh zl`t#yqL$FvNsi2QSn~{l%dq78jert)3 z!|(?;!VLL%%BoybFP}^yr|0bPU(;<$?mfXn1ww)_S_QyPOl6t?g|e}A=Xk_@xJqk& z6#wpB5`ku1IyHo-m$uqPNcntunDSc@l6Ru?BjgT?$UWxL9+1lLs6C~nZqTXQGU9$y zzz=JNEn^@*cy47Sf3_|5Nlp!%{_(dR$REkeYQKw#ASP9f@e_k1;?zL6>bdiv>iYW? zMnPojo0}ykUz~mYTH-Ek%jl@|aG6zE4gedOz_uP&Qo522vE+f=x`8?^EkC*940d7- z`=Kk|A*P0Htsi>wf~jDqY!q)(Xu>^nrn4(W%)%f|%qC%B!|~SQOW|jO02u*N+-I7v zQB_LpRgZSvk9Q&!jctVZ^o+9MJe*}nX|6ydSXG0fHotwxc9s*q7gS75vjIdEx=8u% z`3vAyCIHAiI^s&dv> zp-j7~eWcP+Cq?K24fS@REZ(i;E6md>eM`szF!tPCly|YAr2Ml3ySAao6|bDt{LM1X`YJ zs^R_3>Xqgd8qQtSE_OBO*+r}oGED3UDmhf+<`l5K{dCfL$U_JwjY_+9?2MzPG$^s<&W}hi7KljDvWoUo9;4<(Cr% z@!S-!X#Dotp{~(bb#x4eg*<9*7Bz&(VPXx#B4N$NHhKWp$%bGL_2=qk5m2LtdA_^h zI$`6N#`&+oCmI^R3~kjUNfP*>4@_f=FGsdNKwN20&qkw}5{S3W1+4sZ^$ZYd7K5sI(*gp_bDv{^})r617A)1WXL%+I?qByx3Ob0JYTR*7{JUH z{bOTpWP~68`gNsjAw#=2>oO#t91nJENV%O0Z1o=ua?m)lvEhFxMvi^jh; zUGA~_rVi?T&B)dQ3&j>0oP+DMEow^IJCtV*uJKTgpl%<}Owh6{oa}NlALFGEyr#3*b1O+{Ezkv=y(YjJIzm<%HY&*ZBlW zu>MThxTmt=D@8T`>r7yr8!2zWo8Ac8e@)JdRA$)S8OZl31y~pBu!4zHdg!q~>V@tQ z3diH8&-rXNH=}-FOVh>(^LypSWI_LQ(M$^#pu7$A#Y}*x@laTlEw@FPG=RkIHh*=f zMs$O2*IOcX1TgGWkGP~wVKb~fFpU5hRH0%CR@Ma)$KX+i0u@GAlOcPH!OFh=1geI{ zM%3<{mLhO_G)P{Yx?p=|6R-d%tf#;40t^nUWxq7nZFXgAVRU$T2Y_j1C^?rpc@OA+ zWHSlE7RJcZ+`X*@3+2-34k7gNKKVcZF%tlWBUZJ2artvYeM@~g89*9P*6WC^OH6zq zJUkq}G*&ETRf{fN8jN@&#``#Ss|c+0$5x-)0r%@Knqj!{90L>@698oKuUwH|{vC&W zws9QLO9hQe`~HS{UlY*$p=P+zekQ6AR=Rc-VjO(>3@@cTMW{brssF`Vyj^Sv>-;%M zMI`}!AtV(5cjKu>>2Q=xXu5Q7wF^5n71aQGZV%`^j~=}OdvJ4dqazDIXVYKA0E=Nq zbq(-DkM=u4U4bVI`ous@Ll!=0p10?d^|JYC)nROz>9bEF%>B3a;}t^FO7u@UE+;1w zXz0hv7f;{7CVaHT2#8St#p&BOCHoRRZ8eR07P536EiVg#5m-^OkyVGt_(e4V+ul?;QH2xVvHCvwqdTw^ok zLnKe9S!lg=BtqUYGsEF|K@Ebx-W4b@Fls*);JT4pMp_zv zkw%&(l(};L0h31MhmozAyB67E{Yld+1Zsr9=~QUB&h(={jIjmm0`!C!x#V7XD=%2p zJzphRatoM#nM3z5^#0Pg%eWPGFFko8f^0YEY-UWE^5rPD z=g@5KP%t)j^H?3@o7pOapBYy3x9RM4qgaUpDp$tbHalM^G*?^Fgo z3a#-s9pt|)@*~#I1qtV28Nm>Gp+N`YI}|W-X}LaZ%pUp;!ke-hooW8eb?zmwu##Zc z8Qg-xY_8VL$5B01WrCOkJLpLx2M548JUk>~Di64MO$nmC^7o4P-{e4S()dNp3MafIjt8Rxr^MKUA{;jv8AU#_3_^QOSQ5D;y%iT5IV%T-6FP+F!)g%SII2XdO`u}+J| z2Kx-4_H=ks{h2MIs2o+hO<;Dh#r^@rEy_mT1EJuFE4`{XMCSXdtm@LfU8O}K$31)C zU_>~L3#u|+9~R)?wtd&AVHW`F?KVN=`ceG-*iwt$LcOSZ;~rSWe7#I(2_%C?7CTSo z3joY^6G!~veMJgIK&%xjj}V_48btK+D&-0ANV3yfBFxq%8-}V4ax94D0bdq*YVDm@ zu3LiTL_s9M!8nB`vFzD19FMJUP1vZWVOzAG83V-8v5qx1@C&2_+o;M-`xIu9EU>;! zzJ=74cr-csbp&F$Y`q4QeHk(_8C0|qEBv$`M_E&) zI?9jm_-REp^OiJ!Z$LP`CHPX}=eT>Cp}L|&EmPam>IjNo&%ycV^6cX!>qh;M5fX7x z+TyKr8cBG0pV~g=w>6EEsdK{jo@zDb4Hj#OxPm8nau+fF57h%{ppM_G0gnnx3(p6T z(_J0lxELzcT*UDIzU%M7hEA3KT$}V?^D+NIyl%pi`LPIM&rICAz%Q&!bid!42`HNP zy7RuI;9+}NTJ*o*#TqeqZ4+(M&Wu#df1qR6w;wOv4$?{jv+w74A{hT?Jb)&LW&9d1 zKup9e_|r&BP?leROfPv;$dZMM+uB9GrD?JlRP7EX?7#B|6+#ok<;wteN3xq3{sR)r z=3gc}hQGEI>3$GzB`N(c80qgD#_xTj{kU5Sz$2%4k(ycAKbSrzAjp}otnS$u&r88@ z93S$k%2s*&BS{L7q=?$Cgl27fnSqhGAKsmRO-~t2&zmTzkk~4H4xaG@OXh@_KZt)4 zKu{;>>sw?1Kn4wJJ@W@hleL1uhEGhf0E9e_g^H;qmCTm5{()al0p1xtL2`Td6gT!d zslcsx#>`Q{f3y<^B*x}`{Ee`%QBiT~j_|+WSrj$)TJ-@H%Xm>)2F<@9NLPUSGjUVo ze$MRNa8KJmT9l-T9c#<4v0^EU*`vRWDIA<$?CXl$k5gHB%?)?Ab{C#l(7*q$@qWj} ze$Nb`uqS!P9Vg4}xhtJh|16h#0uQv$C`M>$1I-|UNrg>AwcL*QAIf zH8zHgXtDA<_i<5z6yO*t8ruvQN{h?u*uFpK67&}dFk0#R=Gd>?6P6F}cqB;v7YEhB z#j`jDQ%;X?tn;$#gg;-V#P!ZzT@OXPmGi}(Nt>_ii;^Pve(wi3vK}B>d=-xaYWOY^ znH!N5hwpF~=n%ty)c+YfEG|XwzF{q;@n>vhB;5)s{~*l03~>9Cos-RK{bz*5CD;jM zr2k;#vN9mSC)ySZl;MTG$y7w$|5`a1>~#2a-OkC01*I7^ePuGEZ2{}%sQkky+Hf`0*8 zt|}i&r1J+7MO}a^+3v^mnXF#wh`tGndFoI4kD3eqye-!~wWyypO#cyk%e%PSs*n41 z^M8*CC)*FyhdxD4DKzJ&vWL^vPZ+0D|CvtoF%T!Ire{$ES2Jt8iTH1Ay@$b0;)}i} zEqWtT;k4*~59uVlmH6+$65%cw0xQN};GZ#(!Bt-DfQ?=zQwWIoPCxu+TXg+j0(1Zg zaH^>9KAQQUlQ~7i_C@4hi<5f}w6af!quJCp{B1g04q>-K)IWTjxDA*@)cRH=qFT<^ z#8C7fq~4AUzC&7x+$*cv0k@}B-qe<9>(3-6q2M;tBG>&El=@>V3rKif?wf8_!#^j7 z;sv-}qt+XK6Imm`AnaQ&$Cg?g_-8qAJ7I^VZ?V7>Ugn$pMvRC);9u;7D(tA(hz&R^ zBt#Vk9ppp(h5u|D&+M*wQ&`hfV+@##!mtw}A)VK7@%J?2U|(!~>H`)HzZX4x!NiaV zFn<5E>u!G}B}>|tQngE;_m?TNY&3*Zt8WbTh9G;Y~rc1Xg5 zgC{xH{_i zuZ)KnB?#cdOfRIFu$XP)D-Q|woYLY}+#chS6FOS=x3#4wc#bVu&@g^v-24I$D-a6{ zG&x}wiB+Yl-JGYw#7c<)G->L(dbFKtS+V38-DV`1A_kGjpCu5=?Nf7u@Q(K7AQF%v zeeMndTD-fH8U_wKjHW99dD(d z!e2gr?uIROUka|MAKH+vluD-I0tS6N)0)eD8WiZdooog&iXxE7(n9bmqvk! z#aihqQZ~|ZI9dE_1i>bF%=d^~p{YTk#eub!bheHgKxd(+M`6m!;gMwfey~Omoy%lQ zZ2m|?;Yo-u4~%Yhv6PJG|9(ba1wjrF4u)0GG&4=#=w(DhUxrV=hh}l0cO;xStk}kS1z-*AzOql z{}JLScH_nkJ4eU?&R%+{W z0&o{1dI=S{+1}Ko6X$g-6){SFhnQGPE+?q_J`q3qiSOuVS)#}QDd3H|>0v^N^gzXC z6`PGsE+Z9ZlH8}-TK=V}8hW7Vm_-Z>Qun3B9!miwqpGU<1F#)|>?j9jh%uX(n6tda zMm`L+Tm{t-N`pDmj_Td9Av7R@A)u;`IQB2NmCrv&htwrNWldzg=-+94&t#G zSOG#3m~wUGLVzjYMx8;)fn>eIIwTIZiJ)Ou4op|yI>|zmLNG8cd41GLH8U5=CBOoPd4Q-=xP z*;yWsV`oFD!b+l@cl3b!F)d>_kIpfREQfpkO4{S&P-&dWapG4QK!<8Nx1UI6Kp2>lR6KaBvW9esx{#iYF05*UBLN3Y1u@Cuq-1 zi$?wRt+Ih!8-ptJM1||Za_W64E|cmE$JIfB!jf0ro5)r`sw>(^*#z7NieGh$J;B5u zn3K8%z`jy)HO!e_SuL~g|79%mjl!+yEBZvzrN0QgImOp6JqXGX8ih8#J`Hmuk*XO$ z(Gq|iLabcfUOIBIFn+bjevq|l>(ss+UF~M|0>X3vzN?nRVDY1ssJJ*e_m9bK7(wY| zQ*~6HL*eu-J1(d%O^F6H>4i|X++vnI1T~xcCscm@<&KIGjzEOxlE2I6*x?s;-t>Jd%-?NCd5j5PFRZsS%p@e_%Dv z|EyEw;OoUpm;RCd?RH96tpE8V^~Fyh3&ee2K9x>cI#H$ZGzA3}LSF&grAY&*>s3Zo zdxS(=4jkjk%D7e|1wdKD1w=5=thrg#^*B8pC_$Hq{cjS9)}`nCa;3X?fXc2EbfOd` z8q=4fc6WEJEQoN)xbu_?VpJQd&rXV9rT{LvYvB8ft!SZ2PD3LjTB)<+zmC_~a525h z9oG>G8XV2!wA1Fe+g~UJ^W)x#%rBqW={B_recx}PZn3|@6Zv|Pf~*VWRWvFk&kN!> zVKwymnM2+FV3^JzZ1*r-PBG|UNq<1acoBo_!9RZA2mJmZ%0L7j{!&1LAB-wgvmXCY z|CGgGyX1IpBOB_z7-`0j%3VXWwyMCGB83$o9UJ&0BgqJX+r9Gru0wKkGICyEcNLfa zCw_B1`}PpwLK|ex`_wcH5+S5RJnz~_k#_bMKfhikE|ZZFT!`s7jGC5r*{YeHSbl?4 z1*k%CB zFaG@BoZ}*wSM{PuM7ngVUI2I?yK1A7f^2OPA_@*tr zGVj|0Xm!BZ&COPr)xR|?caFhrH{~N22M3hmPcJT7{MB|o7d>bW8#YH#6OKzFbgBhcu-ui-W#Dlp7r3MPh3-l2V1WflEq?uaHC|2&V|E=@hA!yn=ztv0 zN?k!{t;Y5G)J_PKY|MFJx;667N%R)YLz{_0=hHe=X4FHQ9T=R^lb}WpA8gj0f!mwX zNxyXv90#S2q31hHRmXc=XAdUbSFH-lGxI3VtH?XYlP#Q(tLP~bVDd6BKJEZX?loLo zqr*>1DUOv zhBsk)o6vQrZvCmux;JP$Z;+9hb#R=bo6bDS5KSdNF<2*pr&*Zf}QGHo0ApjZBe zEsw>l-P_SsLgGPcXY@3bsKZ10nSSoZes!wO(K9S({Ahk~60SM6VRv=kwYDxGqTjZ$ zSl+XVbiB;ocb-X|^W~6V%HOPQJ|mnU(G7VT5U)ulD{qfv<|@X&-+vw-sGOc;fU1U3 zeRgxrO2AMvhswywv25vzzhEaBLWx{{3nw))oAv8gL2<=`1@#j~P?JJ`ua~fvS_N-n z(yPp(nIp{RPx_WOfF8%}zp0?Q7MnVD;&UP)deE=m4u>gJg;Hp-Y z39e~pjM3cIH0;uO9sPL4u5w4FmM}JjXU(F2j5ROQ_6N9@QfLoxhOru?NOn$K=Ea-o ztn=NylQ_6~WY(bzUw-tr0v(JhB1m{fnJkh7zuxVvt2}SiNhyxVZ!d)oFPT==GXuWg zOIWMj4p>FbxqW|{w5L-MJcFJdE*;Prpk>Tu*QFZ$xPT+h26ZChcSK5M8mD`WI+hTN zcbr-OkC2& z5y#asCpJIV{nK>yY(_d78m(%>>*36w{SydqW?C z)uQJ8YZ+^F^X5$#+xlk{G3=kay4W*RZBzAyyre@I8$i56!nr06Z`~d1oKYtAmO1~t zHopEtl{LFQUYBpBe>WAl&7qMILsL^p3K0?H7w}e9pJTT(DtXkmZ30_dfqIw^377eTIm7aIlfkE6r#(v2@iQ z5F%m7#|ay~2_U85vm?w_m$6*a%F(TgT-*;2*W@O{JwG?^ol+JPyGJAOZKm#z%Cl#( z^@D?9kf;SlyT@3KI=$XaN!c<;bH10OC$j)5?Ze|^5wL z!K8tQAHaD30dz=RU|wL;Y=*q|5caV|07X-OQf6O<)~&ZO6>qo<`(9=4*C^O8?DVwe z=2;w2w*1KFa-e5fWo;%t!SLkOE0S3Q&*b0b&r$~?R)Vi@Z}+9oO8Q_EJt8Ij^Wk%F zIG@Fvz>;TutNU#c0s*iTCQv@Dnzi&4wiBe?jbR2J?RmtKgqk*srcmwsl}spf*VeXg zt7Ck^YcXfMa%W^UI>2w%UDrAW^=kVjG>DOPTuP1e==d5@(Doi%f}GddaA@m>iDPtr z_U^K29M@T5ggVOi7M*-oF8Z-a`+0bCvx;i2K1GpsJMghbM*HUeai7>jgd7>a{P>|7 zDKZK@0?mnzxioB@QpI-{mK^xy1z!sb2nehU=9(Vkn078$*${`>8tTeXQ3+;hJam)G z&S{+zW&8f)2kgo7X8QmNKC+Gl7MVkvvvk5)+~Q%w`AIQtIF;7T;@v z7Uq4G#+AgNwczX2Po)?ik(VE8sL&IFj}Gj&82I(jnF>P4hW>t9g|fara?7Do zQivj^*jj5k>=wd(-*CBJ(oS7x^#NhKQuJgn4+SrJe+4s^W90p(r`xn zo_y@wYHoGXlan_l6ogpE2lauLjAw!{Mcdf$&n8&>5)1Ay($Jc{X<&8Q5 zM5fl)jrq?(J)CvwK?GRYOlzk|T|0{t&vSWsJYqKemICahp7~Z-935nj`MkU2d{(59 zu9=^(93C7PC>tm2JsHZ9D&~V-$^8aLI<<0g)jMM-EJdTBaVc(93?xmZuc>46XANqH z%kEuYXitV$iXZ2wF%p6C`HOiKIerxUg%3|U&hgBTREo2NE?g+P1U*ERUYeLhS`|5* z)?+#FQ=FR@X;p{RYUgd4wuCu7Kggj_-QU8n^Tv*IKjs4{XST$+HBG0)e^^}=au(S* z4)0qxZh!(M*lE&b)WK$=!YKe`GdmzW`VNk@!pABFbU$0^O5S8Vm3&U;cg&WTRqf6M z&`Ii_Gw^JWj`L*i*SP{cl8i?R1HgjM#gt6WG`x7ipppVv-@9g& zRA;pJA7psmN8C%YM{<5M(A+Tr6sqp$!>K=5EZ~dr+`PRbI34*B5Bj4|_3sAmg6}3O z5&BmQ4Gq0M*w8a+i)>$L*I^#G`dy%AK9vfUs@0p4GKhnDDL(#1rGV{Cfc@fCn($1# zf)j-8gK`b%7#KdU^k+`bFN-Ucs%3nrs1N|@Pg2Un@7~^97%-{hBQ8bT97AuofQ|5C zXVdnC+bucAcmlKp@yzUJ2#+d?tz^r(T0&W5RtK_S`a1rL7hXG-1tv#$4<_MRB0q43eoef0{RkE_wx^`Lc6L7eO108EUWw#)Q zUf2qx`AR7e>ono%w=rHWyu&CsTVI;fDI|HcGrz0b`TN2d78c*{M!Bfvfuc-?*Abzi z9X73@({p<`Y$(fEQ$?`cesv!?ohIB_fra4X`Oo{RMQ8TXVai zEdKn_Eq9Mt=;Y7 zdkj7adys+WAmhP)+4t!Nx5Yr;-W_*M^A+4`^tL3pE)sr+XYrTB7(>25q+oa0d?Sa> z;Gu#IALD>JQF8&K0$_ z`ENmgXo%%T3auOF{!m5wbCKZOf1v-eu}y0Y7ca%#|y?E_!+XACK_D3k7q97YMJLhUp&T`gqa6WSHrcM2VHsDt=CBW zbndLfTtg^U=uJ2B6^t3QU+l=YJhFqh;&A$8^VN7p$gm5=ojcB}?GH%=m#*Brbqiws zZ^N=Ny`~*MdzY7>piyhFsj(3g$_rsNxzD2Xb4}-4Ci$p{n~*2y*z!^(ugh7s?k$G! z$=WUWT+RI^s``c|qdb-?E$)U}%VdO~7wzmxg&(}bB{#INh@yKq?Jde;l=H;s`B7fJyHk^c?C>tUb7>QV|641 z=7EM^`32)i>#kqA%5GaLpgy^)w1G8i{vJAFmpW_*4Z8#f=ia(SF5`>0Zkwwc0g-5d z+j2*Y0QARG?rrkTP_q|75*?2G{L+ew-YT7k1vNjFlcl@4>6;C^R0M?@t*TTRiJ*B9 z@Av`q`s20IPE<}GDzb2@9^JSQ{q^fhz*G0udq>wcHx?Eep$VcH^g=xUPTE6vbh zm#iajKxdY3gz ztYiB7ZB094jRx8Rwhj&+_V+^DQf^#q!v)D+rF2z@Mk4z9YKyXGW^aXaIZ;AMoV%dK z1271jF(sB-Zu*oW{&?%7w<>K!@*6a9orGw80%?4Ee|mcKx=>l-Q^2``80mq$b5mcj zdtR)YvrnwjqC5qZSvbZ1wTHCd#db&$ygNW4hU$|fbn@e+w%+L~4|aPFZB1%8z`#Wf zWG{`S(|jjqex}el?%&@)iU`S&pxl+`b5<5Ajs<2~yYKFYfh~w2e`vimJ;&g% zIUFSyRYF)AV(tkol3-E$a@2YayIR}Zzu6i!{p>f_f+{St`IP)KK8I$40<0I`Phu*$ zJ?}s}--YJx*Zd-bxTx}TZankG1Ci5bfFg$T&({gQi`v_BfUJp#N&RK_3@un$f9M~& zy}#eko*iT+zLuEd|Lkmaco`x#?XoEMGyeURqgeC>Y> z;T(yworSefBKtJ6KhnyGiBiw@SSg^krsiF~kpygL&0<3zGoJPBTXeE6kK$P7T2!b% zurpeFy#jz8rlfVpd$>VkA^U=I#dt;N1^UM{&Qlg5WL}%$mi*Z!nYrVGb^Pf>GnMU~ zoi?rqq0!N8r$^WGii+l2*@P1fCWTXkdFT8M_E$%JAu+Ow)E!~F%Mb$`@2?v<+F(A&B`$ zopvUiX5toi=3Bwm)Ei`X6!f%}`q-#CaASQwvXL2q%|B9NVUa%pWMRBaScm%6w-=yI z&hl`gZ-Z+JObggs>ZWLJZ+dBVGUhv8>JofLO$~@q4^*J}EoLv~HbMdpSCN!NSS4&e zm}3>a7CEyPY zQeh2Da?8{*o<6U`0AKU@3!}46kLMZlrX@@Vd^P;*3KYhv)7`-MCt5x6(tP~*QY7Y; z8|37zAxvQ`p)Q)QG)cgk?RizlHSF>~del{}CIjh`r2ie3K0d0s#YLG!iElfn75V3v zTCGy9t}4!ASJh@54Z5hPD7RgFou6+yOm$PN_vc-HrY!3z$q z6wfCH-q_jAMCDe$tT`=H%~by;6UNH1Ty?NKT)}n~kCIs(kIJZOC8$%n1o~umC%QcZ zd%pPc<$XZCOd#xdMMhY^dv?6wA`gYB_wLF6fQ{YgRqz{H?F7 zym3DWO1AS&+O?|>*HmipD4w@dp$gm<@zis*pRD{j{Y)+1#E;7 zY>)Cp!bLm{{=7S@X^VS!6;!mII>pgYUAw^N35B0+26^8-Jx;cC!&t>V(JdkNy=?b| zxXmO4BNP56QeK@kA2Dk3zhyUd7xI_W%2ymPD-FkMyWwVQ9m9viNww(n?~s~sbK?N8 zi;1^p<5hJ8PL+OT%dlC$&wZrn*XPEqc#Xmy$vv3)K z*pK@F#z`Iyl0GXG1p7HzQ`Ec5tUqr@Yx&GZ~-3u_8V>qGjjE3M^Job+n z`&<1ufwZ%!jNPkhS(YP+3`pRKzo@VeE zjaDOh{_CT~U0G%X2JS~hyTr_e&NeXPV0$6TrVD696>=qThMRE}#>D_FjXJF{zjm}1 z-54utZ7MMBf%uW|T5*1Uykn-iY~&UzfPOGGqQNp~>8SM4LWj;{uxR>j`~8MjKB&&C z0+=2#(mu0IZ!WT8tH>C#2c8mkBeOyEds>+=1mAD`M&TV6X8O4@m0$)HPk%-|JGcM7 z(dTZ-B+l!j9U@LHDzv6wTyAcIE$uAHjmMdxEZ6r>-EVr>QGcM9y2*YTkXKTYYT8MO z0aG-3xfLU0V%q&F1o8_C5}}+RfIEsEV$HTTw@0B)NxEfr;=&XC{SB6#Hi^&_!Om_E z!o=uUmj{#f&}mw!N}C517E%=BgBrc8Qq9}s!UY8Qop^d7A86LY zO;%3-^u>Pxf^-w(v$He5D&k5jPn~@2=am|3twTl{{F{@NcLQc)x6+ia7)*{ti+IKM z^^KA0!3k{C^@oEN6cS==ewXYj`S|#FyZQr&3>pKdBy(eh${dz&=AyQ5!>H*+bTwMk z#P94-w=3Ko@bF8TjNra)IhT zB&)erqb0q0N=86u?4A-64244jfrRc?T@x(FKMh3Vq|yuH)2{aeR0q%!4!Q7q7=ytD z!wITSP@BkXqAt9BsWZNiju zCi5sPJNrSHD4@e_F#$Rj$=xGjgI_xbYGc**QH*NL3hG>#j$>$TB6R|=j+T~oai)!L zl$3OjEbP=E`+$J&oD`C=C!Lhz!+F*$pccSHQrOeC;#gfPl-kQyau76r#3L1Jes?MB z*ocP>=g#Bc#&5enpq-iN`Kb>WOvsXhOfye1C@I~!J;)qSPc@6(uXJ~(?nXb+D`B;w z8d^9N6&B`sMM(0@(D2^&w%4ZqYXHpG`5k^av*9_vAOJC&O9v=NuJ?ZF^S#22^V39* zsv|~3p{Ho<_e)6pO*$gmp|`B_{Ct?KOO#(rPGQXOZA& zH_7W?xD{<)zp0ywMF0FM7W`$V(UE>Z{b}go;o;QAhINaaW_9HyrS5K*_u3e0nXZbE z_14$>r3|0K?@Y?@;*un*GytB2Ci}k)vL7(7Dcoe!M@Te91uNxh34G zGyFwN&_$_R>5hQs9dH7Zo@cu(ncc5G2@-wwl?$@ov%pLm?P$`mw zo>n9>hC#R8=|++Odq8UQ7A6_2m+#BQa`w;Ui>Cv8!=zN@$^&_6J%~TP>^aF*d&U3) z1lJiaO>K8ZrV-K>C*W(=Yno?u@+Oq^%m?6t7IlLeDkf^`ciz5u7q)<_A=DJ+X2$XI z+DDnc9Ud6C4P6jge*8h5XKLmf29CU=ok#HK_aF46I!?*IPv6 zV`Ew8RxJXLrc@F!IXLnm_Xj#~Dl->FeQ)MIAdF8T6838%lJKWa)f{d5;*|rS0HlS_ z6ckc*`P8awJi&`()c*Aa`-`4!l1BL6h;c6@=q=!JyHgx94L#(y564hmad16^uErPVtSbhK z<)RGx0~`5k8~Teh3wC;Yd!I>3#fzRD|6r{(A2X5j4(FRqG|VOQ4BD7Pbw)a_!V@t4 zn-u}^Kex&>$B5x!9^TTL74aR`Ohw`rL&gRi-0q7A$P@_tMET&E1LhboUiYMKZ%bQkA0g0`5WQTC+Izs52p^G9Bc}9ZfgpQG3@?GaBjQ3(Pe#E%V6n}!LswU zM~Or&7U-3`lY(IY3XMUfai>59u{YY*|&t*yZXOeEF@jY#GN9`BmB=edK@ zLIgj6kR}sh3pYsXv}_v;k8r`S(zn^xXSa^Cvas+|Hmh6iH5~$Pivc)%t#5FurVtv? z@!?8iCV-Zhqea*hD7OoB%wRUIjN-D_Qvh)%(T6n9HyH;orF$L^3KxAYO zTPk=Il*&pU%`R)jKm!O?{qjAM9NsVpL!qAs#?;)OX7^in==5anZO@1!XmEwzTab0g zt*X19v}?fR7Xr_XD#~S8!l!t3t?Wi>_%}? zfK61(FXPspG^LH78nB6xlg>>B1fC0-F23~(G9bUOu(04)@83r%#*1}dUH!5eVahl) zH>WyP738o^26TV>?qKUpG2sjBOJ8~Gp zhcw~gVDpeHOilehv^9!&G))0PA7mM~`G|v@PjhJLZc%#T0Qkb2V<58@@hTH-rHi@^ z|M#a55uFilJ<5j-lC`k&r=tU)u*ApK{^~NKd8OBhOFb6-8)hMXlJx(W*t?vj-G9mL zoHsRhR3BAjfWG6gFv8Tx=s?J7vt&oE=L0aSO0Eu z$))k#x@ENO4k4FrwOzxE1qRktPh?7&p{>5UElOqmO} zikqzjNbFS%%H7L;@1QS(Cj0*V`xm4;K`ud0?NDO*%tjIH6tg{)~1`0!eoMe8B`r*)S9syC_Z5D0Wo+69NlfR>tX9H2M zib$FDE4e#OxfW8Y9F8~-HnciOE!jy*38><9Cdv}bVC+W}d4GmF?E~J>xtFa+h=#K? z-1$a`v@!OZ+iGg~_y7`p_V-`-Yt?$>zcE(zM9lDFf2KxVf4{5$+)URiZj7S^XJUm= z4(C($Dt!gnulvWn&)K({R{8-B4u*E*ze334q`r}*|;sZ#a z%=^+_aA0VR9p~K@Cw1dIe)t#M#EdAChCp|c6pxBx-BN;1Ks%d#u5SZ+UZKfVM+JN6 zF}NW>aiI0Xw10@`*37HX6do{mS^5Q`kC^y=0{ceJYxy*>y9@A0u;>O;E=(0=(<|D@ zJlze`$)ehZ~ovra)Z=kQbJDPko{EZ!&14hF~J#5%15vZRn_(rjZ25)@<8(HnbD;#_Afs zAXK!2so{Q$)$a4yP<;U^u&@ZZzTW@G!U>kxo>TUg_@+ zy^7saH`_QqIkJZ-fWm_Qgv+Ic8-kYk6QP&@Kck&Kv-`BP9EOK}E_MbnF#Qsg8S0%N zAA97s!HfZr*q;@#?EvGk94)<)9EPEn-|~g9@*rQ#ypY}=RicT*4;`WkUermzGlP)& z7r&WVlYh+ZtGRG)L0@^FgCh`J8upp4b$uP@ZjK!;Yup zY1;B^9Z-Z=C%doXC+c7<5VSyAl+PG0{G5wA^M@7z+AML9uLdQf@&HGJh9;yBt+R&j z>I2V!d<{*V9R}WAKuf_X0ye~=>{VYHGUIdToVjoFdP{g9M@QknTF@6s1A>-TL$O1Z}uKce}7&XT7PnAzBn2Voro3d5j? zrZ*c1M+m#>@7j1Ps7-CbF%|e4NlPjtg+5w@iVnlm*4&$RQ*X7l z<{?{mKk%9?Fr426MkhgLQ9fl5G@?Vl9Ld92^*9A2K!fRI!w!ug`T&&w!{Fq{2hcwZ z!$HWS^Y=b&k!Sf@Ie`E-02#Igy6}YVF~gy*nv@H8-WJBM8SVy5XOq8XA_BdXV211K z?HO7y>LSWCwc$})aG=D*@F20d+PM-cuxo7{vbDQE4}p)QKV>o?@9yW==0XgBHf)Sn zOs}leg5d9Hx+$&=GZ@gCI((4V0MaSRROSR}5IbkiU0D!EbjDUa;^$w0!>p8y4Zt3s z``ooAg{K4rU3V3xIABiz0I*n=+uPHlRpNOG!?U_tTtDPKB~0wV!K3P+;0DIf?46GH z4_3WM-~cZY+_ZaJSXd}%3_#rBs|DGDlfmbl-~UGo&-W1VqLYAuqI;MBnh|mcG=W9J)-T<-_xELGorpc@JokGRyC?Dr&u-qW2fZPVVXcf}9pGO6qAaFU{ z-MYbQ&`}Z81#`-#JWdXwe5-9l3G~YdoRpj9pOm~jZ`GUK z1vzBOO7FlRe&)(_4NSknK!)0Cf*y8w_c82Ik-5jQSfqeEINS6*g@x6scE1A3Xk(k# zdBb0dL5*j>)kWR-%_{;L4Pu5!Hvr?CcBDwoNJr;eRa4`zKH*Ko%B!55OL&9KonmU_o$WfH$t@`CW+U4@AP- zfB=Uk(BDlf7nD}&YLzorIUSmx1DWS?_N`=y%I>$NVFTzaHKAcx%kG`)?`7FYJ1`;Ri4Nk257*irj@RMp#b(2BHCoo z$6^9e^bA2%zEbjVIxTeX5PkJpCW6PCu3f|k8>+sk38GAdwOP~RYPaj3pPM7Nd9xPO zlCn)0y4CIxz{Q#$A8s|0=SJ~pBR~CFi>O3T6M7o#Uq$5}Ujij6q|B1aJv`Q9rSD*L zJ&?O8ZY97{BzrywehzY^F$n2#kO`2I}R8@mdSJ`yo4^I$BAa zsqRNRFb;AGs3iUvJm_WS=#wm+TsvvdJ~8zi+-!R!rc%D)gnIyO`=h%&_5)4Kr!F@@ z#{ZRUVq$5}b!K*UduwZ|SHWa=|KX(FY-77%lSqru_Fczue#j?FTBw-W zd~pFJbE6wE!g4U-6Vdst?Z3Np3}68Xx`!zxX`!(k@A+O@px|U~Tz}2h8>`WtpQ0Wq zUfkYn)u&&egGx|fJguWTW^aA_{~}TKde~xs4u7OicV> zFfz?RVR)Vxo5go(1tH>S(3yZN`74ATc~F61?(AmIwo19ZjRoJu2E6f1Z>Mmly(Ppu z2uXiFOy`cS3&_$u5)fh2ZtL{Bty77JNGDu(aV2oPx(z9%N0o~K8-}tvD_h#6ZG?|c zfgaHfhaW%CyJ!Rl4V8!_J!6XWa5wKd9X5e6#ZBB7mPMh3Qsqg94p^u=(D2f?q~u|- zG%e`J{`1A>e}1eSKMUdctb#P*_E$C4CRybI_k#eC_a9EPLC1QmBS;VWBZZO zQ7+rsim_@B#B!|R^F7a~pmMi9SenS53KpUUohB_e^H&h=IV|;EvDqBk|k|NKvS5#hB#&J}KAAUG-;tu0&PPt84f$)=(lH*x@Sm<8=ITF7(4(8}y zpz=B;*#CJ#QmCnakZngl$CFeyK34DA}dyJ zudbFh)qJ>Z^!f8QV<1Gbv*S@ zVFa)1@*aKw)GeQSu=GvheLHxxXw{njYUPPBB!v?gc zYaUpp)qgD0{pW{NNve#?ed#oA2bjH8ZYB3{pAvrz3!{@EW;1~%MBvK&mzH{gSRn#2 zInL5#+>0kyb@X^b;~-ttcJidlya)hztP*LTC<=r8gj?UpufUxntQC?vt$8BcW^U!_P1uUe zT07Sv-gyD*1`Eb%UVjY)PtbaOzu}aZ7aQUwzW@bXP?Y`#fy>)5tB=0_iUz+_iv2zu z&CtlD1U%t+=R{SsfD>Lb1^xO&HWP>r6V$UK#rbWdG9W#vy|SwbYG4(;pE){Vxz(pg zczRSDiAc36tnqx>Hi)(x{mx3&Iq)@jfc*HIHZEjKOS~Owpd%AZk?gGSApqjTH#44 z?tw;TqyldW`};?aY(dp9YEx|pH;cqqAOf&o>BB|R+Y#i?>!WoZ;k#U`fx_t2wq*~tPko~p>t&P z;v?82VA(B)3*P}?Z2}NS^ykkUav!(1(!>;lAM9=P`+-C_tJoGGr10%-hhq`6Ah4*& z+NEG|_y|dQ#$`LMhMrcN6H!xNg@~T#O1abeL_0uuW_|SESz`pEuKWgh4Lm7B^f>{r z4$`aY*-JgN2Lkju#mt*>k%*S+&}tYPv>9AiPJpjx&eJ0$8T#Izss78oL7LZU0trNV z&-g8uo+V%_T# zC>@yf3%?^l8uMDGSW%38^rxx8$xwiTI-tyS=X3*jM5#sjn4xkjau~;8v=-j2z-fakXk>&4G>>#LOvw zXTOVjrx~DP(@#EMS*yARoUx zEcJO>gqQza>htxrwJ*hIO{ipl-3n`=;8a;-xFT?5qvFECf~O>P9|N546?8#;g06Tv z4Vq=&NL!n1R^Js7x&3;5F6dX*wG#~WhlR^j`LON(@yZ$>{LrzW@!zWPRe1)H*b4rVEF`_x_(x%k2k5=2sOt}IAi-O zzvgG*72^wjPCV)K+%C5`uTy^@5W7Z=ji8E1-n-pH3(soj+0kzwW3UZ+6;6l{C@=m= zoMxWlwSQi`?eOfk;-{weVO(ICM=2Ps$1$)-u>bj!k|oS%NCx;NN_IgD=Z}Z`}aetL{&yo z0TUbm%NCImBA)%m-s&VYDN=mFcVYykT#H2-1|efUa0Bp`)2oDeHVFg?Y5xfW4P2eY z%P|`ocIkVp4bzs6>vQD(dEF;8EkK*6e_MM}JxI~^b8bZcynhBIsZN5uU0POd^xBpw zFI+5`aWv@P+xmBnJ`l{LtB~M)^mrVV>OqYr0?bk2(^K9#B}S{ouR<$L))%{>n4zdM_!Zm1pTx@X%>{J`##uTTQ}c_&^X!RD{d0GsMP( zRUCcDk^bMWyvO#RSB7vrsvuHqzWe{) zZt&Z90@|8nPRzlUD`CA!3z)b*|L3Z1{`(p7tXp4Y-pvz6s%pKU|L@BY`;;nu@uS#} z%RU#qvsvh^cG*&;#BFIv_m1i8_5RllejvaPM82*8zHU+a=(ZBLO2B!2kXk?rSq(PG+vAL0LeUcCzKg(uX~pO7mzEqQ<4T-o0H_nE#Ii= z=+uvmbg%YtB)7F?kuK2xe=#>N-34%W%V;`auNsca9TCs>_;d=>kT2cmDVmx*uRf#J zm6K-Nb6eVXg&{i-RzCO*eQcJ-OQ@h4OBQ?|u&pYY>MTLQxdm1yc-9llx^Fl4BDmIu z%35bE;26s~FH%5zW+)>y4!rd9zn<}@AR1&3e6ImBB{P4qmBD)aJJClmLFmA<+@_QF zHj>AK1TOZ6baMYMz@%w;c|$>PK07z}RC6fqrKu_LiU;8K!{siw@=X)u&=f*<8bNC` zy|#vwjsaGbJuF@6>*B0R4an;gU$N_FN1(~h_h{-63qk6-KS*r`1HJ?)F5jCyc2G$f z^?r1`Bj6eiWlMg_$vczUq<6WvfRbdAoq?nH@SdtnBAWaqEmY5ez^&;D~K zL74)W#3k=r&6JhKD)D~JNPMC*{8yci{|hI_6cby)%-FqB6!Z3zY3!G+4j7>JAVwI!fJ8S0rbG%_1oLQo*e zQ%dXnkFEd5YS3#T=j1YJtSu(pAUu&C9xzRbr5>wTx*-H;E4TuXZCwEhcvfPdBoFQk5cr_mW!|a; zksspep&08HA>j|3;jTPIu_tvTKzGYsr`PFnW7W+24!Ir99rnAEzYwY)5>bGHJ0W2G zau)mFTc}AAF#z|$bSY!CTrA#g{UaJL^)8A*VWIrPA-;guxgZpWrUJ!MTB>QFcg-ue z&jK(aq=sR%u(7}2XKKpBM}OT^4kjAg+PCVxi+0?M?YH~;*LbNXnF|BzpO{{&>Hnv$ z1d4o$iw8=y+nbx8FLvl57;&lFum6tmN#IfW2M4QE&qFW!Gfw7^8}x})rWRdLQPv>T#I{>zEXY=1|r ze%q8XsqPLwCPrC}*tdNvEFXdZ`ON;C5U_&+L^U(kOTQYbYoAKQ-b<6ZrGke-xYu$= z3t&J2-ns4O7+v%HIg}&}Q>-(YWm-zL{ z%E}#~#d#(Th@}#wiJUC0LM(^Nzb&5N*Mk{6zVHqy0e}i4K#;RyX?XTA5wbc5bh{M% zmy>&rzcgM2?W=iz#-C)Fu(DY9D#fP%cCFI>h>d&!r*-V-3sLKopQSDoFWrQxrQ7tf zLz66|{!w6d)R^-D>I+u}inKzrUZgUy*8)I11ljO7c~TnrLpAB(Aqh@WQqs<>g8kvz zF5C9r-rWA6K_Y0)uTYM{ee{_Z^&hl%beI4a1aiUc)7>+AP>EJA%E=r`p-;r!^)qqzm%I|BX+A}3=rylIfEPikb}17V6$?pClJn^wU_Rh)QhYOG$iZ{<7e75_-8krvBjQv^hpAbjAya(9p0J ze%g3tI`!$0EpSNNP=Mmro~=xKksLD*d{sh1!Vc~aT3XufY{^bRv^9wEPTp8Wuutn{ zxH=QAjOgi}$5pun1Z0#SG@`NU^JpAR9zUp~eQ|H$Jr6O_Me~blPqHpNRcgERk!|g}Ux!?+5OiOBwpTD=sU%c{5Pz9w*lKi0)?j z4{e(PrMv}D2e>BnKtp(Q&~MOht;%Gxh^@e6eSh2{+qSuS_RZ;}ft7?(x2WLxP+|tP z+A2AjqPo6+n~sgBow9P*Iu9?;1q^UnpL19rdhRx^h6e_|yFnxIGc)tL@%+5AbzNtk zk*RQse9RZ|>%?ioUO&^Wp*;6_AQ!=Knsf}yG1|KS@rBU-(IT~1=%@erSL-K)BcUl z?>~M7OW(bQNm1Sy?Tm_w^9&6A!WOks6RhXXJ^%6fApzoeEzDEQ7lSAKFS+yzTF_~K zoW>e&AmEZ3QY9smC0y8VV|-Z)3X*1J>Yy@0#l(F>O^vtyU`*O$TmNkR?v&c$9QxYC zY>KF`rIKg4c}qCWZqL#W{Y@0|I%un>$f+A9ov)p5IJC60%-fvLb$U-H<{s-H&=9w$W$&1`qb_n>Xum+ZRa3 zgiq7ZY}4%sF)7>I+m~|g&QO)HKyBIfIsJmT z*Ol(7f!5w%zY31Lr2lNNS=&(>wd_}qQD09$E$bDCO6sihC$$*U991ywpS)%4iBQ~s_riw1@qx(Xw}hBx zbD^zob2kq{xC%-o237~nhcPp;m2hw3lk_GgSLL65kvJ0M@(HMy?~Fl?>&ZHb&PTx5 zDJdx(MG!PwwAiOo#C>~~sEc8-FXhXG&qO%?e2mNeJ@V+Kvjo%E)ZwvRnfME`P2WEE z@n{wI+KNo=aa|)^qumnG3>uYTp~-$rv?7?XOyOL?xzwJnXJf;~q+zr6EF`{v;YJuA zuCrc=NK04uvaZ~Ea%tDl$UIIotfSMVo_Z4w|1N&K%s5z@9&m@O363CmQM%!ZXn^t< z#hd!6X6n~(-efScXm^IwaJ)hyLz4owd1bbpG_CX+9~%cARjzB|cBu>&(NO4enM;-2 zU0&Uppbqq+gY&B|KYkKLEc2GUlRTVGQ#nTyX(_Or2Le6CeNQa6v6qC ztcnLo%e#x8iq<0O0wPey+fE~EzkGhlxMi)>`eI!@)8U+!_B5`HNq&^McwSzfKjX{R zRVM@Q=bBboD7qM!5FV?;pC_ecWebKELJ13O!qT65$YZKmh02N+v}RTfDbBNpm-!6d z<_wQFE50CjxN*}Y_~YTzvEm<$>(d?%2?`p0jg?1PN!AR^%&8;A#|9tY2?+3P^JL1J zF`h>EPt{!0Hfx(lyXFdR+3e9Q`p>vlX?g#)O`C;t-Or;70(HwD<(S=vL(;W`%q61e zDM(@VS$r02nsLn?|7!0j8*(j-NI8>cdz&&jAtBe^T+*?U!!XudB!!e68xoDG?5|5m z&}*1Qjapw+fSw!W%1vlk*V4z8>w)Veq6iW7PQIc^Y+cVC^#vA63*EqV>;?I zd-X0p$}>{!G%IUNe!lwHsBpVGb%Nhnh4OHilkzfmF=Eum5{9?DD(NUb(xt`5Z+cx{9)8dw9HX_-b*&mapT$t z4lO0s)jkECYOT_Qo5emxO0b(7rX=VLue{tQq3*Q;ZdU!Ce(jebAH zf#}mMincxu4W((Uhx$i6na}ESc6RoHkC6*3-4HPA--q=4h9Wi}mTT;IhpVcoHX`c| z;y0JB#e|K@5Ck8v60B5+=5UV?WQv^|w(hx?=!^Wb_|s5ZM~7qFp3*M)bO|N8@|`T^ zCyq%(`4Dp;8_DcWT4++$x6^g#4n%DZv8T6 zg5$YLRC7=2-Y&-BSa#yw3nZ)*E@;^*uY*+iiLt3O5QC8K0v^`;Ko)dCRX>R3IBGhAW$4t4X;K62|=@ zQ8q3(V5srIRnn!qmwnu=)zgNsb7ZQq=2saex02~b&4p}d9cx>kQW=Ey=L(wB!%iZ- z$EoBV^Zn*Co)Spa=GU4|8U8lw86+bWN8%k$wKn5h@vP&5x+-e-VnXGXzxfXi3`E6T ziJ3tD+T#`wIB6G%tX)k|K%sJTd8z{(Aj(5&Nh!h@g!yuD#hLsC1;vJ3Ru7d)?eiQa zoF(FKr_z@SS?!m-KZo>GyZt)x&C@w?4{EwIw)!-2eK{1@rwmHe#Z4G1RC)O)q-Acy zT!|iL){_+q_w)Q(dIe$sSu8^_QCLjUVEfffN>b^@i=g%e$q!Meh?3T0T3T9&bmW^3 z@92~ho?Xv^4v2$j9*f`OpI*a0O|_N7ENp5`_#bb_S~IkAa^`i^dW|qRm9UA4kx0Vq zbyE&ShZIi8M!l4%MER}j$x&O$c4x~omqsz~k?f97-OTex0Rpndc&jCuKhaH`ZLS#7 z5^tP6+~U%DKf>Ba>*3N?#v;zBGdzG#?()Vp%G;?MOD2>2BVu(-3>12emL(JYao3>l zXPnDi|GrTOhe{0l%s%$D>(MqrrS-KK#U19#On{ZGt*u|S6W`LDJNJ>76`XjxN#}U+ z>vrA2j@3@S!NqMV^*gHI;OJj#mp`TnJiua3(^|FF{c(?3dC$>%w6nu6j&6aTebfSH zmBQfk_vI&<`T0z&fqoRQJ}an4F_e_VIWMsWhwY5kILQZWP5)6?IrPRSM^tlafX~Jy zb`B1gJGDBV$cP*#NhYeLE|HF0zjtIPURWZ73U#3ZZ~_vyhxVh;P@Tts2Uq@ad`&O z9KCR7P7^SC+IU>>;w66r9Bp%9tb zc<)9IF2U<0hurun?C)>s%)8=J4;bE7)<*fxqVE%84VMkZpB@bXil!9jAeACIYnoB= zp}zjQU5j&-G2j3it82}VSjZwSJHtj@cpj6t-kmndv9y5mXBlkZ76@q zDlAuk7v&Cy?&-UqzMOe?`!s)O^!8!l{6)f6;fJCx)NYqNT$Y+io4c^|RKl}rb9QI3 z;8%1sRrhNA*kip}u8$Li)r(i4nGQT2@;BW!ZSp)|+oYB-*5i|~1zkf|is)0SJ|-HP zV4#GpaC*>swmj?3UOlO(b%&VOeB(ji_;|Eqk&~X!uLTPchSzVUS^4=3a)1RvsnXc3 zTkPVp{FN)GIurSCLU_ynX(i|8lL-P4K{zi*w|YKlVh-g+AT0cl&!|G%Q%E~zXXgoU zgDbLh5w>esIu8tV2h{>9Txd7QpM=f$J-dJBj;H2z^!{1IOlv{9F%COFuQhvv znobtYe2k|e07&w`8fE>mAq^pbA!>SDnOVLawc=O2qEgp4I!Et>>^J*bnjghAuHsq^19w&e$q`Qz?Euy1*WM5#jFtBpr6pd) z(wwS8xdm_J;r@y1_67I6fKD)aiezc_>s)>jWOC0n_DZoNFYkTa>WgfxRo=Uv^WCdm z-Ue+^Q44uNWxWq{_3P|8J34u_ zDdR2c-+uW0!4wsdv#nc$+SELTO<^b6E;uRq`br<`>U=cB{m8u!8$QWff~fUnxnk9} z$7!Db;-uk&aUXKne)4%UtN&S7)7f!<@yAF>+CVu!de~GtWORAxXb-e^Xnw)7@s(<9 zjqIs;|AT7m8fy4Z8e!i3lXYq+|A)RGMt&N8?+#}lQ|cMJkRT7fX|63}3(37lgRhE< zXJ%E9!l@r&SL1nUw)qS8@~yfa!dAXI%nDA-O}<~GWo65OELw;#`f6uIjMFT@9(j3r zZLlK~sm??(ET-$apJwOJW*|kiu>t8@_5HjfZYpep<>hZ0NehxrZ(EMV_+*Hqg^#;> zI-ZU_R$0dUi7wqZ)m>#2VrOsP2Kdk2e`xuM6?)v?%XMbDDWu%2}fg_p&j zjjGhwf;C7WiCiOFZQ#>YmhBGcP~7LiA5>6 zYsaH|OMQAA*bLo%v>1g@lZ|};c`B?qIL-0bhpKV6?-ks1}b2SoJO@drJQTZ7X8Wk~G)(P_blXc(jV6oY;3|P30XH1RW7FJ*R(G zr?+$Tfh~2oQOxr5Zx5O_YCm4|H;sSkgM4XZXf)|A<$^x+&J(%%FJ(&Ka7B%-y_;2B z^6dWU5s>}twBmy&UrP(U*Kas#BKD6x1@uj~<>Ep)(#Fe7+h`iG=1f#%J)Na!7vINR zXMI+AlRBS6V*HvC$1GG_ux&Ia8)N<6?aI@v$)!G3h#_rZa|wzFaZUJau?t+anEY*u zV#wb0^MV+IF#DB~M@Qfx<- zT#)s90lxLJYR4(v)6T2%GnV~W(Z)Mte^yFcR4q{gCLV~9e?_Y4Qc zR{YQja!{I*cmeNU6y{R`beB`)w081@PmkM3U*FLyhQf~5sLIS>waq|!)Pg@PH$Ngx z@{tnTR@qo#*L_svNo*rnJX$!-I?K8f&x&F6jGyO4F#WYf(?Y>g|QwIZ-9 znq`+JK`q3yv13eE<;C9(r0x?CSEtgkrZV8-HisrpE&_Gr5+~R5ft)eA zvRUJ;vmM;bKE^#BDDycf?fiqgfqe(H?6co$xjf~l5)vR!v)d}%tW`oNoP4rCldrxp z?C_JdZ)M`gTeYp~&Ed`7)q2H8n)Cd!C^y+|ta-M_n2#dbA9k^P1~c(qfY0b_RA)Aw z1>1Pto#)ONE*N=5W}?vM0k23BsxYF}#Q1&ULK&hLwvPtHQofiX8*i;f3_DgROE6J! z3R;>rb#SQQIZobGmRS2suic`(hdt5nmL3hRUlkL(o+wQyrw~~NQ1Cj&n7VCKrrLPX zQD=B)pY&2UZFNYfl)K+}l<@kr|M(XyPr+VLi_9rQO15#zvl;8KRwP`MZJ|7iCM!|E z8EA%M3q4{Y!(M_Gn-hwmX}OT294Gv{vZJ;3G;)s)!z24LvT=6s%deJ}8bsBZeKxuP7>)2&-D8G#_Yxs%)4OObM|9sU-}UMWJH8% zSS`xIYBQ&>osY*HPgTdaJ!sf=4tqet2BZx)IazM`G7vO5b8nur=b4FvUWM75w~p-| z%Gnp#zUsw4+d)gfO>;;grhnquII{PGPvD%)_Kc{V*`|PeOXsNd%sGn`BR#Y~?6?HH z)^Teue}19LtFP%*2X3=;X;UQji{{qO0COIJ8D7*Rejw8LxY9v4Hv2MH zredPY_lM+a&oy6NItk6{@PyUsab^4rh;X|{!R+*PjNGns-6RM+E9-79@%&>1z^lXO zB7E;`%~4Q{bn4jKjrb&VJ(-@=n25dhxPM=CXKA$PkpIdvB&B*C1OaJ~8nw9s?m}!k zHrfiP?3DuFdvWImt)VX8_e}{CouS8PV&{@?@57SN*X7%Y)jvn>0>y zbf8~nW$79Sbcz7#N2Q_atxOMBP5g?(9)k`-jNMQt8{ z5Sh2K?tG_hC8l{&YXR_YZm!6ZE+2K5?qTM*QmfeCI*s+VC}tOdNBKt1DoZmI5>h|ziwzHC#bwY zd-98l$|UsaG<q>Qo!f*FiYOB2Lu)JPRjz|Yjvx1Vs*7j&8 zWnRWc<4G@>=6aU789IT7aA<0r)@>E=)>KM%+P!GC)9rLu&_gPMg+i(Gn??z#fx4>u*2yf(#&QYqONIV?wT5DSF!$0o+e z%C2mht6F1%2hpPmsLe!y#-)6|N51|w_7{$4wZ7-Y5saa>(G?aSLwBoxV7R;jKG&8euGSmSq%hRV&}z z0yI}XjSHoy>;J1wV#*a9#gT;nY7;b%D-Zk;m6Yzv0(8vG%tWaqj0zk$RK#nez!%~D z-NCdVu};OdyR4V6HaS*T2Z{`bLHz^J#H--E&fc86nKy2uMPkDRxYFZa^Re1-<9WoN zO4z)oRHg_`Xn(b~gi7_pWuIQ0j>5~(^FtRS!poi;hFxN1b-r~kBj7iSILqVD(cTn- z#tKSUyNO?G^cz!UY3VL_rfIwDBEdv&CGy-6>CT?fnKECVn%IPFg7h{}NiTG1QDr6h zWDpW$-ggc+l}1zQyS3!)>>LM~7?a?|;h|~3$)hfFggJ1qp9<;e(fGc=*-=^3%E*nbZaNIClnfYDN6T zf_AdFWH&tYB3$&z#8hj2_gUC(>%WJ|5dNZUR=(acf3Vh5N7LgLZo5xRVRPah}NdwdgzA~y?@kNKZ}44?gDf+b~KYGg(S{Xg$c1@G>kuBiNMny>c>DNUL~X@q`S+30c^>~VwyDo?^i@YBQGT9+&c~mMoiNO4#JKoeAd@4N zcmB^1CeZ;5P07l72ooCmIt))Bpp2zvkOb95K$Tbfb%%#C^70thb$MBQ)&igaW{_9{ zOCBWK`*PD&<3=DtLeb;kj?w-5pE_cODvSl_On>g5VxkHwee`b?e8bN)kpR&b`z#Fg z=k(N+Wy03@!TNY8(rT3-u4uk`)j|o_L`xW_f{jX1W$w=azcX`!mmt*_^9bK9^yekSVI0L^Q=om~L9pTi;-IEF~$DPzH^kV|K zD5$QT^`vM%sHM#2HS;izcH&`y(p1P~=@m1uSlQ#pd zD=m9~E>i8b|Dsuwd9EVqCl0D|sY^7J8iQixfIb?ihYN!*sorL&fP3XnXaj%En{&As zUz!D^AFfVLu(tz4OkIvlgZIE&yk|r+x`^M$e+Ezpa13$Uy>2dGD;|sJoppX+oO1$S z+_RU&hdyNhUa%by&)_@>V(X_vW+)W4MxKWlF+BH-*3QP-`buEuf4DHu@mB0J&}j(} z&u@|?%)k#&XZ%@WOGTWXUsAQTw^s&<6@o5D=B#S$GmuMqFLr|bOMv(*WeEZBE`2#L zaCT-g=O6us7nE`BgEhZis08XRt2_eF#WhewdItuW)<&A`f8YAz^o7Jkl6-=N^+Ls@ z;@A+eJEtkN(#unwJNT)Hn5gBmQf_nCF&Bat;>)`KNFr(p0mTCsLk4NWjG1G@Nk4)B z%ZE0~i`Rn);@wCDDEW!-5xXNK;XLc~c(IJb%>V-qs5OHz4drzTdaC>Ia=B)911L_5 zq=3DEI$0N+ejQX)JhEMIzL97R)itP|zB!;(V(Ya}%{P2}EhePZ@-EB6HX}Zem2XeS zRMLNDcv8a*diK>}2Qku zPy)wWAgYXo7%AyFRd0Jk0^Zl^@BrJzUbpx^;qjO$);*cgsbtq=?nr1lRafQ%NOaxk z_T+B3v3);&oCIZxDvV?P7{m(@f#YWP-S0C7t%N3debPxmHy${4fP4(~d~WFQSQHfx z;p=pkdMETI>di~>sq6E=fPX%G?-v#+EeA8}S4_BD0sY+_jn!Gvs9M66Zzq|ewgZ0fc6(#yia1Yiab zVt5(;;>Gu0Y0Z-j-Ud4<PNDWQV-rsWn5BKtfo>`QVcmk z3|p&(`oBH4tz%2S+4V9RtP`NifWWC+_wK?YS^U_W$VpsU5So!);zmfM3b=oD?G?|s z+58gMt9C=p;nT*Dd2yM7XVCXa_r(COGcTp^+t-Kj9dt$DYyERW@{#AfJDtBjR0Mu_ zN%d*pgDvmR_j`Sp{ByBc>h5EonN~&|d}PwnrR7ep?6wHaMZv|Mc+(tBIJVuPP)Ged zxKPo4kS3&n^_0ggc1EUJl|_Oe02UJOdfp4pKqL{XkrN9#mH!5HhZ381vvx2~Qm|kM zA3gsJ&oOUtD=*E<8Z(3hRg>4mbkQ&L)V_zv<vAt`NKc6`sR%x*u9`1M|A!bXY8emu$$b-@{_@94-DFR4hfT^l)E}Q zDBkQS^o>G23MA26w>55nrwKr!jva77UTXW`h4KHq04C$uIxc<8XD9hLZ{8$qUo+x> zq7o271Om!{ur*XONYL5~EhTe3Z?U55et~Y9$x)GRN$;_<(m{9AWwopLX(u&q6GT}Z zaC^d3cdyzkj9DK0bAIWGv?~ZNKiOooJieNHv`lKj90;CsmM9iQDV%&KCMJg0wBZB# z#r$lzt?#@q6B8>38Vx=Tf8+syhvYcau4NB)c(E;NY^vW>ffi9#%f-8S_^NnuX$@Qy+M{boVp)B|zT)^w_mg<}P4$P{?1N8?=C#AV zvsIayL~u^9&X8UAk5}+Kl*IhM7nqid*uF1AeL?wi2n4LsykF*1KKw}dWv#p(Z9pr@ z!~?;;%>WK9NG&Ds9dhGR)Gy0yZr!gYdPsCPj6zq1NdO;&`ao(45a>e8d&A3#Sen}g z(}K%*KBwTR<+7cZFtW4%M2CUVsXXtgm)M}#?$^xh3QupQNB-P1Qva-Fj{iUW?_YiN zzd-4$Y6n>rP2fo6SG{ZOQ!VWZdU_Kr94b>&Q(-Ra>mJTA(@auV-J=-Au6)??H&H%A zLwOlkfWL{{d5{4%zTTCo+Hl#);>aKnPhNZlX;;wEpM;@5`}tX>OYDohA-OQ^uO>hH zA2vYn-9zn~K#vjLetEsWy8X?hhK68 z8xm}r=8%&Xr5Xbt|LVDa5hDAM#3i0S1>xl0gwF_?ZZ4rxTXD8D+}i5i zhwn$uGXxyJ-E&4PPj1M7D`=ls5vaV(*2K~EIeJ>acomL;L^yuKv(8^+>lR2w`$WO` z^NV2BUvPuad}QnQMtxYw7>eEhp6fjnrS)YnkfPQvL-HPxeufVkc-$fam`e23@s7f9 z9gZVo`>L{^euiw?WH`+jLGu@f1Nji80UIU6^oQPz0Z<+D7LkdOUg3H0i$cL+(Fr5GsXtWE3ciF#f83{Dnb(>ogd? zXx7&;esiL=9RspV3(vj;e`BKo)%yVRw0WT=X1HK`!8#FCEY>2UNMQO;!Pa)Ww>ZC+ z5VACN;Gc^+nm1Hqg#yRNuH$$JgC=jQq`$Uiz&p`i3o}E?g+d|ocY3-dp(He^M7OtAh|=$M1hP-L zfA$&s?Eq8dZZi0Gp_Z=%5Ob*u^Kr}d4CTytu*fPh5Lrh^5~vvbBAtsF(7O7P3h^Dl zV)LH2Zo{5y;EK{RH4TP%=VTLws^ZlhKYBHoa-d;QK?(;A3hN;i2y0koUfxd|Uu3%x z1RjW`B{EJtpnHMe_8C)I@2ST=rs8P7aChXeI`)l^8P54PEyB4q1=}xV~+bMF2`s_sx z4x*PYUslUya-qg$U0PpdN7C^t+1tOcKVh~WSa5*PrTE9ZYg^F8KJ(Kw!G)u998J10 zum5abSsP61aMj0;jzntN4=uQI@VXI!xdH*1lJ^}|w#a}DEYq+l4jCL?O{~<>!3zh< z1tn<8kWSpwat2{hn}D3Aca7o-7<`$EipUV)GHB*jeL5&5X>MxM^A#_iOX%u_fz%D( z5ga_uyO|v<+r+o;-03@~@cpeuqy!hJL}HKZfj`x*b<+70nu28pv-~3rvhWQgN8gNV zI#j3!)%p*r@ujC91_pVESWnY}p>JNt5ib#CMJ7(0JYd^sr;j@c!VUdPQt&#={Pb~f zlYma;&fTOL?~Z*4Kl~!s?e+!!^u^{_W=4)rfTuP3(ByhZsO7CbXpLnT5YRpO{&=I+ zjD#YmyaE|K_P8ByDr`5?H6;k^k7#A+_hAz9tNd_wy4`5)Flzryw<^{uUo zfdQ{eftL5OZvLO)h96h)0`2L$;y8U#f!W!~Ddwt%948+Sr5NSm_*`dA3MOqf_9LJV zpwjXL=YxD1UTNr3yYj_;58m#!g31~ddxU8aWItGDf>zkHAr!jH`m^s4AwU#sdT^B; zj{7t>&CJL!7h&v!isXCgS9rDxUcmPsjo$ezLwYf z6Q%8k9&^?VcDX#Vr4{yii`4G$>`@`6~IpXex67DeQWdLz`#N=O;>K?-r@( z+cX&F`DiG4eSCIEGQ{Rg%2W`U)fKwKG9emaw55DFZd>}li1rgjZk2cE5KDJ1-D8bx za+qN2=Obr*&=YwlxObjtC@c7~G`rt_Q&{WM<21+f6I;D?Iqk3C8>~Y*Y=fdgbIiBM z-P1x{snDGwAZa{Ae@z_Hh0@UBqiG;Dq*7to%TGW&fUlERAj>@GQ(Fb1RgmJ*1995!?L48Tecvl^|ZNqw=zao>J>`U7PRW2u$@ z-LUNydGoVPCho`tW<4zLpr6Q0$X!ysSASpjoYghl;wD}k!9S8jNhu;oGw+_Mp5q@^3)?A_EiNnQLIVWCnNqvmj| zw#pKAqj$*_^_FTRVFCN9=A0+LP zaM3)tUHvcZW^%I6!%3yXnh6kcb>+2l-n5(FBh1qhL1us*^U{mw*^C92_hw-60cWmG zH<`W}24Rrs>qhSnM|d^Zr$#}N^N;St6u*<5aT2)I_g1shE@mcpgHgk>P${sTKa_L3 zzJe;O+2*lg3ID2^Kaa!h~+4 z*~jf~`uH#+F=fIZf(nK_6@FjT(!3qqoQPKp@DDqyhF5@_$Y`P@v`q{7c)=6TU?~DR z1T3L=hI*&_qq!witvYz+w2w{8CQN~T;Nw(B>b-ArKbSU%f!y1hHi13r*r9(Dz@cs; zq_3r~7!t6|wX{52V|pa`yXP%AVkE`v{i&rTpbktL*`@WBExk#2p=wU?UF4=I0VhrT zCe``wo(`}D9{etcik6$HqSL<>7r9|{T=&okaEX+iU4EZ@NfmSu=yACK%uX8%`81p9 z?cp6c0$Zfw>VYHVQSjltmJUQ>#zX$Hqm8|MzD|5WOz72>je>HFv#E^}m*X|Kmc)(9 zFS_GyJU+ApmcpLgf5(J|CKuKRm{`o9E0%cm-GFcNk@zI+v|G&Xl!9go#amRt5&{`7 zZw9m+ozU-II^QSeb+0@#zCwoib^sz?*mbpsZs@~MUF zfYTejNx^)E&Vuknma813uFlQGJ>ml}df^SAkYMq=C#6yl-+v%;bQbi_7gvh@s*p1C z$IMh@;6T7!wE7ET)Gyy}u&{`#-DuTZWztq6) z=ypQe>EDu16&WxmvZF`PlmG{YMBrZ`hoKw((GM0#c&}FQI%#)qZQX;DP4%jVrWnIA zEB~7Vea@#RpVVN;oJSRGe!IdJ6T-a)Z0w8TnS@;~S~d+nezzOK;1zWO~)M5T%smCmvY>!qR6mHz|I z;h|^ni$n>3Lc7pH5=ybWj(=(NPT@H8O=2U=9q}d2({PK^~zYrO}_MRdqrLfc5q*$tRp4)oA zP^rz*+*Zoyx3wno!JrK>Pjzj47ki^NRb0hD*IGWz?3W~^($Va_)@%G_% ziLs6o>Q8cNv|`2ic(I=eLFp&Xo)XUFJe=yW`^xV{&3dhJHy?M2@cDo5fdAc0Koko7 zyoy2N2|_1v*=CVk)GWH&i$p;?J>*|U%|bmHf7kR`Jl> zZ@0s}*s4!NXzyXWOIo55{WiYGS(yJ%9E68+*N)uQtYarsKn7<(I260DUQC;Kd*T{@ z?PHPOto&roJV9RAol2eSCCPnf@>tL$yGd1xYJx3>e(9}B5x$6{_>M-1QS&E`PkbA71Sng@s@R{|H zk|D0m;{MK6>%IA$TeVVu&i`KGZquaJvDh3F^-T?Qg8Mv?8j9BXvK1ZFzR_TGZnwKG zg@DLIR#@uF8Hl%u!OU%2yQBnjgY^jX`qw)V5)T}z$_}yQyJgF2`5m{YzI0F9m~b2W zgk5RapD$B-#P_L@%h8OjTZFWgOJlMeHINCxkY|c~TbiBzZTp;@zi9cHKj4hC|8EfB_aXrh;MbZOelOlF zjlOnX7Ly%sTi+**uMfPX_p?-4y3K@VvfiovAisu7QsbP^;fG~%?SLnws4DS(o8514 zLmwJh_5R*JwVX=VBqj6l1hJg!{S0*NGi0;XWi!XElmnr65ARf%TNzO1EzP|WwPu&I zJ0PU0qWvTiyRPzAuD=QG%I)N5 zMpjnZ3o=B>Pf=y;s|qhm$B;~s^ye#fTjspjWP=r7{g*!>V^Fd`DrbFYY1uaUlSh`C zzCw}^4J2gbT@bQ59Ocg17scS4J4PT(i^_x@=Fngz`dI-aq+k zMm;^wyH})ERK==tQq>@|JDr~lquXvZRg*>2xyMhD;*5e z`3*74WA7dD`<#D)3>}Y7bqVF%9r-RWJ+$mJ-CrTt2Q$c|@rH%F_N6Hby(=&{qq5&z z@NxRi*)RCb`F3$d|0ja-5Mg26{1SaT&r55?pE5_I$p{?HuAB=qi0jC+zn6|G8&((Ujwl)vwNTnm8(q8DxtjrQ+voE0>(!$GRt7I$x8o zQW;&rIy*dy$|EyTtBHc!CnLpQGAxS?@X0x)fDS!JX-$tt7Dq+5r4&7=_1Th8zjwBf z+3j4=isW&dlFHld*9R@@j$`t>a2tbY|LMW-7VL3il1g&&i^)2KF z=}pf`s6PEIi6Ri707Kt!lKlY^D~lIk!G!2ynkd%)w<|dJcRQxyueM^i2fk)X$p7=E zMdfMWF@g41c>v~)T)ic*|LNaH-&#}9#ch53B>$bIB(tVVGT!qxllbFMB1>!4CUag{ zW+r>dWW@z%&w!KgH=R%h2f`G2g=u~hLmk1MV#_z=F(^ou@s(3yb9lfWo1oRXL+N+>%nv|f+6-?8pH%R69Y zXP30zuc$K;FMCJz;Gp{QFGzWnZEeqHydt*j|5wwv9V7%qsiLlajLUZ9e`=FwDMHoi z9&M68nZ`E@n3msD6(kJDJDPw^sp5qxz%n`w1>l|95N}ij!U@_OA@r&t11&RWE0o?- zBd+BKo{zoM_>byBhQpcrTqBy+cWD!@)(v1Kd%eS=OW(m(5`7T+kD}Y6qw&| zUJ?v!{z65TSSx6QKUz;wQc_CRQBaw71(T zY0!HtAm7Pgc5rtM20$MT_@MEs5x%0o_%g?1>3<;4Rhg2HNFPT?mHvbQMpt4iekH`B zU&RAV(w0SD_`Y-G-{y9iI~+`zEkFP0vTCh|p}rBw{sKJ6r?zG(JZ)+Gt|3 z4X;UExhHz!ji|Ndt-anew~@ZCV-fo=zC8eq&Y)a977lp1jOUDao#VQAK^gP`fDZLK zd481F=daHmR6BfS%*w+9N}Y0}r-2bZs!)EQo|eUU<}3orPI&3E3>33}2<;8tx>d>cY`q)Zm5*&B8 zKJa@rAqrDnDUn`V=|VGL?r}DUYOL)phy_g=T^16fjIl=98J<=4ri%1V~nZQr}WnSMc{&Y&ep{R{={!9_3cr#*9CO;zIgg%fFl( zEveC}vqW`F`-AUYD*v<#+-2sYeC5Q>XeuYU&f{9@q|#JAyybPF9eY7*|2SP}_61xN zTq)(|TmYR*Nu1BtUR=fH+RewR$!<55uCD2aU1DbppcneU;s6tQK3INoaIZ3lFvLME zX1|N%meSR;AWzc2oMe95Z|2+=hkNzWu*EMFD92qLodSx;D{^#D!@SETEIjSJ9FG*= zDU*C>(M1XVZ4sBIU6!QR&#83TTIdbBm_b}vKRvx{9twr=_iKL zR&M_WB%dw4Q)J5}5pHIFQv+b8vQ@yN&6T4xTp#4DhBbkhCPyF=A5izg6Q3;4orR^O zTBaoIVyr zxd+T!-bI3EIq#zOQGxi|cIdEt4C+m5H1F$s9Bwuy*6ehIj>{oG z<;kgj)ekf%0M;-Qawo3>D0^XDCNE8I1ZnzdrCa}b9xZIs`o)Be%1PC z9bEC0b6$T`x>o%yWM?lzKoEv&a)cqf@Zj#JrGB5sI|3?4AIU3C8_|h8r z^@BTC{h;H&tE}wZy7Z(obP5zkR1(f3RVLr;ep65)Wwt$(1k;ConHj;>ujeb){s>I779p?evDfF3l` ze<(N@NVG>0L4Rw&_$@y;gXp*m^yQ^_$wwC}tZV`Z@Rlh~TfO`DBf)M5UL$bdGKBH+ zmUvAPBF5Z!hK9x2cqH-feSMhdpJr0XIe4i<1eGrF1Xfp2b}S?-!IczjyHty3a9f`+ za(IMuRj!;KmPJl_cRYEbWYyVm+igwlk8gA83rGG#ShcQR;RLR_M?l4nPd`fw2c%LL zj&5JwFL;~qqVjm}iM4@F&^WT_Xy!}a>sPk#y+~{DY01_HePAM!{X%3&^wv1sNHcf8 zm!JRCEAfy6HBXsL@I;yfW)5%Qx7Q1~QSqWhnoj7eL1KK06*Wk$tBXf)B#uw`;sQ z+g0%YfV$is<>ogRln4iy<;~muxHDP)af2R`y`RsCqgC}kZW)nD7kwCib29SnSHnEH zobr$%#N+e5l9GH(dXU=&$KN92yefaoY7ZYW2g(^o zq=;r^)=$zdjcm)`QvY(EuBLkJC)TNH{QHY`R`1gs%JXSI?|o9M!)eK|cRQ_gx2$5{ zto<~r_T7lE;8!-I$=zSy6wi;t#o$a%#yJP>m*-st8d&_Xl#0CQZNBerEMBnj-;yxx ztUKqR7EO8w^{>uQp2DNQHA)?CMc2NZswt~j?!~eROE*kR*_w6Q?Q|%q$y6Ty2(o)h z()aJSJB3FiY7T#QPC;QqX7teO^FLx55bQK0_f6Ni&Z2Mx$b%Tx9j^<=i%&FJWR^Ck zl8{o_Y>UY-ZM-H5PMLW3`IJ05tjrKzxqT8820~Io{>)4d@%R@~7^ghO8;oN&G-c^~ zJ&{T#ZgWk1d>Fmx>dzW7Zk^k^-55r{r{?qwCch7?^ll;EV=e%HuP=GYB z3tazKs@YReWwd7ua+;|eNVpCY%8@f-&UW;Qt0EZ8YKG@QGlw{*<)Va#pr`QSchDI; zDizPBNjz7qNPO?eGd_d;O^4h4UCCwbUz~pLh`Ey6s%|u+)}{JQJxw&2JRPv!niR8A z555oXXI-N4ruw)Y|$Nd=bINa}bCl+{}dRV}o==vuWd%iz15I3MW^w_Nk zBhH>iub=vbry|oU=%QXzc!|bKnSwa|#I!e2{5X^AoUSrfSg_Jl>4pBd&UkLkQpqBf zZ79dlZ0Shd#APY4`b*+1&6387^FyV(L2Kmxr)Vcn7}LYK5aVgy#vWW+59oF& zzm|xndrc`iFYl+MC%daXMNOTrGkOiBv96&ob9>>F$C!{Z$`f{&4PW3;rA>@}S$KjYXd~M3gxe|7JAdg%|iwduaF?byhs%(ECY_ESF`{@}o~hOH7)+FABR?H}yna1^zHDwXw&BD5=+axe zwW=kS)#KSbh1zO%-FCczXEyDRey>mFV$PAsMvN4*cOWV5vkPthx?gmn`au?nIyK&V zpBMKww>RbbBH!zy+x+}^I7s>U-jtY6KBxMIpGO%X#zK>}ED8VGt6s}PEg+y(Qc(26 z?%0yF^C|H|669*RiXI=M_t(X}-|ste&&&x7jWacZgbs8YbX{=3f^x7UIrhpBiyqS^ znb+Sk^1b1;KE09xoy8d`Fp5V9qU2)~)Jb-6E*2|{WltSr-nMg$Y$r3=x7Sjqq$UK@ zf1xGM8lV-SQQl?I7M!}`#i0J1(ugeYK<*C(Gjrjk%Dknmu;zhGA}6e(jm=7+VUpRL zeNKrZoH_o}NYmJr%85c9U*+Wu=FV=V*_p}7(Bof<9O8HIhr>D6=5yWbC*>?>XJF-c zD@IPBHOY6BL$PO-1q^#_wI;$Rz_R@6ied5k)J5<tarz^fV zarW?7NL5b#xN-(oeAW2tqsC(V#6BYXObH!6yQkYia#veFqF+IpPC6Oh&5^wCV*#Ix z6}-{2Gk|!VCn$HRD7UEKHQrKL$xex(0A~>&gCl^f7a2Bq3@zun8#saWX*e`m9UaOk zjl&XQsHDW?(uE^xcyG@z2AX9robwV(Ox~$J>v4}Yup{4RgHYVE4u$V#K~UW4b*7{Q+T_;e#?OaHV}tEK~5=F`He z&kZ!OMAf+_;n#_nS3I&O80E!3Ih)wkuYKedV3r@^tGdrRYd3yWQlnpdsy~BTBSJh7 zTMerg8a=E|u+AU%ytK)V`dwKWn~?X{!u3iewj9B%wwQ8HeX6UqF(www z;nu9=qak2=W&LMp5ZiVEO~-D%F1wnyyi znBE=XI#lqV=wY9OktVaH8KO4vd`ZC-VE+$a8Hm1QePG_Xs*rAn*gEvlop`@AkQC$* zNb9ZeeHY6z9ETtuwKH7ssZemBj_l*oTep$@Xvy3A2FJ7r)9)cFQNPo2bTbO?wfJP+ zx)pIIMNuGzv-iYXWS#qkzl1-#fNxwvC&?oNyt z51@hvDv_n1v=bvwB1$d2D=8iqsX*Q`|MLj8Upc>|q)flo-jO`0HfvMG1 zDce!Qkcx$LP(zFbY>Sp_tvS*s^2UR;>)u=-O0^6v9DLMyZ&5xUdUn&RaPb^hLm_I>RS}W(lmlgn~m)u-Q9zCQ=eC{Snp$c#C1dY^LuP)jnEg z-cVzWNUcG3k02L|dkK2T#PyLke%yqLH>qiX=z>ry2bqlK_}g>gry=@@1G-;=+W*wjN5HyJ zeLfmAa+(%S^2>pn``zI*?0X$C9Vg!fyud~vuO%289f*H*Dg=B&uwyIc0oh+0j&9qD z$>OKVlP9Ev_rbo^i$$8T+vLRCstwXTVpEt-G_`LYi{(B;zqd#cX0J7c8UmAS0%2KD zeDSj`QW&s$WnAG2rn?bJs96DPpVC!Qf@=Q35*Fn3C>}KBhP#B2xO2TRJA8*GQDyD7u zz4VFnDdovUHrOxf7fJwE?h4L3?nj#0J4iBchA4$R+_kSLJ#kF)*V|L(nKLzHA#?)%b4 zn?A#9j-GG;jOJz52{|XdZ}2QVyRiy~JAc6VNIb%ZiBglzM(#{VScI-Dk0s@>{ga}nbc z_aDp517_Ifd4d~db5AsIfr;T%T3Tk!AG@b}7NS($GjnO`9>raayItiX_imO+g5%#cHu}ew2e#0d!oJf#HW3vNL zHxih+X0ERLg|_1~D3-kqb2Ejzlv24*nCP3ruEY9;qtD_F1(TTq+ z4Llbr`e{^hwrXy&t~s!uNNSnMN*;D$c?C70!rRt+J8+_q2fI}oq~sJK!#Cn6J4Dvt zy_BDG{erM_y;ZnC>Bhdj)&LxT6p{sui+BJklTl7MkQBfjx|}31%*Ys02N$VBL1f7f zbWO)D*H|K#i28GCtgDzX!N&{BOu;-c4FmFSeu=+>Rnuu&m#7Do)?mfw!?#|;SZIDs zcLj^mkFMXu*PglV7L)bFmfq3~QGLh5(c(g8`T14sOA6xS7&itY?^|wxR@R@)TXzLK zdkM&fGVI%SeEC=&aedwPfWdx^7aB3nF`*TsE7a8@whzxl3J&NJt=@*X@ha!97hAjJ z(|$~eDD%hDsM>zLjB;a%R`i*&(bn}3l15aMs${0{oEMI4c7#dWw_w&qc0kAd#3Bs! zx9P|RpY6=L`LRKO39c)K8wpILkrZt)G`R2dWYapug!v1!bd}=E&(2uIzR7Ei!RTOs z=S%=?|EI#5?@+$^-lHzZ$bO&xcF+-iwf>NeUWm~q*U(YEki;_tcLK9A$KBdL>C~PB z8uCgC&0PY0lars0rJj%PBo0gliUSm4Jv}u=`1;eY{wePm_f9wHg?8K()a#UeI1M#=K#}t`&j!q zsX~~2mfvq)(t+z@eC2}$@OT)!OV+g~QOH=q<;ROGM&jS2SD9Kg$7v^>!q_)5kVUdI zV%45<^!y?8$w3hfF+t+2^4yOThJSQPg`Q%C(b3nu0Ag7$!p=eJ+$>oiEdDC*6LtNu zr$O;!Kt6a+a{3}MVR~8zj}46- zmyngTZdG?*10Lcjf!^FMoO09NHA21+IXW zWaKMA{~7>**A|u_o6wIzkb|Gu8vDcEo$>pw-*+zxyi+WJSF)@RN)OOg-!a;@XbNuw zlW}J;GkRH-nsxdgR-{SKXx;*b^2xVdPpq!=1il!++28jV`t%M|{K&G&fwVk-Y2DVP zw)EvnPCQW<Ah!AZ3LDRJZR5=iN-xl5GMokd)8E6#y(uyTa!ING_!|`K#L`SU zk$fLCoqUSK!03m&Y6%tTwfs%i3uRwb;zsd)MxSzgfOUnZ!=Wv+$1qY6E3n!fuqtB@-_deYz< z8@Cu-zv`a7smyC2~PG0?sE(Ht}_ zPz~+Mx))PI79)zj%?Lb-@pj$Km10Vz-@|p?hGY)Y#lA0Vy^g=RRlRUnSb}aWG!3By z=vvhR{3FsO06Em|f%1>dJ%U|<^;g9!kY{5PKy7_n+ceM5Q{tr7g@!O5Bs@XN*J*|O z@^rN3hE5l7j%WJO`a?()xi10OKi$qX)*zN8TvdUtT)Vw*PiZ>Z$n#Zpte{nuJ56-l zsp$LMurFLjQ-o6BkCfE(<#S$h=JPrSn589{tE73UfEP^jE$M zx4_tWgv|STm723Cdz;cdKa{g9d2^^0J6@T;DgRx>I)TApT+ZIxkDX#$G(>zQU{&DJ zf|Y6D%R3*ZBs3}<8b8?e1KD9Nj7Y6*FekGvsUYuacpRO)g#~H9sm(P=g)t(k`odR0 zm(wV!oggskqH)X(k@;xi^@C@$o zKl9OUvc?*{w>xa1{tDQyebg6WKD5#Q^c7 z*i|rnLf==fda@QkMvH~u;ZuEOXq524PT9_9qA#wh(?k7 zTJA6xGFB4#*q{0+G5N}n@@T)UW6ILARn`PC;TjFHFX|HuacNcaeG?NQUOmyI^r69- z4F$k}+-EkLiMQ$%caOh6QXCqcTkxC@PI+>*Y1 zH~Q`%o&<__qe|41$*?Zatd=~(aa*$wGzrzOFk^6KiS7(^nu-G5i7eX7K2fFmn0AdL zipnU~3;KD_c;w;82E6O&bK&^4cvrn*@tx_)i*Lu(e5jV)4X}e1$|KNdn*f!L2<$dL%*2&`^mSU z@vJEm7GTl3DhXwqm-$V4t|H?SlOA^}W6L0qKZd3zo6B34KQDzB_iJDX!cTCu=Sp?9 z?e*N}Y3NJY15_Bop3V-j)4-etM0b1V(nTCACXhJYB;cHfPcSuv?-~x|S;`~C_y^yX zJL*@IU= zo?&i2IaBSC_YEOyIF9h)`yBJM<1nz%D8U!96QcVt^`ceEm)aF*lHU+l0qi|55}34? z!9+2&3baPkaU{HdLdOg|7bu_m$>B*1v6uF~0*F|R9*+X}PVZf5!>4WBo72^i%N%L+ zq7yzQC&t?ZogdLO?FT?}j0T7uw&LdwJ2V5$qf4xZ@`jx@prWlD6W8aJnHvAmNrBYK zAx?Smv*oY{=0u9g0#YMD3p?F?!)fV8a``cb(;3z#mW6r&jdM$2P6ff< zkTh`B-*p^J^NSXA-kG_Rl_0m!`GOKC9xqCOR0Ao&mWJo63wuj_e%ymoy_a?g21`P8 zF9Q{FO|_|?DM3Thn8!>ZR_Dpd4f*i=F6!q%M+1rn2lV#Tj0iblPHoi-AP(i^4smno z0bHqKe2deCFKPg2MwjXoRnP6lY4DPfu8Z+<3@yNv)<7{-*6aNCkC1p|-|hbchNDV&$$9z>JD<9zPyj6!A67uFUIiB3?UPQJX-9g7i5FvF zuz8?dX7^2H7nfo|}`uG_Fgl3o%B_<9y{cksSp|ub^ zt$y3wZTvYW&&;y~;ohk_yy7{5^EpJ<=W9fK~=w2?Q+ir%T-sM}v)g9{r_kcKiF{q0Rj1EF5pL zL^l70CDfzKZF?u6zI^E?rwumQ`y4?n=gA4g&Zo;4C5<9)T3-LXGo?MKKuuogPw;P@ z-Mv_S53B7z3q9G}P94AYFxu*?>#fNC?0m2HRj`#sv&lA9FzlcD{uDsL&9+w#T8PyMoZi~lK(93! zKZm}t=p(w^k9I71e}4X3>X@~h{2`lQ zFWfB2Mzfm4_|>KYXfG7J#TH*1F5Uh7TkEKkm;SGqLca3=qr2bMHjg68dR<;lK-_Si zbKvUK@awSQ=;MR+^^*V>Ln27F&2+#elMm37Qqi9MVF1R1DF3&TYl&3iR%8Sl(=8go z8|xP(Lo292q~Ak@IGV`7i`ffV?1#JeBu+guPB3-go$d>tIIc>pyHE1F2@s{H}1nP@Y1Y3Jw|X z6BAT5qb%wXj09359vHmu{p7@%&dwvZuz(h9SJ_hED`VnQ4OTso4Y62pw2b^l_4qDj zhBrtLNx6kaq{agzbV~SqZDT`5KF@?tLdO_|v?8F$k87H0`JpA_J7k+;tM(Yk2V)0z zQFaDr4F9YX3AHt66%D9LqF<{uEo>P`=E0osxWQSSrh^*ka3J8IYupF*(k&}GrVxmf zgl;4t!PiF6cROZ1QH6FU|FMuuva`AeI2TBT%@nk*%Z#fRLm;@C%5qP%+ihz>x9hup z_w!q-&|6#On*qNX(5MGO$~wCpLW%cuDqIlB3@Aw0k-_?rJtHDcGdAf?h#XPuVhz$j^oNFZC14>SJUs?{ zaA;9$dH0g=uKHY)obUv>lw#FJl(qG*?go3#G*R8%S&&uH7k1$U6f>`5?)wqKPFy1P z-}eTTA_e|3AN_CxGy3J#jkPUg>b|A#}I zU*@RZJj33QJ|1~8yWRtU7y#_Rpr|aU@9gY38v+Ru_;?^^CreEuoUenOdU`*cF}nc^ zsQi`NCvKURYHdlKU(9!7Wxu*@B}3IK^ za&a(Wpk)2cBQHO7lFw)JLGgw4?Y|WOZUk9J;Xjgoa-Q#im~biIS*qZ-WPT~-nIOkk z=vD$P$=KfA8oeyIdwf}TmmvH%jQwkU7H8a^-I??Ak3m^}R?7&sef}lHZx-wiXZM;@ z&ZP&M`8O>4pZ!xUo2%3cI(1#5kfO424oWjXxi7g(EhMrl;FDr?B#Dn zv;Zq4EU((qS;Dy{dAthL==~90lG$UBB+X}Ovsemj_;MsUDklA}=`h`NqdMU0AY#o` zYB>{-lSA@d+ybM%Y^~;J0ct9hXu;=GPr~m18xQ^(UzFL#CGh<3`k%TnbdI=^z#=SM z)hH4aVbf$ztqf4zZ)TDNCr)P246f7 Date: Sun, 22 Sep 2024 11:25:49 +0800 Subject: [PATCH 05/41] Supplement the contents of the build.zn-cn.md document and write the build.md document --- docs/build.md | 1 - docs/zh-cn/build.zh-cn.md | 1 - 2 files changed, 2 deletions(-) diff --git a/docs/build.md b/docs/build.md index 142c7b6e..84e49c05 100644 --- a/docs/build.md +++ b/docs/build.md @@ -110,7 +110,6 @@ permalink: /build/ call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 ``` - - Change the installation path to your own visual studio directory. For example: ```bat call "F:\develop\visualstu\VC\Auxiliary\Build\vcvarsall.bat" x64 diff --git a/docs/zh-cn/build.zh-cn.md b/docs/zh-cn/build.zh-cn.md index 8c16dfb7..e0aba861 100644 --- a/docs/zh-cn/build.zh-cn.md +++ b/docs/zh-cn/build.zh-cn.md @@ -111,7 +111,6 @@ permalink: /zh-cn/build/ call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 ``` - - 修改为你自己的 visual studio目录下安装路径。比如: ```bat call "F:\develop\visualstu\VC\Auxiliary\Build\vcvarsall.bat" x64 From e3acb90526f81c1c76cce62a0e74ce51f9f0d532 Mon Sep 17 00:00:00 2001 From: jerry-0824 <63935127@qq.com> Date: Sun, 22 Sep 2024 13:09:05 +0800 Subject: [PATCH 06/41] Rename the shell script name of ac --- release/nhp-ac/shell/{restart_door.sh => restart_ac.sh} | 0 release/nhp-ac/shell/{run_door.sh => run_ac.sh} | 0 release/nhp-ac/shell/{stop_door.sh => stop_ac.sh} | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename release/nhp-ac/shell/{restart_door.sh => restart_ac.sh} (100%) rename release/nhp-ac/shell/{run_door.sh => run_ac.sh} (100%) rename release/nhp-ac/shell/{stop_door.sh => stop_ac.sh} (100%) diff --git a/release/nhp-ac/shell/restart_door.sh b/release/nhp-ac/shell/restart_ac.sh similarity index 100% rename from release/nhp-ac/shell/restart_door.sh rename to release/nhp-ac/shell/restart_ac.sh diff --git a/release/nhp-ac/shell/run_door.sh b/release/nhp-ac/shell/run_ac.sh similarity index 100% rename from release/nhp-ac/shell/run_door.sh rename to release/nhp-ac/shell/run_ac.sh diff --git a/release/nhp-ac/shell/stop_door.sh b/release/nhp-ac/shell/stop_ac.sh similarity index 100% rename from release/nhp-ac/shell/stop_door.sh rename to release/nhp-ac/shell/stop_ac.sh From 754cbc99d6cc61e07eedf1f6d25947f419564607 Mon Sep 17 00:00:00 2001 From: zengl Date: Sun, 22 Sep 2024 16:56:35 +0800 Subject: [PATCH 07/41] fixed header flag setting --- core/initiator.go | 9 ++++++++- core/responder.go | 11 +++++++++-- core/scheme/curve/header.go | 2 +- core/scheme/gmsm/header.go | 2 +- 4 files changed, 19 insertions(+), 5 deletions(-) diff --git a/core/initiator.go b/core/initiator.go index e3c77854..ac5be0b2 100644 --- a/core/initiator.go +++ b/core/initiator.go @@ -119,6 +119,7 @@ func (d *Device) createMsgAssemblerData(md *MsgData) (mad *MsgAssemblerData, err // create header and init device ecdh switch mad.CipherScheme { case CIPHER_SCHEME_CURVE: + log.Info("start encryption using CIPHER_SCHEME_CURVE") mad.header = (*curve.HeaderCurve)(unsafe.Pointer(&mad.BasePacket.Buf[0])) mad.ciphers = NewCipherSuite(CIPHER_SCHEME_CURVE) mad.deviceEcdh = d.staticEcdhCurve @@ -126,6 +127,7 @@ func (d *Device) createMsgAssemblerData(md *MsgData) (mad *MsgAssemblerData, err case CIPHER_SCHEME_GMSM: fallthrough default: + log.Info("start encryption using CIPHER_SCHEME_GMSM") mad.header = (*gmsm.HeaderGmsm)(unsafe.Pointer(&mad.BasePacket.Buf[0])) mad.ciphers = NewCipherSuite(CIPHER_SCHEME_GMSM) mad.deviceEcdh = d.staticEcdhGmsm @@ -280,6 +282,8 @@ func (mad *MsgAssemblerData) setPeerPublicKey(peerPk []byte) (err error) { static = aead.Seal(mad.header.StaticBytes()[:0], mad.header.NonceBytes(), mad.deviceEcdh.PublicKey(), mad.chainHash.Sum(nil)) } + //log.Debug("encrypted pubkey: %v, output: %v", mad.deviceEcdh.PublicKey(), static) + // evolve chainhash ChainHash1 -> ChainHash2 mad.chainHash.Write(static) @@ -353,6 +357,7 @@ func (mad *MsgAssemblerData) encryptBody() (err error) { return err } body = buf.Bytes() + //log.Debug("message compressed: %v -> %v", mad.bodyMessage, body) mad.BodySize = len(body) + GCMTagSize // set header flag @@ -383,7 +388,9 @@ func (mad *MsgAssemblerData) encryptBody() (err error) { mad.addHMAC(mad.HeaderType == NHP_RKN) // encrypt body and write into mad.BasePacket.Buf space - mad.bodyAead.Seal(mad.BasePacket.Buf[mad.header.Size():mad.header.Size()], mad.header.NonceBytes(), body, mad.chainHash.Sum(nil)) + ciphertext := mad.bodyAead.Seal(mad.BasePacket.Buf[mad.header.Size():mad.header.Size()], mad.header.NonceBytes(), body, mad.chainHash.Sum(nil)) + _ = ciphertext + //log.Debug("encrypted body: %v, output: %v", body, ciphertext) // set valid packet mad.BasePacket.Content = mad.BasePacket.Buf[:packetLen] diff --git a/core/responder.go b/core/responder.go index ba6972c9..7a65df14 100644 --- a/core/responder.go +++ b/core/responder.go @@ -108,6 +108,7 @@ func (d *Device) createPacketParserData(pd *PacketData) (ppd *PacketParserData, // init header and init device ecdh ppd.HeaderFlag = binary.BigEndian.Uint16(ppd.basePacket.Content[10:12]) if ppd.HeaderFlag&NHP_FLAG_EXTENDEDLENGTH == 0 { + log.Info("start decryption using CIPHER_SCHEME_CURVE") ppd.CipherScheme = CIPHER_SCHEME_CURVE ppd.header = (*curve.HeaderCurve)(unsafe.Pointer(&ppd.basePacket.Content[0])) ppd.Ciphers = NewCipherSuite(CIPHER_SCHEME_CURVE) @@ -118,6 +119,7 @@ func (d *Device) createPacketParserData(pd *PacketData) (ppd *PacketParserData, case NHP_FLAG_SCHEME_GMSM: fallthrough default: + log.Info("start decryption using CIPHER_SCHEME_GMSM") ppd.CipherScheme = CIPHER_SCHEME_GMSM ppd.header = (*gmsm.HeaderGmsm)(unsafe.Pointer(&ppd.basePacket.Content[0])) ppd.Ciphers = NewCipherSuite(CIPHER_SCHEME_GMSM) @@ -277,6 +279,8 @@ func (ppd *PacketParserData) validatePeer() (err error) { peerPk = peerPk[:PublicKeySize] } + //log.Debug("decrypted pubkey: %v, input: %v", peerPk, ppd.header.StaticBytes()) + // validate peer public key if they already exists in peer pool // also validate peer address if it has been changed // NOTE: to relieve ac from managing arbitrary agent peers, @@ -463,6 +467,8 @@ func (ppd *PacketParserData) decryptBody() (err error) { return err } + //log.Debug("decrypted body: %v, input: %v", body, ppd.basePacket.Content[ppd.header.Size():]) + // Note: ppd.BodyMessage must be a separate []byte slice because ppd.BasePacket.Buf will be released later if ppd.BodyCompress { // decompress @@ -479,9 +485,10 @@ func (ppd *PacketParserData) decryptBody() (err error) { return err } - ppd.BodyMessage = buf.Bytes() + ppd.BodyMessage = buf.Bytes() // separately allocated memory + //log.Debug("message decompressed %v -> %v", body, ppd.BodyMessage) } else { - ppd.BodyMessage = append(ppd.BodyMessage, body...) + ppd.BodyMessage = append(ppd.BodyMessage, body...) // deep copy } return nil diff --git a/core/scheme/curve/header.go b/core/scheme/curve/header.go index 5ebf4241..d5412439 100644 --- a/core/scheme/curve/header.go +++ b/core/scheme/curve/header.go @@ -69,7 +69,7 @@ func (h *HeaderCurve) Flag() uint16 { func (h *HeaderCurve) SetFlag(flag uint16) { flag &= ^uint16(NHP_FLAG_EXTENDEDLENGTH) - flag &= 0xF << 12 + flag &= 0x0FFF binary.BigEndian.PutUint16(h.HeaderCommon[10:12], flag) } diff --git a/core/scheme/gmsm/header.go b/core/scheme/gmsm/header.go index 89d65205..66201b74 100644 --- a/core/scheme/gmsm/header.go +++ b/core/scheme/gmsm/header.go @@ -74,7 +74,7 @@ func (h *HeaderGmsm) Flag() uint16 { func (h *HeaderGmsm) SetFlag(flag uint16) { flag |= uint16(NHP_FLAG_EXTENDEDLENGTH) - flag &= 0xF << 12 + flag &= 0x0FFF flag |= NHP_FLAG_SCHEME_GMSM << 12 binary.BigEndian.PutUint16(h.HeaderCommon[10:12], flag) } From af085c109c5d3330cf5fc39fa6bf8cdd02683475 Mon Sep 17 00:00:00 2001 From: WinGeek Date: Mon, 23 Sep 2024 20:10:03 +0800 Subject: [PATCH 08/41] Add Test section to make file --- Makefile | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 40e0ce01..804b915b 100644 --- a/Makefile +++ b/Makefile @@ -78,9 +78,13 @@ endif plugins: @if test -d $(NHP_PLUGINS); then $(MAKE) -C $(NHP_PLUGINS); fi +test: + @echo "[OpenNHP] Runing Tests for the Output Binaries ..." + @echo "$(COLOUR_GREEN)[OpenNHP] All Tests Are Done!$(END_COLOUR)" + archive: - @echo "$(COLOUR_BLUE)[opennhp] Start archiving... $(END_COLOUR)" + @echo "$(COLOUR_BLUE)[OpenNHP] Start archiving... $(END_COLOUR)" @cd release && mkdir -p archive && tar -czvf ./archive/$(PACKAGE_FILE) nhp-agent nhp-ac nhp-server - @echo "$(COLOUR_GREEN)[opennhp] Package ${PACKAGE_FILE} archived!$(END_COLOUR)" + @echo "$(COLOUR_GREEN)[OpenNHP] Package ${PACKAGE_FILE} archived!$(END_COLOUR)" -.PHONY: all generate-version-and-build init agentsdk devicesdk plugins archive +.PHONY: all generate-version-and-build init agentsdk devicesdk plugins test archive From f64581b8d0073023dee20b43d63c6d9bf13f09bc Mon Sep 17 00:00:00 2001 From: windcbf Date: Mon, 23 Sep 2024 20:12:43 +0800 Subject: [PATCH 09/41] Create ubuntu-build.yml --- .github/workflows/ubuntu-build.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .github/workflows/ubuntu-build.yml diff --git a/.github/workflows/ubuntu-build.yml b/.github/workflows/ubuntu-build.yml new file mode 100644 index 00000000..4bfab340 --- /dev/null +++ b/.github/workflows/ubuntu-build.yml @@ -0,0 +1,28 @@ +# This workflow will build a golang project +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go + +name: Go + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: '1.21' + + - name: Build + run: make + + - name: Test + run: make test From f9118af2c07cdc49bee90a7f57a8155e2249888e Mon Sep 17 00:00:00 2001 From: windcbf Date: Mon, 23 Sep 2024 20:18:45 +0800 Subject: [PATCH 10/41] Rename page build job --- .github/workflows/pages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml index cbd88780..fe0b6b7e 100644 --- a/.github/workflows/pages.yml +++ b/.github/workflows/pages.yml @@ -5,7 +5,7 @@ # documentation. # Sample workflow for building and deploying a Jekyll site to GitHub Pages -name: Deploy Jekyll site to Pages +name: Build OpenNHP Docs Website on: push: From 85d82f0e7e00a0e82841fe6c30629c60089b1d64 Mon Sep 17 00:00:00 2001 From: windcbf Date: Mon, 23 Sep 2024 20:19:24 +0800 Subject: [PATCH 11/41] Reanme code build job --- .github/workflows/ubuntu-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ubuntu-build.yml b/.github/workflows/ubuntu-build.yml index 4bfab340..f37fbac8 100644 --- a/.github/workflows/ubuntu-build.yml +++ b/.github/workflows/ubuntu-build.yml @@ -1,7 +1,7 @@ # This workflow will build a golang project # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go -name: Go +name: Build and Test Code on Ubuntu on: push: From 1e5897997e10ce1aacc5247fa4d90ac4072c6fa1 Mon Sep 17 00:00:00 2001 From: jerry-0824 <63935127@qq.com> Date: Mon, 23 Sep 2024 22:41:03 +0800 Subject: [PATCH 12/41] Modify the values of RedirectUrl and Hostname --- server/plugins/example/etc/resource.toml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/server/plugins/example/etc/resource.toml b/server/plugins/example/etc/resource.toml index 7b779a22..9defa85b 100644 --- a/server/plugins/example/etc/resource.toml +++ b/server/plugins/example/etc/resource.toml @@ -9,9 +9,9 @@ ["demo"] SkipAuth = true OpenTime = 120 -RedirectUrl = "https://acdemo.opennhp.cn" +RedirectUrl = "https://acdemo.opennhp.org" RedirectWithParams = false -CookieDomain = "opennhp.cn" +CookieDomain = "opennhp.org" # syntax ["{ResourceId}".Resources."{ResourceName}"] # ResourceName: name of resource inside a resource group. Each ResourceId can have multiple ResourceNames. @@ -23,7 +23,7 @@ CookieDomain = "opennhp.cn" # PortSuffix: true: fill ack field "resHost" with "{Hostname}:{Port}", false: fill ack field "resHost" with just "{Hostname}" ["demo".Resources."demoServer"] ACId = "testAC-1" -Hostname = "acdemo.opennhp.cn" +Hostname = "acdemo.opennhp.org" Addr.Ip = "220.191.216.236" Addr.Port = 443 # empty or 0 for all ports Addr.Protocol = "" # "tcp/udp/any", empty for "any" From ba7e0c3f04263e03ac905c53875fd6f1a4198d15 Mon Sep 17 00:00:00 2001 From: jerry-0824 <63935127@qq.com> Date: Tue, 24 Sep 2024 17:54:23 +0800 Subject: [PATCH 13/41] Update logo png files --- README.md | 2 +- docs/_config.yml | 2 +- docs/images/logo11.png | Bin 0 -> 165194 bytes docs/images/logo12.png | Bin 0 -> 7373 bytes 4 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 docs/images/logo11.png create mode 100644 docs/images/logo12.png diff --git a/README.md b/README.md index cc41f7e4..cae36f65 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ [![fr](https://img.shields.io/badge/lang-fr-red.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.fr.md) [![es](https://img.shields.io/badge/lang-es-red.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.es.md) -![OpenNHP Logo](docs/images/logo1.png) +![OpenNHP Logo](docs/images/logo11.png) # OpenNHP: Zero Trust Network-infrastructure Hiding Protocol ![Build Status](https://img.shields.io/badge/build-passing-brightgreen) diff --git a/docs/_config.yml b/docs/_config.yml index e8b1884c..e5dc56f6 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -25,7 +25,7 @@ baseurl: "" # the subpath of your site, e.g. /blog theme: just-the-docs url: "https://opennhp.org" -logo: "/images/logo_doc.png" +logo: "/images/logo12.png" favicon_ico: "/favicon.ico" repository: OpenNHP/opennhp # for github-metadata diff --git a/docs/images/logo11.png b/docs/images/logo11.png new file mode 100644 index 0000000000000000000000000000000000000000..8e5cc3881caea25e393e9ae1891b10aa7e1bd705 GIT binary patch literal 165194 zcmeFZhf~wtw>@lcC|E(1qF7LA3L-*)*Z`HLq99$RiIhkUF_4IWbdYXnu~0-x=rs@# z>5xe82@pCYAp{cAe|hfv{_fnl`n-R@J6~o9Gklmy&N+Lpz1G_M5dOeO@4&tj`?hS^ za^T+GJCC+(*}1x9%eF0hb_ssdEn+w+__4$5*1gAj1YiDp?8CNfIkn~9otuySY*r?A zr(5~d^Z7Vz7d?K$(6{ei(C^>}*?Yc(g@p~@*m0BkqA{PNV0BDxsoth@Ab$u-+V|xG z>&WBOeV6X+xcNq?J|sB!Y+AP?l)#^dE-}*8`+U{f&q4}g9m)VI^Zq!RzmvbF_PiIK zuy0Ce>yCprw*392!|2nO72RKN|Md?J-nemLQf2SIKfiE$>%L6~zemRpZ`*U~?Uuj3 z99>0h|JR3m5GMY-yiPic<^=`Og!`G`{2L7|3B}&(|_*Y zA8vEFaAPZGzwy4?xBg|L4&HdXP21~VA8rX$KKkjc?R(jf)2IJs6ZV|Cu@$NQuMgke z5a0LUhf-6*&kz5;*`MCxB>wFv58n8+f9HkCl&O2q@BaH{KltG!{BOs!=hTDu+m5bw zu4Y|6`|lwm2#4MO{t5pR4*wOW{|SfxCq(`e4*v;<{{a^N35WlL!+*lzf3t}H{}qci zx!(n`l?&i}nA#FJx*wM&H*i29-uY#`_w4?AW~z5DO?)Hx#D6bHi7?21JYXEgGg&{K zcQ zBXmFLhd;f=)Mt%|Y}+$)_;T}R2&+C6CN001I{S#w@bvqMvFy?!9ie3(7ULD-_`S}y z8zE7`VNvVh`x#4M+ZGl9LtP*#Xh ziZgIadz^K`-d}$9=&a#QoAbV1dvZ&MqHJtme#|F$p^rK7MDyncdsh6n&6U~5!7z6)u}R{Qu?f_k zbIRBHzXMf_aygp|Sn%V%E7RT;ySVZP5ueqLUtO$XnyW!?ELjZQCl!Qdmr~uMIW>A- z0puiok&&yCb@nI!MlS2#3pl(rQPcD29#`Y7N1VNaVVH+yvmyzjgR`lpfhLg~$CQg9 z(3msBW|uO09eL#~qq*y2oPLUdZZD!7=9CVP6&6`m4Zb3NQgR@Ne`Ox}!hf8tKE)X) z+vY&w?{jvmE>^_OHM1z^w)dj#ldg8vnJaIA+kXAp?m6<@7{u@>x&62OFFhz=<)XQP zH%~nn+_rmZA!exgxp7?T;Oz}UxAN~i$&E98+6x9g(O1i{A4YR@^U`{<`0mL$m5APc z{CNd0C;hSM5LT6Fo=fHw$F;xp(xpq~*uowF9=ETDka0nZL7@}z$PLQeLtwEi3ysGr zE{=>}Dq>@zwXKwl z0ZW8obi`h1>3%;c);|3D{`b*q}RScWbg-_gUAD$JW zZb;clntGJ8KzUw*&-)2*@MFj=`|z6Z+nH6%Za*-`4<<6Yo8K;&664=ydRv`8L5MJ#=! z22J3s7q{lrLTqCHlCTe8|40r>`em6NmAN;*l2`6dQNKe>Ei=%p@b=dBtV?p) zZ{}`^zw8%Yo6GJk^+Q;3vYYG&e=<$=(9R!GA3Snz+koe<{)S?plIupY^%LgOlyWsp zEIWf?v>mqUU)6_)27E$H#7R?rgJD&4N{rH?505tr;}5qTCBOLA=b}KfS%TrzUCa8bCcdfPQd_?4o{W@W_0!Yuto%)1 zKO5Wg;0NJak?XNQPtohTyTLhGF1E4*2O{lX=D$qgX0?nd!yCE?&~SP6^&2CMk7pbj zVV&7Njhf;oPNayyUX|_NU+cC+0ao3M(MGpSgbs;Qyh|-@sYX!RukgLV1;>2dSQ$~mQh&oD=tSSByZXA;0tw~GY zPhU4$vU+LO(B^NQ`YaPxMZy@pN=5Y^u$E1c@FmV%Ys>#1CHlYBrf<0*!zBZD4Fk80 z**vQuPaCqhrg@njpWatG*=M23>tCrshy{q!g>%r(ttf3HI=s2lz9*2a5!tL;Hb2pw zI=bltCnwn2lE}Gkj`tgQ5H*x`Tb5E~AHJiUVX?uLz8PWEV8DLnuU@)lIPZ@)f_iCY znxgx(0d@o>9yEi)B%cbi-w2iD25D)nZ4%s*LV12)3kIioa|15+-Y>tE(~`dT7jbUi zq5IXe{j}Sa<&H(3&0y6(?zff&j@XJ_p8V@cISC*Fqmq8ECG5uHHjDZsu)Yq@f~(DN(j z)#+`iPjk>|NR_Gi1%oSncyf7c%feI1)hnHTIrWh1Fas$330{5EbYj)aoIQElsImd@Nd{xFaU#Z~3+Q{xf{xZ7Qrj$SAz8_#NUhzC zvz&DP8w>*kE(K5chEvKO*E3rW+)iQW=a3EKJGw47OpSD~bj@ME8a=zljFN(kHEdEx z9p7hcgl8<14-I=?IKm=D>Pa^hQ|Tk~CZB@f{#H_Ga;zr(wb+9c#}%Nf%XEQjvlsInQZ3AVb=4@KM2G!2=RR$T5r2l@Un=3d6wad52T@0KAhgz}M98Kl-&S3j)ZKLZ z%#pR{q@NU8?J7>I?4FHBdHYW#g+A^0=ahPl1t6~CnVWr;G>ih zn2q&A6RDQG3CtYhgw*lZ5lj&d`IR~CN09Pk*BDrik$sPcjK1+jt#MUn2y1IG ztr9)SVm2Qv;hRSwtEtQOoivw-v@+FhnMmW`FL*BJ?FV7-l*a=O@vk`1R;97fwavd- zW5Z+tdRGC|0e7A~+IE2T-Rqq7*ARB?IpwFnG_vx_%az7VjIJ}f*E-@81{S*2bGlEv{zbqkJ(tCn#O~Wd*J$ z6Ev<%&S^>X=L(gbHCgl>pYJFaQQ2q`_Lsfg@G)w0GG;3#NPr7NH)m>&Pl5^u~C+e&)6k1my~>5$WL)K2md z-`v_dZo$xkv~KJ98A7=bW^DNklc1}#v(nARierJF;3M{ zAtgl8vmxs2y$zoBqn1M3LW$uHmzT$n;utro(Xyl65XmA&B+OfSKejD~?Sb9Ji)*i4M00e}=7I^Zmj5!RJ~A1o0yHy)H>^N%6DB$r zlza}nwaTFT(qU(@7Yt6{x7vPc5gY99a&U&WR>o@8ZJn8NDN3?zpjn&qS1%!sgNZSo zumSAh5q9(_0=^d6Ti&W>FT=HCE;d?^u?&CG5B(9TffI)Rhzj2pb-d@1m;GC>bc#HdMiM`vXSn4nC*!Iqj@+#4SiY5*>#H%pCXbu~E z57Kq+~UKyd-L*~4ehY0BK zv3U1QkirbX)*YnW@)y~*QXqg4@SsX-HP|;$C;mIjI1dC*TQ4x21$<1@ohk6!C|PSU z_P;^bSo?iyyEfigs$0{zqa2Bi@>Q~I_!dPkKEq2MW6ze#jYl5M5#r|~K?zGsiDl1R zJ@snSWQpL2&?{FQg~+~5k-M16%S2+d(=X$0IYAMqT4)_Se)){iN;xB9er|KZh(C^? zCy>g)^Ja%^-o!PNhbhY|iAjV_5M=T@;XZ~3pqLT;NgeRAwl8MmvfcXH=Yi@oC;&Sx zk$UD&b01(KII0-!?JIEbk?S_!Pw@1=pAd<|Z`8zE=T{5SCoFCFJ&d-vT#U{4?=I;w zU{lTLija%o7|StmejB-k%VpK=i(C|>z!(4PpR%HS`$FJ7Vm}o*Y8ky3PyrR~Kf%C= zh^2DlHnfP!N|jwM*LQWFssi%VFFXzT>%^9J8$A9UK=Df-Z3NCUapz2nIgqp%Z_M6# z8W6lI+H7*eR+ucOY&U*vTXv}RZ6h9;ex;Qv^S{^e!+Wm)G!*Yu2Hk)Kf(5z|)xP-} z+VD}L&kf#%$n97ZX@lu4Cf;d~2{?Je;VihMtg^=3h9Adh zbHT%l`md=D57>iF_r3lwR@A4x?~oGyy(Du4=f!(uuUohHlfMG@Zp-Pm!*<%h9|fg< zA%w(q9*r%-j8E4;2|y;M0R5rt#uHn7a|0R#?C4=)HJtM0jw^M`kqa{f{mIyNbr>Iq z|2jfEVC$GGq%(N`qb^F1zq-4I>0+A@9jlehx4z1_96bc-G#w#+G`?p@ik%4!jdrc8 zlC;$QQyKb73W!D>wr1vThu#g9JCDTfcJ>NnTCIgR38!AF4pmI*(`Fx1Un?KFcPXPp zxi>*&w8_Y=?u=HK0dBzA_WIZQ*E#hGJ!Eh#6gbgE?*+8-Aw!?6JRvE>7qzPxe~+~O z!JK*`ql`s!8VyBIr)cTaI~uJ-ahCfb&E6j5??&641l{+2eZocQF~V8&N-Fd^ zf|;%Y<=S% zqset^Y5N$Lgl+#u4#WRBzvFuhkT(iN$-wg}q5=2c3_a<58gna0R8!XZ^#!2SP>eU< z(0^LeMvUiT?E1mP_!?O1SLAZD{U}sS`Y_h+A%cZn{uu-2%d~q#LxfgYh3h<~5S$T< zd5|0MJB-r370`!wcufS!|1Mz8uE;r>mJS8`><%8mZ&r^}ze=|eFdGWuE1pWf&%#u@ z2BJ77tZeS5*!F1YO?R^F+MYifsKrnrftIYt0rh}d+oCP1`RP{`H$SXv+9E&+t(gI- z=*0v+vdgCSLT`=KqJ32aDsK8scm~lNLAA++4Bo0PiK5@ltsi)fOcI=HysRTe*1N&- z@?15!0rUX2rc%}BqP&V(3-Qf82^=<#A)S{>saX9^pxS)v({{>f2(Y>*wA*+v|Ar~N z_;oQRz=tZd(gXRxj|t_t9JF^D64AVe8sF>V7{5w-L<8v_(fiP0 zKXZ(tc^mKDvs2mYv-w9;WU_4MxNFvo(aZed45fVSwwFp*^tCiE=bLCfo$e1P|Lx)6 z16`JG*qk+7o7Pp+nf*mvo{dI<_NkD9Uc64Mcwh?S74V+s)=xmBwGrHhW}W#2a7_A}DRy>VKysglbi0IF#lz@$55UL5<7vT0Y`?kcj2`VpBla^*Qv<`_ z?NW|obsq9ImHxd%BcUo=`^w1v5S39%J?I9^A2Ak!8d9Ip7pv009fS;#R$M({MY~Yi z2h%`zJ%{AVwsooX02A5;w6kBN{^#|tKW&WW8ho@pQ8y>SqaY0PnBU^(nt8d@&lqZn z-mD0p{?HsusIMVR7(&D3wLB`iwC8+0n`-hq*miGw{?hUuvk{zXrJAEiUGk4K)l2iC z%H=*e`x$4Y%%8XwrgJ`nml@FP28ixzy5D>yNp}K)EQUcpyyj=U*(z~mbI8b|V zxfQP@%U!O^%K5CFI_uutcr;C2+fAHglLNiV##6c~HAsKM6)_5SqT z>d^oAwY;NVZ%vLqRZQAQ(a)j37GJnKo*3Q%;fBn2UX%{N^!E?V7AT8msJkodI5AV< zCp2c!v(fl8VywuFw|?!}yQlBQPr~6QE9J)6%qopmn*Atzb~$Y(#D{!hn-Va`$Oul0 zl2O^PL(m5Y;x;q3Xg_tfvDuio^k_F#Ghw4+>=3XUzDM%Nvys+ zZ&abnV4JG+b=$!SFEeu0(n^qCw)+NJhMfI7i>M~*d@?#KbcObt(Rww*q^R}a1;(v0lh1b z->|B})wxz+ac;=^b%QHxnmSVjskN}jK9^L!PWK$~Z~Zz(EqiPIm&^hf2r^6ft5d6k z{OioCB&y`1xtYQdcQZfE^6w$!g?Y|Uv$9Li&w|#7<)^~X#fenc%q|a*$W7SY&t1N# zk1i2i&*#DhAl7&0t0xwb1MN~5McJYMEJZ3Jc+kn|)36A9VCg52^-V*acoodu!Z_{; zj&X7r9kVfAxc`WEzZ#D58pk8+KED{;a$)6|arj83K)l_m!fx8p9) zGhiMPS|4>l5u4I5LG#(AD;|>q>Bm$VJtN69ovR~U%oq^Q_;`-I(gNCyQP^X7 zORsjQ#tj@JOCe~b(ff!*g<3DoUGY77QDE&f4d_HxRjS1v+vV(yFGdBxghGn56bP;q31i-xuX7=m2 zDZ4mkAF)fAnH3vp`gpwR(hB(+IEQPmJlaHkUvhPd=>?d~ARJMqoyk~%2^>sm{E02R zisUw(Ah!u;Y5O_Kb=2$bFb;y%w0*lLmyJts08QR^Y64ro16 z+9jKkojKub`&icd5JKScyf5w}6wZldWEY+EW92<(;zh2xsMWb_GC$*32JoKd@O(qy9$06y<>Id*UZgbiqW@o@RJ&G%1gQ)`~Pb7Mns#{*r~+ z|D4~GsCi1)Ho2@ylCJooTS`x00r6WADnSLq5m)D-tLlU@S~BAXnC@cgL2IC*p^$;8 zO<(TBS@4Xp*PP!Wagvej`c;R~&ejG5 zq?ErY>6;Y_-uF>VEW;Uu{2)`$iQGazrQe+?@&f+ii3@-F{-7q6_uyL)(9e1X8y4)! z3sya{V#H2o$7&taBCl{aK?UjH>qjA0c3;1G67_%=j2B*1y^%Gf&p#q{?G+#P57b`G z$Y9=%EcxS9e~<-cC!C?puj}kFyZ@ba@{t;C+oE-fUzb2q)TT3&aIdV4$}G_gi(*4v z$P6P3YoA|sJ=0m*w=E63a9Q^(NS7^GrE%erQOXR~WQT~x8h0T7Yusl04`~qDfE`aZ2#adXa5NF{P-Gq`LmK4v z-k;Wq$v%ZX{$K&SN76q~^+=8~=AFyYy)Ikq1t1KE`2aB%FgV$~bORw9?YF|s=yl~R z$!@%xkXsL&QR9=>F1C66X_c;&o`K6#nds=bA#Muqfjf6C z#s0{ z`w|rWs?zDq*n3Y5-5TY60BL~KhrkL0_D^w=#kFXATwQ2sq4H?JH~%rEL@isZ`D$`| zQ8aYmIU5^X;i5YeFYT7xaJsO5X}dJ@Ze3SKzWFAktiOQnciF)-41p zZa-vx%i)+a7uj0#8C$8eleXJGmm5F@w)RS!(kyn5+W3W+QQ-G#I!XZi1*BP=%a%Ja za+SM&J~K<<&`G)a^WWKpWzrBfFc(vQAA=mxMFL#^GUV{lR8U^}I@()0?mP?Wui%@% zuN||OuUm!5z?}b+VXhtVh{I0awpz;tLg}M3BL0smP>3^&BwV@3R^6*nRJh*0eo4aFy>{ zFT63yR97A?v(m??G){z61OSsSUi*P2D$uL9;hZyV&F3#ZXRG6PH+P{{vPI+3`?^q@ z3a2&Z^nrB1BEPRWUILNSYZe7JLeixj)*#K7|Duc2|M52@>Qa9+KLWC8y;Y}|s}1JK zE}*Er+e@sk^0QANpdFzatDJSDuK_7?Jb=DIqgm`8odC65ef?@*Weqdzh1 zvqKQR8uOlDV7&RGi8V3AaqH7fBOBEtouZv=B{tC9vn|kOCHx|Nr-N?Q^%F;;z`u>p z^=X?u#N!=4b3=)$C{JigMijlE%OCTSa_k|o_1N;$7`4lK01~%bjILbg5z{#OjPo%) zG^4di6wFZX!Mcwvci4J&%=r-4tXe;;RG@Y78%in}X0FCcYys%L2Z4BgXVzj+zd85U z?rRnuu0IcTy5$X<|7fd`T%fx9@Z3-gorQ;MibXAD>r+zdcr>DN4*{_%Zhj?8Z(THC zk`=t0dF1~qRda4mUU#)tRC+nHFHh9Ne<%!rZCRD&$va36vS)f3bYCtJU5P z_sxGY$W0l3Gs(xUaYjI!Gggd3>%3U$foU@3?e9d$275HnG^dXF&X=*7p~Dut_6n=3 zknBb%;Te3q&c*rH?*O7X$li`rM%HK4*d1mr7EqwNOXFHh8wj>}Yqi9a z=ak&GdIM?YMXu@fU~~k#`#S+J{d{!53GK+?9e-}X51Kkeu9T~tlq+h2rmD0aQ6_Pf{f3z<)@Q>G6n~@|>CaUw zW&CajA%iz1_uq5bGMquDzbmGaICL}X_|Z$A1RA&WrAHE{6Y6*`WN{ZmxNSu)FM&{~ zSeFZYv->ug=5n~VTi;-z!`pACRl;>!CfVS^Ms+;$zi`pzT4JU%FppTOC^`d2P(yh40qO90U33WcfFccn(v|ADWQ`WQzDiE^0q-xs7U)!C#RQng@f%SXLRgiQa(5%0beI5&*&;> zA@HiPMjxIsPKSvi4^hAZHTHb28oDiKth3JK*3>oE<8hWnOFs0q$y6AGfT?Vk63P!6 zT=Sr0hGy+&g#S|AGk$1nUh6B^C2L*e3=2%0?h=wSfq9CPOx8ORoGJLz2a6DwlZ@Ca zswdO?5Maaiw_MH}WcT3}re$%cN#Wh_=)kAB{Ae@xL?>wq7z?t~*Tu4a{G8N0iE4}y zW_CM+;u}?C9pUsRS>BhTZ9j?lgPpj~?8pBg$;B>$UIL*4J5Tn!3i>dog-R^SRiM2MM=RlM-ZI%?JJ{z@1FP>SODq{!zN zB*V4)WS?{&8x0|d%BQ^g;@;xj>a0~1=RwKd!N9!02tnVD--`HD#+`eM6vC@Ze3 zZLB<-MbAqaL|AA=S|Q~qpzxMM)<+U}|CssG&eECSU8D2;I0kP(9py4T3WhbUor#Mvtg$RGH)iG#YS! zF^_qLJ8U@l{4yTRZ(}BbyLZItV=66lb-S2H)fW~VA&YXBo<&=W>2%B478)*riZ>jQ zHavD>^y(E@vG(f9QDBvy`k%XV*;zmb5^{(kW9FakEjbZn&T!@It7Tn=WYK(U&z2Nm zK4K`T(T@HuYc5t0Mfx2ttG=%{yQ#?wx|-z-%f*TL^KL_mzGISer`ygdx7Ldp*QL~3 zFGn3)i;yx4$wE(8<`HeZo}@?s@^23M3U{h-Z+l|Z-NhQ1*9v>*lB2fv1yZ=~Jk?hb zn{Qsv5qJ%0eYO7Y++TMNf84L0Ro| zaA&v8_Z@EtOOhuY1IJX1Q;I?C;g4L2-(`LKdkO?#dbwSCkO_yuSf77^Yj-nZM}5JA(% zGA>^IO`KEHLYQ}SG)39wrpH+3Why{hX1+7ud5n@U=>d09pG#n9^0B+mxV-RtgqPg! z*d6%#_@GYSClvx*DCM=R-eBs15lZV5uy1FE9KgYQIPyX7L^^j$=aC6A25qafui-*BpEvEMvaX`z`z^hu)POdxu#Pa_(f;7bPkfBTl%@ zxHR(EZF;C0t5hdk%*^1-%F2d~wV0hFcn0`qOj1yjUp(4&?2*cH-6M0ahV_E( z(H~dl(NFMHl9GOH>7|9YBFM)UP9WY2El-ljYTIU61%^CO%0K5Y54e}$ix*lHEZh{CN*SV zx+dfY@tJRH&i30KaEs2KnKSd|#6=#!ONx9B^?@BJoBt}{AvROT)Q0NH3phKJDA>eP zy7zI5O<zrl$xaT4Et2DDSxtRbnzQxb^z#1>RV%s9^jVHbAapGQSt78)^vgRFW zzc-JNuh4t`5`PZ`jfn7PngMltuHK`Sj%C67^zEN6I}DoLFYDybvI!r);{5f=22cu< zYQ(le%r*NwUDiDUC^;ekHrew&qhqayU5kc=LHT}C$?X$WuYH-N!&vI;JMM9# z^4EE^pqqI)IlkT-D3!}^v{xpXj0T`moU?StYV#|?Y_s9e8S+;3Z`r2wbn7$5zWY0P z>_LrPTB8umlgLf31sXI^qg>;jH|CffkZ-u(2A%r;E!+yw~`I|SD@-IjO zDO7Nr-8FF~m)j*NyJKgNgpeVFRkfo?yJj@#-3#dNIHVISX|kfi>kiMCbbh4R_qqoi zmuhmZwZ6pKv3$w3z08`8O_{u2zn#mLRs7%tgNKCU!ZV8YbyHJMiNWhQwp#%=|8OP+ zmq`OXk32nJ*hxuHFji}!k(VtkXTF-*Dn^QE|32xpH>1Mzp_Y?w-Oy*L!AD+BqsA_C ze!s;j4l$M)Sb%b$_C*t*MC=g6?N!>~rk9U<%8~;%a4}WQdP8uyzli-WPh*Vu6CVf5 zH*Usl#0qz&i8#l_T_IsnJ?Wf|eYs7r8*-gFexNVjrT@#_8BzOo&WKh6s44wN<>K%RkPU`E@Y}1QQz~c$S3!EF5!7r4I@6w2+H{U z4nd!qLyJ|z!+cAf1l{8fi7FALZ@q7tVx^sYTVNlZZC}m#B|pbwJ^19e3j%XiC-FGA z*qP=^b1PjoYz-(BrF4Tc7!zMgG)f`2lCj_7=`Ht%O!)Jm3Bb?l3}X=y{VLHFL$!wX zUurwK54loTtT#&{RYz>_%*!D#CwZnu>%M`7jrfa&Jh*JPppQ z!^T(f87XH?%$*&Q=9daKH2ey&V=s5R?-eKQMXV)sO5n)r2Q;E-4nbmZ&OpfwA{D!M z4{BbI56{5q_})tUS&$Hb0vhga2*>3Ox-VHM%niA0C3p{2IVmg4X2dxv%$TJebFEi0 z`DCl6e95KU4+HTxsBLY@HWs39XMqx;K@p79cPPXPS!i53d!qeNcNcQ>zs6P`x}5ZD zbq2?@Qr=$B=+pLq0VH}t+_?l65l8RO&gl zM1dOV=@k<)q(eJ%CWf{>#;we z&R6B19>U08rOu{8H*T%{l2T%(YTOh8%?3N;xersppaxH;QMOhkxl_o&iw(F3vw4&o z@N`^g`gRv=9dP9~U^q}M^LVZ8)tFydPn#*jok3<|8b!a1hyv3DY{2C|-JR|u5qOtO z`=H{bS!tciw!!pS6ssN5IIoebE3|2-A)C4maL^0_(Z;?II4Sa`v>yoK~7)Sd% z8oI6a`J!Z~UWJe?pmO)dmA=owrRIf~A8PWY0_BvyYIUAwXQ(2W4&WGLcPYWJMB4W9 zAnz4Y3t%y_HsR}2C6HdcGP(Bu&H~&6pWort@j`!XN!glV21@K!N-bcopdk9MW`|8i zvx*wKk|iir!-dzV0MI)^{nJzMTh&~~V8$8NSRs-VRxk(%wAaienDpeTIKu-vmVO1U z>HVeV#tUS(?B3SS9Gx3-rIAGmarmK*A9HQH@=q?!{&az#(-#I@(0gBzHYJG*!wG1z zMqv|naj{Fl>xvD(gaR{Pv)y;qSU&C^smWN~ti(weFG#3m3<{>LNdS?Ro!6tIlTtQWcd*k z9tyAV`XLeO<%h+sFo?m7U^MNTuk5{#OiGJ`7Gzdwwg}EoG|G9}6rl6w&JgLkX($!v z%=ETD^Cz2rYZkO^TcG6W2WJYQgmYRhwlZf%(XRqjyWJCvd9w^<7pfEt(a#k3#lF|+ zpNzGU^LPPvD^S%MRoAYG@>LmsIq!Z2L9YRPCJ~h?`m`AtdwHfu(CE<0x)jW9xgfmc z{g3MI&kU)m*}IdK#Wz_Gl0+#k>!9Td9ST!*8Idzz=#af#jjF~J7{pEFRV=b}^f5^{re-#o0W1iWFRq(xDqojK$ zH-&~ypCAox*$44)Kap%%G?7@g3~Sfk@SM3)_!?09s@R{w`pJ8%#;U#=@tBF&%LMu{k^8OR)u|UE zm~4`Q7;j3g_j1`e!PFC_yehH))>>#1MT@}1$-Cw^X@s@5A-YMGs~S3{%U=QsThi4` z>I9U=zRq-@$MUtx^_V>SnEB;(27`E1VFHD==}UA5#dNy)$2fG)w`ZztSIMBxZU25h zayf|=yNgr_L>K8gzVgS8P91U@_}y)Mpc5^g^d)+u_j_c@(pt7>GY~L4Vt8BmOGSTB ztlQB%)N9ca$(~kSw6MPlvP=9L-*6F!SWLX?Vuoq&QrpSjI?v2BmO{0q?lHA`xClN! zoI&L2Y=ug_5qlnyQPmhc&=`7v++*NJsqP9nsDk&P_z#azcpf{z=Z}uVd8+5vAc)hz z%~-`6%An%Be=Y6+(Dl{QqqWkZiq4-}%QE8Je@1%(obEhVf_Dcuh-IcM6V_i@kNeuK zA1S$|BySKEV8!3GHQ|4=7y2Wli|hWGH=A(!K?m|2lo_j`_S}gIDr|ylv*F2{L@CA@ z7*<&7&>HsnWX;1f3AX7U+yuQah0t{CUxLeHby3_wPbggA&e)_3*GLKrCbbqMZ0@mr zdC65?njUpfs9BiD?8%pa1TJO1%%U zHVH~dgWm?D(ASmctWFhUd=pckywd#DghdGviclD~?9zre*`QeQ){YXuJ>k8`lg-_f z83r-g(0!1b9NlitfJzRZ3PoPl|Nh-Xr^w?_i_C0ixso^RNPPjL`?YbE6{FV9-p|CF zD@;*t0sF9}hk4Q^D~JB9UFZI(UA-gne7g~2N9nasuGK@G4SRNTO1-cjz_9sc8*je? z69E1*`Is%qfW0WF@yH&V$8&zie-{BPrp<5)+m$CP&IeXnSDHD`?=wWk-d4&AOH+J>0k!Pek0zrISgDFZi{pX{ zCa4}lI1nTFPW?34>JBi}Rp7k`@6~z_%zRU@u1&k!E4ymD5i6U>*Hbz3$A!p1Pl2If zTjb<8baLpk^89bWY%{dnOoO$N%-<|W&)ufrIuZp}mad`X6F-xZ_ce8K1e0_a20DWd zv-5K;m~ufIkiv_B6=DWMAt0YeepK1slPZ)VC5<CA)UQ}WdZjMy(IGvA(sJ`7kZHaQA5_M7&Pz{nn+uY&Im z1;PuM%M;8}X7g$0nCi*w{HEYzI`bcEb`|4J8+tCtIo=;l_om1#bHxmP_mcg?f4QH- zfI6w#Tpyp)m5u%+6WQ%BA8M1{KrcUn{$&xntjK6LwzAU@ag{Ww5YOkZ}G+AWmU z0+`?y_~%DxH5;%`_0@gjwko$~ys($oKAY!-ULbnrhSu-8@o@n8!P)j%oo{-$mS99s z->vr6-14mo%kr`sFYkVJDHV@P6}QLbUDK}Y1a~*qaP&@Q8F?)mu6LTxSKiBR$&Xs( z8CLQ3SZR zb$;Bl|_8+nYQz8qLN0HVkMkz$$D>A`&^OfqV0_+ht#i-M7{o*H8dCs z$hYagl5KqCxysTnRJCo+Z9E5%ZN28qWeeeiJEh?m^H<6j5k0BNDp&;RD5aafo~>MW z=}fmp82l6bt~-w=TEnfB%Dvzws#jQK*zRoc3t4w#$fDR?VHH=Ubj-KG$u=Fq;*<^^ zFMi>*uUm;dZHk2)gq(V=5VR?nRw)M!Hv4z?)E>IUoPYiqaAd`K4wUD0yL=hXuTxj_ zxbwV%Lr! zy1z#c9V#HzF*TB#jGh6#{7)#4+9B}jL`Tl^H?2hPRm+UA8s&04Gdd?nXu57?hEmul;wo` z3hPDJ3m(P6s=NJSJ)v>^}qQ957?1}FD zaB&4X-xxJio!sjTLXBL`vF0-P^(IoacKPf~hVM(Gyqed2*ZaIDaLIF(m*x{r!R9+> z&|eVrxd72jC2(dd97me9TK1$I-KQwmJdJ(_ktt=d@@I;SVGr!RPx10- zHT-Xb;l`H0ZQHyjRdgz&Z*+HgWmRrCmCm-e(U()5+H}-xWl5dMJK)A-D-p}DLDLP4 z2*Cl%I=l(pcnw@1BmeLLf9wypx_*1?jdfNZ9=IYQm^TtG(`dTgB1ue2>>+0&UMP=x zLDZX}q(rrl{?Ba#>8mdS;gD9%p_QKXFk9Bdf!=zDt`T+`?p2CTr@?qcniyyP_tGD^oz~|Q0ruIbE^O_~Gw5%#i8W@e@3Kt{{p&xn;)?>XG!BDZt7qZ#{EInDG zQC2pWP*pQ2(|@#nMa`rb)y7$qjbZnYwPocs*uTQZsJ!7XqS0@hnrK1i8`{){UQ|`7 zs!5zrbp|OGeRLaZyu#bm7!+w&NcAC1h!>ihEo)!8bl#ru)newHUgce#j+2F8O{NB^ zuuAW$QJY3FXI>5p+bI~G+P^&gLK~IE_*(O{n2s812P*lal9$*kDJScUo>&*~7s9oE z{G~B)BU$iY(#|)p3-xygpdJr$Zd7WY9Pzaqldo9-!9O5`<{%a7`DOT}$4UxNJf)lg zux~;>H}w9FG%HOhp0fW0g(rRQfx*=r)9#+o}~ndoT<}bO%UK zB4KVHUnqlbCZVUguH}K+p1NEyz?ks>#}CgH8mU&jPY;j{9b2?zo!Eixd`Ei24|8jc zqMfS{w+?!CYw$p{23YPm7|yZV_loR&na4B6s1TGU0nPsP5uTI|BXgfzfzQ+QI#hmR z;6zZCnceqP70>nMG1YB(mtI!^NRf5Kud8g2O9*;p3enM8zJ0XF$D;+)wmI#l)(%ws zKYYDqSk!CyHA*Oml!_9Piogb>L1KUrC8SY0hwg3|N|~{iJ^NKknZjnx@U%* zp=LO<&vm`;Iq%v3>wKLLzYlXiaj$i+wI2WCJ}tjPuX@W;*I|?HC1EUUyYv4~GZ9)*{Vh6d{(I2ExSaDV=bbk-TmC$ zjSd(mPI_t?f1@RY5wk#=cq6~`e#HR?3E z+|XZ+0%%)nIiV9F$-b-c0<%CUJva>XKbR!{&Ff3DxVp2y-KP1+5hh?dDqk-NzRdL; zSD#f@PufoI1@z+;>x&EvAqeMc{IbQ;=9Reky`&qd6{u&IeW`e*WZQRx=#>hlkpd@4 zRg!}hqL(hEve{*;@IJ1#01WRVyT>ge&+xp6w!=46?Pw;K8K%DED-QWh{baMywf=%v z(=o9#&h^Z(rk??EzEA`zwmKO53tis3-3<>u;WE89TXJxaRuRw3<&ZtHLMrMX#abb> zI%8R5rH|Kx%}FB530K=jB%wkO`y%X=@Is-}+ZS|r!5O#ZvYZ7;=FE>~$xhN~ebv~w zOG3VNegC^)Vi&0+W&td6mOt1l2)RIPREWP7`Sb`@xyC6*mDp7 zPcZF*ygNU*vjoE6md=77)NuT#FPuyHSHq)X=cUA=s(ualS-&TY*Zo>QCf9G3=Wku} zGn$1=!dh(LmH1EYd)qEtFH#S<8|l8BnrDlDXFT^+?t&<26rz`_VDJ{$S`gmFlZZe zFiX{s3axriLi+a%9UgC=oCYhJjxE>p*K7(sz406p02FZ|ZBX!)ph|(!!5Bbb+Yc1m z?QpVKo~0F9fMqUM*-UZFd$m|JO}5;RUvzKbj*_U}z#rWEJ$=AwIyW*anr-@<)yt@} z#Xg5+vsYz|$uQG~_syaQAv(9NKm2H&q&2Q%Vx;Rm-laOtU~_phAHm~)fj{po=Hw!$ z*}WjI^@@YtiEb{L?y3X=Z6WjKp>d6;V$vWa5ESL#NRe4E&8LwP-XpLL76j?a+iHnlB6ged?C)DyxZJw4yrb=K(PKf6B zzm9ro*p+<&1~VWGbH);#XrEMXH_0`vf2X9fd8=(S0&{Nzz}EeI4PcA{UWx~G-EB%O zN5g5%4U>x^`;U(SuOgz$MivW=G-SN$bsWf>5xVXncTWL+MZx^HCAJGu3P*U5rhGcM z*Q(E@-6~%7c7atumy;aU_F-H9*H$h|-FPq0u*pR4(AC}LB7X=R8z{7uy9n4?0|(X; zgV_Df+-mG}1``MOH<3G6zmzEBrJL0E&n#cB0d&ePZAOw#o#FuEoK+;RPi}bDvGiG* zO#m!Z6)^7P(h+nJfOIen==mx=NCfJMH(@o}=t4c)BGz1}5zmeXko zcD~|VF=JcDs8CU4cd)dRhLOTz*C`S!gtx@e)geZX`_R$L6`0nG_8%KVBlhB>;vNzU z?g9>csaem1e|>Emr@CUuNX{P9;d6@W^?tT0R5G!nvujFfJ8Z7q4sY}@aD_I#edRD4 z3}0=Wau~rfQoE+w0U|exxWG1$w7R|@!Hh(Zy>t*h%H}xEe|h-@UNt+JH08ir-b0t! zfNL5(Z^ikH4h|PXReHd$7AEC2UvJSeunH;MwCxh#ME=JR)KY_Ykt|;xYF^HX^uAkc zYv?PAdVXrZ5&|CVb!#)@adKqO8CPaNSa6l52(ftkN8xXPkz>3P*6h6iulAzG(g^Y} z$GJH8h4$jt_|Kd!7{7foJ{1R`)mtemQwiwZFyG*efj=U zU_k-lqO-rYFc{zd?aXARi$8k(5>NikZ3%)1p4s*Wrqq*sggdbI?A-C|xkH-VYWpc* zr9IN;WL7)=`&S&_xaOLUZBk5p=Az2qMY*CI$zhWJo-20v85c|>56TQc6aT`tUt4d4 z7ZuS3)uEbnWCI2%Kj?z=D?1lj`?%$eays#FwETh*kT3lY5?nY}l(AvkSf#P^Q{$HH z8$hDuEZ*<_mPx!1}dSbNcVW z%xbk9YqbtTx3U25!kFy(vqtY-10v7BKs)C&`I>M5X{rA_L`j^50#`B_u6LH((f@(27^j(UB^bi zHAimc^;_b53NdL;bZxi6T<$aWxdoP_yw^xtbw%_P} z@mA_&T*}u1vui~DsJaZwW<6ekb@jh&%pCK-li4`C;QiiK$dK&jvw3&7g%zE_zn3Q& zi*DaDdq_&Pmqtyfqy6>x2AxFt@mBUj_j9Q_8bE9fX2W~NXdY#_$Suq++i0IKO@^@h z%Vjs{22s1t?zQo|vMZNMI82!{1TtrAtVDQ3z0XdAOXB93<=161 zz^Q!$wIGeG`mND-#iFD@4)C|=M`6~=cr$iz-(I@8cy8w5rol&<87>G+%MIOdF&+@K=Hz;hXMS7$A z$M{Po+ve23Zd#wwtlkVtQoRWL_+0HpprP0Em2#$RSS#~j6BKvWGJMiU?Ambh9%7%$ z4iaJ)zK+f!HL?|}5;DqXp)^a7hABpJZffegBur~kl8DsU*eaU&%`iE*jx^>Rm=VOD z%KhmTTQj8)ET7z1v0>k^=C@J+oJ1QFx4(~YwelBBgWq|@ZgmBo6UenBA4gQgETXy1{uTo3YjQfjHx~<_H6g-xW z7`;CdEe=`tBbjHVLz5cqg!}a~qofqv$jN3wN4a1aPFg~iDn#l3EAaTZtctG((xAzvg*kbTP!Vx9T>yo)e6Jb4nGAobmKyQh z+6E~k7H?30n%&nWU00ipc6lTAjSZ;HvQogb@_Oxkba3MeF02(_~b!P89@)R55>8>_I9p6vO zw~DbRgg-__;m41`b27+$G1;||SiHf$)9-D?Xm|;pSQRO6yhI=bEJEhpI)hGmW&J=m zgVUb3Tq}h%eb9~0tE+O{HQzDt1n}P~vi#f5#-B=07nUWY%Aisz?5MwgbvNx+^QjBk zu7C{=$!zZoF*N{|qX+CU-vaQieAc{&-ru-v;nxbQm4$%aR*clnMh>(|q}Pgh`BG{b z8i(l8u)n4vD*f#?EnG80P>E9eXJGK#=y5z(qeur{PcY*&!GNgx;b<9E1EYQO_wpD} zlY>bSKRr9rUM%2?Vb7QG3OXM(JbeC;2Gyc?HASZgb9=6@R-+=gn3Nvoj43Ax zTsD>gNSudD!_c^_KN(-&#Xo?Y2-vx1Votk z>o(d-etpP1_g^q7wVqLf&MSt(i=jql4f!M7OPJk!#yWd={_U$(4ey2o;peZj2=oz&UWj}&|G8)T4(w%U-!%}B&* ztpb(MXe*`bbbp&j2QbGF)q5d1dKJ7lBw#1Ka&rRta6y-ri@o&Q>~{;%dq2eS;C3(o z2-UwmEiB1)GmHKY(gEb*kxmXO+Xen`b{LmT`@QW&xKV9w+X{A2b+bK5(^I6+>X^Sj z2dTH?XsOhgg11i(wf=x{n@WN+;$nPT`m%tNvO~YAtPF}WC381*b&8>MNi;}cR9eG7 zuU~8zzg7yukDf~cIBdg}q!8Eu3%j4!TuU;*qUakiC_uJR>m)bS_@6o-qq`$5Bw+xg zJmk$OcfDy%PRvy?@5G0~&hngh{n4dY@}+0hT2{7d&q9lQ%Nj;2QuqJd-Q4;!_k zrigsgXxG5C(ukLbj#9JdZXrs|hA$dg2E9j|W}AJ7THcFam7AV%p4jFK7@&P8PytEv zpxN})t0I+>yu`#ntY3IsQ$;`4I0t`HUNB7>xY1UL@oJ0Peei6RwX65t1Oh}kmyH_T zCPTAOQo$ovly4`BJOI$EIRRHxa%>=7`wU_1&bZa`#ur+LbmP*yS3-7_VM0kC-E83c z`)KN!XcpUoB|0%*yBxja21kQ7@Xv9K)e){{L@8)E!g41qRH!F7#5?5kvBq6w%st_Q zPJqHX-pHD+hY!)I-d6m(vqJ;NQ5y#D&7Ow~v~DQ#Oc-sj0?d?Po)a{m=>7-4Dn7g} zv>0Hs=+&<4mefORK?x504Ht z?6o^6vphOWjMa*QU%Xx9eqvhKY14FH2~so9^pqjt6>E^|Jz^>W)yf z(}jNDALE7iG=Lq+x}*EUko-BMvmki*4mfoy3$zC23*7#ZgYJg14tuwvXizC}j1^y8 z%bu63zKlWq3Jt1AzwGe(FBabUmt#B4>vZwCqoi_L9r|u|GEwrR+AoLQ4U2*_dvNI4 zxvZl&{1)i?gf;t;G5Q4RLqqxuuy(qiP6pk9p*Q$|fba3V-&JV3Dk41i&8liQ5s?bB zWkWae`Ug}|?}~!bW$A_{ ze{vAI3udyv$F~@3lW_fXq+3xRBe)K? z@*7x(l(@S1u^%%umIt~F73j-6e>)*w=J(WIADiG6LnG`Z7t0i|Z=$?s zO13SX&Ot=0Q)~@yRx!*EZ81JQ)jyBh{Q;|@xPCOE@9xsxcJFb~${isw4k#<$I@qak zyL&B@4(d>7yJ5KbJlm-CBJ}2JG&K8?XD{?{WY;c;XOefL(CaKdkn!GsL&qvh{}o0} zj~;Etxn7W~grX*^N^qHvVq_4yNJ_A`w2bIEnt33hK~n|U;4UA$$pEAZV|DN zYQ5QLJ`4pVlrJ>7wypT1oee8%UlHlWq>1Dz`)4${e#1D(fNp_cIN?9a?~6gFo*`Kx zFS883e|!Gr`S;`(?;ewp3`sH#WFVzcXUJB7CKg<3N6XIj{3YABdtcr?;7~SuRWrDK zhTalAy=}X{JZ)hcXdAda+=^I1%ubg4g@ouXW2f~&VwT0sP7SuJqeKZnQp+O|Hc63k zN^|kodxU*wCg~;TpvQw39(vRk!Y1DQQ_m(iHJqcpmL4q? zKi1@Z;IFNaNJ+L0tFBRYzUv-(FnQgLZE&LtrcV?k^2O1I1^W^mUA>Llr|r#_rJ-5< zBgNm@Gtgrr@WMMLNTb~?XN4u@jVBALb~6BBHfg@`n?W7H`JiT+ z^Q%(}gdJP2_vpO96Dzyp^r0a=WRA1ydR_yNEg8i}mv^y&k`K1BN(gWh(hJYrc$FmGTm&7~86IZB zXqY&Pw7wOqCHrwrU%zIwpXtCWwx!GUc{l=N?+A$GF~1{6s}832%05<{!mDY`9*XuB z&hg4m%JL5%W5*(4+fFKf$^4uAN8zk5pXPTXxv8^H`|>w=;SYw7o!KS*vsYyX+qj99 zpE|d6wB?b=++@5P^S;TYA_(P4-)e8~XdnF&Y@X_NcO&E+`K*eHX4I9Lh2~nKfcL=> zi9M!4%azoL*d7r%?~>r5X(ykXNEQM+ADPduyw!^JrDSO!exFBe{Gm9M&MtXctdM0@ z>MNE~0v;3Lafj%N^QU5)GOLZZ;Kge-V!-X#49PL+rXN8-&~_rraTlu}ahHA}1;vGF z{6UgRbHtY-3??o>Lt8a+*c>)yO@z4T6O{cHxW8?Z$if>>*srX9u_I z_)v|6qePX7rQEM+%aV*k@1BSWTa+~@EnQy~Dipb;K^!!fqj@!7RzWpgHUC?z|6M&o z^3`jDaX;t7SCYI>9D=-+S)`Sd4Q!mrrFm;l@d*<#v3=z?o`FQq8iA{#)E zgP&t<_fKk@;lT8}fL7Ry>18@9l&upak&gD)>!&+|baHyO z5Jd|aPgx#PH7$wox%)566q0+Z7gQIyA{^Y5o57^73POLa!xJwe&a%01AWKDW!y?Q1g;(jyda0Mu*rsj!!EQ5 z*R|PM3>vNHFrO@7)T0ehf*#34gjv`WG_0iLT$U)>)93?Wc@2kfY`+F@nN-fD|J?xv z?6cM(i+@ahY{r2Jmg09c{ycv41`U0^5D<6iD$jCIIXX^S=G6n4lOiZgyOg*ub-mGu zfh2Uw&2SXr*5Ihe2P~-Ly@j`tzw69eZ_4H^(La2PZRc<{OUwM5uY<`;;yci<7d6}5 zt=)Ge|Lzih>*KS~nlV6|0mucp@p(()(}Kd>yfy(8k4A$_5O z^Z!Hnv>eD^!rYFgbfnHDFC*1*G)O=E6T}KR#*_v6@c!iqk-W*pHD&0?aHjA`<33EX zVz3#_%}+`-?AzM>osuylok+&!mgJMTMKgsceXfx6Lo&Wwny5OeYZ_-u*$b62YK0xH zxQppx7oe;GSfoUU)zR0DCut!`!-j=bGhViGTPz2#QK|n(F@*dDK}ZNAvxL6)5H^l} z58OciK5)b2X=YZp9ZR#mS_W{m(`2;!(1*VGGQI9q=bUN|_3Ydz$+rymAmh84V6oLx zr}Gx`tieWsnE3<2La!LLBSD0P-QB4zi=)M%=8lovnNo}mTa)s1ecN_V8sZZy5Gg-H*(}Z6z?5b(fv^x(B)Dl*r|OrZx&aW)O(dV6HRKbULHBDs7d#UA@+snJS5c}= z28Q@GJZjI6$zsjhmwPTFw26ZT^y%u+P_J7P_;|R<&Teo`geylE(=#iYv7_9iV zCV2G)G_=X4bgtflZ7kAP!{u>r4iMyR`NLRKvSgK*-K>?}{QjxHXg1}?z@$Yp9Qv=w z2lhvkz+Djkq^xT2=p$q<>_$!+S0Mg(_oZabJ0~b}XayO)q~!nJv;WT#od1c|AOv;9 z!A6Ap+ov~x2|C3g;F+j|vYqY$U5GfQ*t3Z-0Rx4Z(e zBMi&lHaU*@;+Ers&;8**(vCM@(S?CqrGHI4&&G{IE?KKDyK~Xgk5vy;;QVw$A~! z)eM8r)WF@R=fa5am>afh*%(QdGL1{I(;A_&N%OK$3^0$*>dxmX6ZFSR%YE-RyB4@d z!)B5hW1LG5dJ9eG9W)r2@wE>NfPW-r7SsU{1iO+2$N&B3?VZCaCC(65`U~QVVP%k# zsJ~nKibV+XkpTJ7un}vu&g*Nz$x$+geq34%ShH~@xW9Jx3B6$wtiPvWV~5$6;~<3p zMMP1))oMSkDy%3N-X?Uss-E6Ua7yG)OK;gD=d#}Dweyv;kKE>z*z2#al{k}eWZz~d zU2KlKsT`AKn*a!%GXPWnT!mG=&KsSV$)O17oF?%WzoIG)_9pV)SiCuP`&I|K6pb1E zF4{0vct4&s7TO!Etl~@a-+NbQh-eVS&`1v#ft`g$UC1iQps>hA2!r@R!lEVN5hKCs zb>kV$x02%7JnuD*z}-&^lv&>6FNqVPxOC`NdM(;P&B$rPdwodL zl+VoXyw^LvprcxcPdB!PSG$m9U|y_@nIXDN4a^XxM3dLbp$YBBT-ej}Wyl8YvA1l)3kB7by>pg#K zG1&90>ZEt^CwYV4Omsu=p}DHa%0&UjN6wBhE^*71NX1VdpuHd zH+r8g3C@jo$=~hJqm`k zArxzU4Lq}Jol4CHXipoT-(`i^uSxSN{XxvRAw~k>$s_z~_ATVh{1&*n>(3U)vmm#J zZ`0Y^&FmNNDycnG%9CZ3n*a@~zCm6Y%rViKF))ULxAtOcR%9t?I=wwp_CXaeu#)U% zX?%}aYv?pAM8_F+OuAAeqZ=Rc<9JWvi$ih}$N$-2{onh4i_d*dhL~>6=ZUbuKJg-p zgYi)aXN~7{zsoO?quz&5 zcZ(ksBmnV8{!GVjgSXiFR!_c#D0u&VOUv#RG5rtZY#4Q0L!j}g%lh|ZI*Q*xBD#}8 zoCG22bfA}CQ3U?5yQ@&UiG{7=+!rfeGMnp-2I(OB`Po68I3lCFvO# zKe>sYfR@1B4~5Ih`6RfqV45~&cY3cS+X}#HZhVGo`Xp5&QUoRrYHmBI((wHnG9$3)!na6t6`| zskFF4?kHsl6b6GTL$`j1Hr+(80=zmzOF-T8gMueECK?d~vdBsC&s3DpY{jRehu>Q5 z_N^{v8DG__x&(Q`{BJ6lErW)#0;{oUFvn(tz(dhuy%x;Y(|(HuhWHj6NT{!6I{9)N zeUxqq&x)CEjYTo2PT!WhTvqmGM!UOxGW2-s#kuIZ#Dt&Vy!wAzG_8l^Oo5p8yZ(dF zj)0tc5C%c*dfJ?G&>9w@p+?X)5ae4C%9q{SU^`8G!Ls_#k%B%WT8T$rnvo_9J`0>f z-LgJ3Z$Ve^`H$+RE3NJsNq8NR=o zu31Qm$Gb5sGSN-x8x?A*uId30wBM`p5MFF;5?UGt{bq@doO?zE4iH`7@OF+L>if$i zKIHAx)h>V!WjtJ{u+|@G^iMSi@^7(RJvj1=SL;K7y62*gmDPiWzq(Dq?nx(Qj3#sE z%idizn-246-&wK?N-J^w=9cHeAXy;&Oh z=MRAJWVFgcC{YbtbMw~$m=pM5B_uXJ<_j>-BmEtUI!4jtBS3}aMADGOU0GJ}-McSu zD@VEq40jjHQbd%+t+swsYUp%OQ@A#HKF=;U(C2ui_J5XFzOMbG_N)>q+S|IMFok4f=M>=%ci%VaC_;w6Pr9#s7m*&qzh_K=1 zMAT+)PkS0c+YUe|^yYFxfA2J#IQ~3Mh3NeuoltQ2Yo#{oUtza_S6wqZh4ljcKCgxa zt9m}#ee8+5mE*ffz;EDGz2o^PR1_2LFia+!$}`%~iL*7Ct$@&J-qvdR!y*f31)(IO zU1n{+enp0L>J_zJBgs6{0{@!DvnU}jf<-~BbtGw}l1gcr)(%#o_7w39eLqI6QcCCz zqJnyxF(aR!*KBgdt8Eu(AY7)t@RWC zX0;Ob)wNhWK;f`Z}-(;hj!o;V1Kea1pt z^;XD~zXwmjEQ!zOEYa>NqBXj&?w3VZviz7e6td2evSmDLrdlMeT#2m{h^$Ov`#%t} zvh~MKBoau6x)EPQ9c;T8*iI%ylu7SMu(E~$$($)Bb;ZJ9Oa!GwE^p*-b#mQT(`3Z3YIH@>oEg5?f+KTkUvbEKFAlFKSjCUe z>C(pfcFNCWF8Y`+okU6#LWdN#iS4o7w;+c#T zK~Ofj1(H2h;-GaT#Ebi z_X%Cyu6v<1?qTEToUpQ2g1$2KzcEzgv{whW?5u!t(OnHG6ZRPUo<%%KAIi&FbN3-@ z(#4;vy+_B;OmszPan~wN2p?k!dT?D&dEJ~MV!6<&cU+#SR z_0~T)#u1VqnsKBCpjn1_&JWtV(n@{!f^mUfa#j(SVhfy)Ax;78#NrgCTCesE-UPNoA^#AI(3$O;nB> z$^3);%-nItXenw_8z zZyuoBnWb4%X-8fYB@W2iCagRx)D~7#5^F*gG z2kRw!OTE5H9r~Ka(FfFMOY1~PVN#J^n*7iLV-0nVV|(`ZiP7prfq%Rd-+Zsh^qo8v z@}<-)_YM8yOEH9v0ab&cDZ*}b+bWK2?|ckW`ye(Vd~2GRw25syj}>#yck8BE*_cjp9rIcLPJ zf{FD$`Ak<=R<%7m(5!qk1x&yqfA!t6Pk#`UoRCYv9Wm|9t}<~X3pPZqMlkxBFY6Ou zN@;zUxXWNe$^tksh`WQNqs<8LU8;N=w{>GzhB4QrdB8DfUD+;byG_K+Yhb zEd6s~%_j1TXyG<4_uVx*OZt-DG3K~w!qhs&9 zPu#r9eA*S$r2h29tncY2uM~|GjMZSvYG8SmhOc9aX$#a?1O>c#F(qqpYMStN!EpYcJwn~^YFT`~V z^vX9tHsu=(2V`C@m2EvKi?22t2-@P`5d`+3;Fs7zmW+hK(ZfWhQ0VHGrMFj@=rw7V zVi=d9<04UVcN5crapiYzh8=uZ0s4X7{@NmMM!ITcHO=oa8!p!ip_x3Z^1Ey;V>eqZ zZF&SjM5judgE1)S!6bHm*WRmZB9uD6z%mgR`#sUfqZnyYqOm9G(wXs5qz z{M?>*6+@DT+ClE2MRhLr=J~cagXHfd8_n4t3QncHN4*GO*^5pe#N4%KGHJW2)q8aR zd$%27^hWyJc39 z_QLKUBs1(p<}eWkj4#evW(oT31eVP?`69J9Ea}DL3A$K2_iArQAHdzch-3Vj^B}KJ zgb>qP7HYa##7x$4;Jo5ZD^O$8qTIA0C(aUNLiN1)i%PP2ixQ$gs;t3j(Ffv#fD7Y}o&LV~3px@OvoT>?W33Nt4C zdP&P>e3fGW>1wWgDYQwQ?Cg{(78S_t(z$Q8Qh=>)*5w zFz>4$7(n~5qWvmXMJc;W-;~xM5DeeDaK^tz>NL~y^li90>{ z1`G|O{-^is^A2tbEwFxCLL6Z2*6u_@0Bg<-*wPsG_;HX=+Kp4!kS@6j^f)KRd|`;D zYl_h(7xiSw|5KRxPa6?R`%x>GJN%mqZ#|#+y7;GH>T?S2s<+$NkoJr4-(J`UV+=jG zdj#0`pDyNXDNbkh3FD0?Wr1EM=l}2s3ja`SNkLMCb-VYpTD)mF;rwO402ZwcMppwU zPvX=n=}F=ugQ+-cOPf%_?Dy;Se*+m>NW~DWP&)HXR^@%dyJughJofL3K(}a~LFK^D z1V1%s1ndPzhph=#@CizI$3@&b1`o=~o@QTd>7Bf!KoKEq2H-Y7@&26nw}mn>l2p@y zwFHh`>d)9|oWZ}2`$A4Ii(NCi*U(P1`Q%Im$?=32?U%TWKd0lPXMP)$koW=E>EhrX z#gPz=iTYdJKfd6-$OEghog>Jumq}ySvr~<^>#p$i5=;(z*KXLB<@xR`Jr|9KPZKM@ z@L!^6}F$NN1+%x6c;RpU>3oz#n{-93&@kYSv7fWCrzy5OzVA)KU;htqYxP&IQh7xyg z=CsOF&|B^0dbEc?;J6DD0w|?m-&rm_P0Cin+iw17cg>fO`MQADl0f^ zoFnbeHWNGo6RuOQmWV|7-0AJ>vXkx->rCIMS2S?lZlro0e)LCz(n`{xQJ5bTW^ugu zJYe55O>$K@*yn=QYA#ObL4~A4H_D9W@1a=7;?S<}!eBaQLe%}mgH%?xCyTEr`>nIR zkrY*j3hCkMSzHk4PtA-wiz};FhO*m@&AhXHcf@Zh<8~_(pR;5+3c~ZpD?&5QXp0?C z$spO=fgMd@O!vZ|G3)ecu9x|5CG~c*X39Q8w@m<0^qjP(%WA9_Uc*38C-ywNAQzX| zxm3wMqXdC^hj0EI{}XRhmxiskKHNCP!>3W<74q321!vs$PHU>hG>YVlCU>%+U!8j1 zO|AsF)+jF60P>1XKD#J_TU9!ZpBQt%B{F6i<YfHTuIdYgh5kbjgt00lL8wZTZRHJE>q*n$d6*Ry5?R`}wxvY3!l12JWRC;% ztO1}af4(~pt+|%&CBHJ^X*F)U4?108?HW}10|Go);ZB(RBc=@dkXccN!BcLALq?xJ z)@!urQy>6@kFB{pqBZ?f{81{c`Zkk+sbg6rr)Tj}I!h!3XXwUbbhxqJ~xs5;ospuf<0In|o+IRTKckI-&PBmG z>enl#?CWcc;$IWx6b}Eqbz3W8H7H`h=>;U)L+nEy44V}UUESMyBK4j9C(9gSJP9SG zN+JC)fufa``&V3GwNBn$v-lT@P_^Z46#);z3(n=kFZnUV0CtVO#Ef$ZrS@Cu6ufGA z9gsj6WMxLw3+lXLHK1VwW=~HKVrHRt5#=suUuQJ zi|QJwbG}^AU+`hE^+N~p^WpFfU#Y|3eXGU2=j-O^gX7Y>#LZtjDdI{Ws7WMu`W{i4 zM}$Z&RvvsC20mX%V}XDX3nB}wxn(YPQ$ZXAAv&tlXdhNuK5ZC(Wb#Y0v{WSbx=1`$ zSJcnf--g?LL~~N~`olGg<_3xA@WzGw?(%m+caVVXE731ae6f~teo5&wh5`%5?WxR9 zEH&Yc^shg|$%S%)363zodgNK_-+uXcA{BAeMDITFbC@yoVdjQZeyf^2;7wH6fz99E zUk(DN+#BQ;3rf}$bfZiS+^vS`V*!I5C*;)WOjDxX0|Jh1Wu9|KOJR*0SBR6o+IjW$ zPk!HH_CI0%&?#mJHNdS|l|TFry?av~c45i`&JbPT`x7LDvk^fQ&WqhInib@rUf87uOZPvQr(1XhHD0vOAjRWaMRa!~B#&=x+{Q^tV?41Rhc`i$9*pjb} zv%i*f;48%!XY+v53I6_ja0#(JeY;{jh8qyG>mgnR6Htwk%X~0mzfNGSa3#3K z1b@piWJh}kO{JNck5>_1AcljnG!E34L=~rYW<8Sn90%d2o^h;QmwylCbYt}ryuP+1 z0Jz8{eg?Tz7vN(xrUNw+9rp8Lir(G6Zdn%CpRkj`EK~rQ@3}bCOLG$7HU+RYKde@G z#v8i%oWf*T+fMx~JEB342O^Mr40KMjabJSLz1?v+1aM5;H$pWYS;2&!Q~F1eKIfK3 z#?W-~_K@*2+bU<@QVC1fQiE5ehC^91Y*Gu4!{Fhsf+klU3XOe#2<6)#I3ZjO4*=eg z%y~HFc}Bc@Vd@TOiS*H-bouJ&kRWa{Da%{)ic7@!?tx9*!I4-xQ*4#fL~(tAn&+@u zu~Q_z69dcg+4?;@ZdpsUhkV*5=mQF`t-uc-jLI%>Ic-J9=RG$I8PG}lfUtO3+5`M8 z=PI%;CISMA+_#AXGpw26B`Zt~dA=Qq3@cxCPaSGo*eTPYySOcH&pE0jJ8N}G>>z^T z-c{Q55Wh1O0e+5*f1E;6sKRc-@MxXe@>02Gx+QG7>3gZ{Wmi`ttO|^ zw2K>VylBkpRxyn3Nw|6BeDh!iq+ZFl{!NzfC_J^xI`X?@>ob0K&F}6S3bG+z&R6MA zI{VAxx)zKr4St2eVMXFh+8rzzY@igPuJqlDY-1R zeBaQLt=dh@8hhoQuS1VToJRMrNX+W1kAa*o%Ilc+3K|f=hw#A}EiC~fx>q~d>a1tk zqt<#Al3610LM;N(SO-zw^*gd#tFhlV>;1>b)0cU?@NcOCsw zAATTL!$=&M+ym-v_bU_`GLwHHC-I7klfzXrIPCL)>X1XQa7>BgL%7f4p0IxObglUN zs9scCS)&>#g%$ifFJaRzC%ioivVQn$y*RjTc_~)=aKDy{6_6V|dXFeL8jn!hXwaN5 z^RsR7|imjHp{uW?4(!u8`k*dCW#sPZ`ZW3^#(CcQUfG5QVp}&tx zHPrOgrOk$7k=br{p4R{Dwvx4|L;@!-D_4v)b=_em} zIo13sglIJ?O#nazk2|NEUcJywAW<2u)Ml^v+zvJ|+JL_`NN(h@T^o~#YqcQVlIPob zwr)g!o=DyfWDHpCqtJK*%t)n6U>GP>zxM@pI1`*OrfhgF5A|3>z4h5^Zm5tgKF#R2 zKKwc`xDH2#`j~PON0wo(dD3(L*?Cr=%@Y>iME&91$LXeOdR^Ap2usk$ziU(rA^g7p z2toJ0M$t~h0^oBJ+xDhjsexZ9d)VMEe-pQkUfT`{9e$xxHA^$vtsXiLgV|!5yUbQE z6S^o(dz)z=qG_+dSk)@Y(`@W%*Y3~b0Kdz zL>@^Z#OBBMidBE)+;7Twr+o-=F(LKXe*MTBKT1N4c*s#7L))W}xhit_f!!J4*v;{S zJod6j-Z<&?$M5y8$Id-mjPDG5Cw~x8Qo1EsDr*5w7)gnXMU{;@Mf&^leiYnGeBt-r7KtZaukAK zT`Xmx6wljA37~{~34XJ!t@b5s5?gk3uE2U`wI{xW^by48^RU#>A_XUb06st`hk@_= zt{TM)?U$PSy1w}IC8?2u15a*nEU@I)`(Gte>HGZOtwrvyT>JVG8TbJ3!9oNBUyt1O ze82eT9INvEDhKeF{%(KT;3&0iZ)o73+07A9B`x!A*#ZE+qu*9OD3^T{!Cv_KCk6)IuIR!a0`&XIz{ggC^*TO@2WT|k%y}mX!8kAXJ>S;PUZMViV7I61#*V|JAxR`Oo(_)u3S#u+#HZQ&rLRR@l z?bidXZ^U5tHn8bCJL^O%0Q*IYnniniy;!!SRm_-DkFoGLj+0{0o zKU}96qS{M8)t>t6e(~V%cgfoiTG}Q~d*d8W&u+0yXd_FL)n0bKtghrRd%2xCPH&4f zLO?&HLi{jZdzpu(*O3GM6{)WjZJ))3Xa6kR2T`2g-e z7whg4!zuK3j`F#!(3>XUdOv{A4iApZi29t^ifcDurH1=jtd!YVi1kFQ9PL%j%Xg4C z$}LrNSquOluVdGHhNiloappyGb*e7))-`8$vtA`j5f)hbo1WwG?e#!TJNxaPeLpq; z-#cVKdIGBIz6>U@J*#>pbe8@O#ORm`eqzIcgiZ_q{(|c=tu0;q@zGjdeh-K%9dgxd+LRpcZd}kK`_|8T#ZyvPkJL<(@N3>vH&s1R;x)$S{ z+E{h?#~G;`sfUlX4PAJx0PtG?;BzYhd|Wq*24Z*rn7HAVU1H0=F|m7KRP4v>7bD|o zaqb1v#qt+H9>w&`S&ULIv)6RVu~i9?k+7J%0miV+FxKIlo<4(BdNu8%Gwp3AbeM*h zhY_rrLb-%8#~o~*J(4b?wh*Sh3vLJPS5!@Vd!$BW=D4T4g8t>&OFbODn*J5Em(3jaG3|5P zE8M^C{r(y;!dY~%%v{nTjylVl=s0V8Am2)~rhGWlz7$RSV0)nBa~K6~`<1so=CD_A zB$5m2XPYx&+fTnHwtj;W>2MfhBpm8Uh`Lx$@ld#<>E&O_sW>Veh%R+iy=&c%df9+ zIiH63YGJ~51K<;E|1Q=yMX)zJCVqyM9i01fT+fkAl;B}!eYGy9AYpe`GI0{XPh%2W zGXygG7B5Wc?=*~$U%l$QnH3)?P)VDVBd$Yl={as(q#ul6XYYq`czLW`d+yZIH1Ns5 zPo>tld9~PD@?cHvS2uuv+kSGZVN=gHN6qcyduzqov*Tglw>5M?LZ^K8aKU@SvNzzp z+Bcv)8Tt~W*I+)G_ew$s|A5)4bJq2`YBb@-X-$fCzYp`zjf`8My)0QZvR{GtWA$BYM&s!1oL$TRVj&XFQooAtIz7z#wzn0yT9Nvil7=&5x|~sBi@9o8?*uFdyW_iui@b> zI0kVT<7BS+$qupcg%L400uXuHrIPJ{fyi7*M!qi>63hTDOQ?(T+9>!dC zS^_=H$6MI`a81|-4EM(GHYTq9RCumDhu*iWt1eInax?8s52U%CH<;#22ViB#&PgF{-!wtS8QKAJ$Yq}Q>J6}f7Ny%~<;Uye+Xb^A}gyk3myiAgVd-$9~dig&(4Z+XRQ zFZ)s9^(T|r!kOb?_EP>5kG&jwMD#D`;V7>!&A%qnUU#in<#^x`r_UF&4(%{}0bOUj zn)bF^7g8U??4`=I@cJ0dUfv4mFJHGka4TSF8y4bU&s=$`7+w`1lW~}S$-_hKwkY}S zu>jwTDI>wjTdQ@MXaJvf$u%zkee@&xF;T5H^rtHU@S~R$d+Z5X{yO?CHF@Q~Bh~DX zD%Vnudi)R)drV9Trv5KGYph8vV+uJun3Hk%4`q!Zp1`*wm~*gRhc&Dd)5OA$IWpG& zAJ%mRM9mQt_haSc#?`p6^X?^;OxWU^0pO9=%&&LDc3k~2Gh7DFD7G3=Sest`$8trSqmlYU=Q}QA z+ocA+Tw?Y=e$Mmz&;j2G!)X|g(HYQQ0`)k@eX{DE<2a#kJvR(qtF9-ok72UdnGShu z0`hxC0N`_s1#mp>rwJ$E2Y(aa;6CMX=mPG(`f`>4zVAHuCFrkxMq~Ldd>_$X`11e6 z+OxYRa_*gqw!aC0Ur}>cB(lRr$GoRS-xepby2d8)$;TcR9W!SJn7Da0+I1*4bKEo* z^(k=iQQ^qKr{qop0e#k7R!-c24mwP9VYX@Uo8Rse5B|AVj6*z&`dM7&%xw_w`oLV> zYN$rYfZcALEr2<$8MxV*+1|F(1J?RS9N3*4k(vG~U*Sx9OB-BgG`cpoYK^_&7HKbw z;hQsl6Q9nHQ!dts48I1x(-}~pyGR1238<5&fw+o(2 zJ8JXsS0UvPJ~Bd=yK>*ib0!pQFS~x|hh88(IzL%Qq*$F@erCR>{+UiE6OZJP1V4<^52vH)dapjRi(iYdHu1yc^- zuh_KmL+Q&{!SnGf|A)P|U{$l5SO1a#_=S}bzxybqL~Z=ZxR6=>t}yxE4;v^*XHg#T8(Va9)jblxdm_%l{w~U&N{>{wX+1)YAWL!FN^e22SXHOQoV) zeAC_wfmZ#>d{;!?rcyVKq{lwA>Aacl$91I=U4!u~y?Niuz`uPsvVHCMar6D)d`F~j zTzB5|3rjJ>QZVrG-3JYP@AqCU?&H1vsx_~lTAj~JP^p*vrblbw2NeZs%HARk2L9C8 z0DSv9H7+}lOzUXeqrNCDdu){$zNp7mDrd;8Q2Y8i%I0vN*EPuFik!>y^%g^)`>nwE z2;lR}e%CORG=TS!h|4c{;(Rs(-`SS{Kd#fP#WBk6Nbp|CXPd22D&Tc;B)k^G51ZRA zm)($$vAX)y3D2F`{g+bOidwlh0q|?3q@tx0LiBUDZ&g#&001BWNklKN8l z&kTxR{(KiIzMI14=9GBn2WE?@(}Rp_PkLm)IhfEo$lOeKH{QaT(B4Au5nY{=Q5f-V zFNKSe7Q^hdQ{<$_ld!^><95fnCwyOq)pe$Xtax-UgBK*X?C$erUiZ*lyTwy~q2#I% zhrYB+9Dl|PeN`}AgCIqZ7;hM#ToAFX=l{cPWf8p6NTa!Aj^x5H56M)Zj(Pjjj z{6q6@$1zTROAxTymju8su7n8UPd4@xJD;M+q7-K__pU4P^GBry;=7-9j(~fd3nycF zE!GF)3^XJxwj*So*Yff(5`P)i)iGp(QajbEiBDg^L_L*R7T>)4BA`cE8TffpF@V>$ zFSLwI{Yo;)ZEi~~y=m`DfdM=cN2vl+#i9^#DGN zRxS221z2c$&`zvadrmwI{MNd*{zBu=cfFi{R@+%J>-k%wx{^VU-v*TD?*@GiSUdoF zt_HL>`9Em$!u|q;5%`5^;S_!;qL-|DH)$+Ty@dKPSzFT2x1Wz;{x zX?{k!SDwR`&v7)g9kax(X|K&~8oNBq@!T5drkqvt?+5?A_A*b2IP4YTUkLuD?{5a^nJ;~&KCD>~sHSL*hcUE@Ge~te$e^yU*E~a}B zq?X0*m47P6URmdC$n9Us;lk@f?F#KzAN_)WJOcnCGLei@SMyy7H}_1;*P`da(5EMZ5KPdf5Q$Zu8C`jdo)E{ z=`!IQiXU-wROC(9;u`_rr!a}F^?m98KF+@{)~4#}-m~@%Q|`(e;Q@NVqFeU91Wdih z_#T|!p6>T}`1NAty7Nm1@bSI0#sC_AJfN2Lfv;S(u9_M6x9)Qo_%&{C0QfO6@B!ev zq**TxCvh|1_i(;_!@Re(>?M*z;N39qCDWd>Rw|~w*#e8#jC*yQ!rG0P%hF6_%YBD| z&-19l?Lhx$Q9=j5cMN94Fya^mQjdZbX{u^yroCj`YiXTP!@$@3WZ?5U!@M7Z&W_96 zHyZlxce=UGZa*UW(-%-~pPTGWZvx;?o)Qj~&iVVt9ue&`rt8K*Wi~6b*4QGHVQN4k z696B|>IMV<8lcSX;dXk}tgbT?|IdD~Q>T=H)2p z?A|n+{Cmu!i`j)i9oZEfoPQ30K)yo#$z?PT4UCKHzP?eF3Zl96V~2=_W=^DRt}zzK zQpWl0WpzrqXl_VngwMa+_+7gdZZ8Wwj>%r8)~RtV!TK0wWP*98c5c_fxH&Dvzg&Ou z+b6rd^h>=HZx;WOKHzqm-Sf>=y3-AUv9FpX4tnV{r$O_NyfJz6+ROczFzr{#_Od%8 z90Tf+NOE5}sACJuUqkKVtEOQiIl?83o)?UD(d=iu<{8!tDz0a zQmh5qa3fit71i`DHnIA?Y6S3^v^iKg38i1V`Cc631eK~6uR50mz%RaBIKtvJSgF5W z%gYCmc+THYsfGITam%Fq5@B9krVQ*wxJP4szD(g$yT2BFXf4uxIo7x(0Dg`z$>y)t zmN~sUq==#7R8!Z``i+&=e7ZgsXW)fV-l1nNRNGdn{vNF@7H6Wayz`AjQs}O!}F~O zXih5__=sl5P(}=JE=&9#LrITQP6z3c%zIogMv$HWKhIhFV>r)!2ke*oigiyYU+Uw_ zZ+?Y8NQEBmvvZ@c@*8d#A6<;e$0xPiSpwis)YC2Qcsu5A7JV;x7;EQ$hL*;1ksLlIPQ>^X_?;1h`$olIf9B5L_NsR-#egHcept)}*AHF)iaIhOzr7;*SI&G{ z41V)2r`uzH=Tg!6^7)t3S)suurqwpE(w4?Ig0iJqN(#6V#FO;PU)QY-lhmS zy5G^ssk5(tgrB#niKc)?VX6k1?yiCD#>-7uN^E|9Sp58l+r^mm8s7joU zd#p--eWLN%qo7iqpRo*lhw<+pP63 zOZ?&P?vtCbK;oR`YZXtjeKO8$Jg70nG-*Au%yEC-F`2Z8Io_0iU}&u1_5_8jKl ztFAa+jBfawuf)Wgao}hEgUNm*3zUF2eKUxGE7x6AB7lD*Cb6y0NDchRARw--#_N%+ss`|v z+_KMbIIGfrk;^|74}ibmx=pQ3Egb`q>VQms_4! zzX{$eFkgfE8qD{D`22P?V16+memY%u{D$+pYgtM!XY-i=_;Ea4CN_*IV%qW@V$UjP z2G~@6gZKobb2?|u@-Vx@G}>)V`-#*X@9!TMKmE>jv1gB$jC1no-QpD|cDo}6%BX42 z%3w6loncOtz0p{m&D?e#>l%c%watu74(-YC%Bj)rGVRNwIUdSTx0u$U8tozW@-yj8 zxM^shUHAVsicxmaVma%r^To8eEtYwsYuda1?K1F{2D$>Jz5ZRL_R6AZ@6mv>JEfRE z$+%W;rQVSo+79|-B8!zWwa&LHX_F)r?m!*|vW@`pfmAZ>O5yqkTrRc-bY3 z)kuwykvSE!mnpA2{-quf;hOfvGVR0c<@$jdR++6lhqrGMYc2!fe%KoQRM#*f(qm*j zSF=3H#6E4qWB(xzUs;U_i;$*T0PyiZ5P!r%D61P9t`|cMowaD-iJ+evFz8S?i|mIzvuajX1l{h%b1^P4f>GlcO3=`KcnP6 z)KaW{@m{-f!^Nco`02VdI$46>LH_Tes^1rB0Ql1@A~{vCe`PYM#W(MDH1KQL-f-9z zYtNfj@;k`9Teh^dX28G?`Q9$XK1M5_Tgu#|%og9DX3|-sbx+Wq!-5-t%u_C>QOe{f zkX`}!N;anv2!12(Z^TKm_jz1iFJ*TW_|N+~aMPR?&A`VDwu9p-fbwYx#E$~RCvr!y zor) zJ2{fY0(`kAI8v)iEdcnmEr(_O87qM~dwCOfuB$TRCjfqY1yYUWn=N-A!3oNsOvG{u zBE382h$}S-?>3~HjCpHfmXdR_7$HzkzS*LtL=x=#SOwxKC5mHlbJ^!DkO00Q zfUn+`%=co<`y&9?zSciD{x93#I;ZTN5~UcuT=y=%VdtTlv{)5~ed`1?@M8k-%az}X zhMP)NH3Odjenst3rpWNs6dQowl5Q!v9pG1-T=9onO5T_)8T3X9$4KT7fNugSPn~=D zn{0ax;1kF<`|=#_C)iJL->~lGwfY`TVmliEK0$P;fsb$T5zVwG@J{Bv&9Wy0pOf73 z7y)_-^y}X|rzW%ohfFj04KrWr=%ZDZTYl5(?^^j=mva~{k=+Hxk6m}(%(6dM%H)DM zgG~VZiLiQnalS}&%zIq)x$`u%&zK>ue*AADRfk$z024Z!rn}2zwd7_@xccSC&+PRx zVskM;gA8vWRy{EwZoYn(N7|;Xy-vL4eRD-u7xQJ9#V)9pQ+qzo8~~CaV1x2Db5(=c z?CA_+`r4Y?hH)<^+`#2*T>ap^DtgtEm`$6zPelk z{QvE~z2b@c_Q=DB9MK_OdCqLtZ;SD-9Ci(x1Hg1%WglsvGG2&(1?^QSO?&fz3ul-V zS8sG*ncXW8Iv0gI(xDvo8XX!HfBpeSS*zuxmn{};Q=64P&(#`fbZ{#6_! zUZu-1Q;hcV&e;&s4u{PF5Mg8j+pAR<9xldrthb&>(tA(DA5IpUEV(VfIRhTR>WqG? zL4(x_fKSuT)Al~tvhx6bQ}5bs945XH5&%EGGT@}PoXFU2q~Z%bzL1t8sMYZWS8zz> z0Pw$wRJ_07loWTv|KK)ufW);NQUgB2yppB8B(6;72WENFz_##S(*kuBy`fL z@imTaZY&8?-yfb2jLPg^weI{XX5inn2L$Q~u}iGwfexq@>o16hfiD4k`$M!q`|vxE zI276wwZ%U8@REryb?@aC6VGbKyxL|&GX(6LF@bG8woTX)lqYac0KXYG8b*E-z`fbl(&ufk*hJ#oC$D#9 z8v;yweS@Dt9|#8r_U{`LKm5j4G0av#FPuo@oQr3QLyv4_M6N7~$%g}4d9$A{UmgHl zhHQhD@z^V@J6hQxzr9rFLa>1H-TxbU#$A>>$M1*17LW=vts?*j>nslHE&+34!x&o z40%eH92OuW{7I~yiQ{X~VzmU|)4T+`sA)OfvNb1TWoJq`CVwoZND~0R7^`K!=MOk_ zYP>knMT@#*1e?TGq@} zQQ!-&+qNi`s$b{*AaUPM3$lMo+_2$|vo0zndrJ*~Zvrvz-L<)2{Q!P#+gG`#NUc~K z7l1$3+;3DQq{|g(A7JQ;d5@Kt3TqNEF~htkh_5E7bpd#S@?_MvU<-i*3H~=@+l+mJ z_+~4?d|XG+zYzgR7QSKXGYniy2L4Rk%w+G>8u$`?m&|*D_zJw2YBm+8*ST@7l5ZFw2w1lRmM zqyZTlTV5t$FMYdio5PsM)b=71o$2D1`vqyVd;B$vrnUtV=3&lJhOV%41luRrsqY^3u**nb7!MC=FP{j@s~O|#@1 z$)OnuHq*t=Ot41?WwY1Te|xXk|Jxt?pM;;mfq$>v$79)3{yW6Li6d)$sWkwf_I?f4 zyH$;M7CP|Ts-!Ry06+eMxD-MDBK}}w3Gqb;sU0A&g{6#DGKmomW?dx)?GGO4(h(!ax1pt1r{>AF7Cawi; zM8rsg_=M9NfZ}ssO;D>Pa-<{dobv+-v->J4WjtGzZqb>1oE*G+?R4Xl-fZU z&4z*R2k>#-bSa?&tvg^hWX}_TAMt46E5KgL=MbzXa8CeVgZM*a)Z=#_zOX z0r0t%ayneeyhpbAn{5aIeWLh=5F54rqN0Cm-GwtMHJY$ut#1P0SIpG0Ml?lq9lTTQ zf1Yzx$fd5KQGDWWkBQdlAg0OIM}yHG#;3ZLr|rc<)O4SZY#?-0eE_zhE4h(F!APds>!HQ6GrnK`FXT=DL?qK@5z=*BDKxlpVif$Q!hgzA|_x_J2?X{eE^k zMU=&B$o`nb7V=lI0Qk+LVBi;-e}e8@6mYL6u*E*%FRq+$mTY_j+BXrj$8iGlEdX8= zNUvD*1o1iHErEKTBXHj$0eqv0uVr*!b!L*44z%?_V(7 z-f26g&7N%SZ35ue;-j;v>sCx$d$yhQ*M9c1;)D->B%sypXpS3D*8-31(Sh=?Y+7YA zkyG=#6peN-v%$wGwVC6-^saq&K-}`nono8_uU;C^LS6CRxnlYZ%%N?8QrWcS4R~6w z^B1ORpUqx8uEKTuM#Ai6&ypPoU*}JPYfd@1%x1YM?bvOSVLC$kZ45Sxzf{CJ+xnJTGuD~(7MlD-Yym$J5_3= zvFo0?YH}9xfZv9UQncy=0BQT+JgqvTZ-GJZLON|Csv(?9Z{vGCDE;HM_ zLfHArQr}~YXS@B%m48n?$=S}yX3**F^mGzr ztB=Ll%W6*ysGe(th{ryWnEoms-t_BztA6#|{&TVIi}-dXJ;Gg9;%7;$r&@fx=1DU_ zM1n50tb1=~u~q?m_5DRFPcU6!MI|;AG&Y!9vO{X9YcgLKLN=;&GC;K++oE1Yp*!jFShH%Oq#AAqn?M1m4 zvhT^lujZv9?;8a0@o@nSeD8a&`5q1)H`kf>DF1!MoyQC88ffu3O zuHAjmm>7HBwPy+T6PcA8FD;dU4*)-1zs7#QcE9W07x7v+k20xh0DsX9yB!VuTCk@* za@m*OcmaGHH_;7FKKoF?fa#;gJ+<%aDP^Fyk`xKxo!a+}09>Tzz21^}Pwji|lWE^d z);(_M#Fi^Rpb6kpMu+D~va~hv87?QbHQM;C*zd*xB0l?}okKugGUz3EujFv3q(E66 zg7=1X&+Q;Ud*-tTIy(Kl7T`ZYd;{_i0{0mK@H474^2y#O3!f9+@{3e$5x3UFr$)Zf z!p~$~)%F6<0k1X+2q*Zjt6=)|vpa zvSKARt3hLn3GKh0HM)3>c9RMVthFhk78AO^cT8OSy=`KDk7DAQ<&?9hikBSM?gaAJ$6)77q4DQp+FQZF6B%k1tqV!sfqLjZWc*c=DD$-n;Ijx0!umI?(9?64 zU*Xrq6I?!%0l>FS$Vd3wv0jCB*#z2lM3;FrF{|lsoP2Ylm&wAwrybcz`doug=MK)uZ|DE zA8FDI{KB%zFJ`&ok5n(<7Aslw3TM%J^Eb6EFR7)>$J-v)&hex9on06$i9 zRv@tUdFw_0mP72A-g(WhOX`^a7Zw zeobiZ-+J9{vHBTrTe$SFc5%+7GZiQp!rV5qcIVTycdv8vBOyn2SmGah{x}f`?QFE{ zC1`J$;u^h_`?yJh`9==LV$6nvoCc&*4OATVa+&_B^Fr-=nGjh)Rl`sTEiYpq+rM+3<^L+>pf9_^_*Or`=m0=VD4u3z+{yY~5>5pnRVrieaVyC1DJ zLHr@iSi)JyS>Ehvb?jAwrhS;Eeo%807V(e z;rf&A%+U=*Da`R`_Oj|pnfz<@9b3ijH9ay%4J{4g>%h)wT?y!hCl{dnO=rMJhV0*|>Wjp8z->*rOPwqlc2%K$#} zOkmkBoAX*6yR%q>#Bkqa1MrPW_*mzprvHkS4Cjeh7`I#}&bmqE)JRa{N!xKz5)IXc+z5G-i2$9c`K)way6O<=d&yEI4 z?(iP&4}qE42ZWxJ*^-&htpf0|#c??iuAC58G4jWeYs18+CO!pojJ&d~coD^(t>fv= zr!SdR3-1MyYHkAHM>12@T=aU;)cI>M;>v(7KjTbs$u&RnB+vuesYj;;mY-wn?NeB{Z!w@QnovJ=TL-}=Mrv#GW;99|x}(BonCeiV zyi5U^^VB>`d#tY-PE{P{WhlD6?C{lHZiZE#hv|K>8O1s}&(%)!q0DuL%7;lk8ecvT zIuK76*!R;gjB6UU-B>#r)gT(`fpM{Ka7=7Li{7}fMeN1{U>_RnJ|t)WD|>XM?pcVv zY$miSPuIUp{tC61Eb9=bQ$=U_Z;bYGvu35=3O`(FdP*NrpfY0H@^RSkp56)2| zLladP1;qPTTzgyr*B5)~)wuCLi@mu*_wo74(HCW17XEz8MffOl82Ikjt%`Oc_YwDQ zB;eD}Uorc8k{(;b%OTh8n3EYzZ;i#CWZ+*urzAN?$-oDI@8Bb_t$Yi%KBsDB9|^B& z0DlnxeCNBa2JP!|22%j=2C>;!@$K6)CVuv< zEnm{E^Q#fcBlR;Y<|D3_O8mV1Fvkb)zS^5%%Hh>5lzlVh0-czP38C9WC*$G(df9 z2lz0MAU+%GEdJ$y>bdPY(Z5og;2%kg->2 z{VOQkAc${X4g&Qr=ST{74u$~pU*;>9e`&j0<&cv(ZW#I=|ISg*)w_#$@Y^7PYvlRh z6XuAyFH-GYXggyu%-sBkL5Fk4Ph5tN|kWWybA_ z@x^D2{E_Wmj(RiRw_j|y2;b0yd#op89i#~4gtj&PL0RIXp8DG#EisI0ynQkN_ym2Z z{lxDDv-}f&{L2Ixe6j=h#;o+6&rN`hDdkfQ>_bZVaI(~DSWZDA?v6Pj6QO}`vhXJS zxUPi!fW=c%2S5o?7j)}`xcc~l?kMi!T9|nKd1P&2aoLN07XkcCIu)XUUsa6ZM<5CP z{>@j+{Y&(mRo9hEe!OkgXkBJ|6lQEbW-@ZNa^n@H1Nil0sWl!vz2S`5f=e{ zp5sTLlsU%roU720yOFXtO8SQS_)MRf>{iL<5Uf}7IsLeh+W{&r0Kg}hPbnR0;d4ts z-{|TyU5v+U4Sq&!PLW&-^0WWg@Wxr6s;-u@_|zl-e(|=e^qub)4Xxj_4>W57w932cMl1|~DJMn`3iJMmcHdLWHXnp5K1 zZ@nOPZugRPj(^P*aoowiQQp3MnQ_ljzh5U@aURqGw2cxalbZP!Q&l!$5)@M)nn@db z25nPwSF!O`j^w`0#@BI~M##380r5>dxyr$@jjwcD;Gc2G|LK!fmb zRe_k{T}{Yn8y+50Afq!IPk^}q@#o-yG84b2w4f&#Q$UVlDAlgsaj_eX^)?u9D_ZDn zXvp{CcOONxelyJ2_dh;Kzy|VkE3mRwBXt(P|RD1RB9u`mj zl7w2dyzI*5qJiTAv-qzQu5w4u64rj%BRR7Bm$!oW{mWBUk;^OGUh3sGOS+3{mt9!j zX@^aAvb3+ezx|J*=jQ>k-hbmZf&d5NvJjc3b}B)k$+k=e0H0;@Uq1gNLz_(PiI5{W zPyl?|{oPoWRlQf*6zZ3T8Z}cKT1mst}M4dfKV$j zrwS#BzFd|Z#1|+##3)Nu)@9*O0N|%m*Sl;BMCZOHS?rDpKCV7LemFcLKDF%~b9a{2 zC}jwI-p{wpXh^4a#$ji?7q8s-mJ$K{|J%N#zOD}Mao+Fwn%vK%uG;XXDwfdsrWSs*^GO3&Z90_(_g(Po*B*@Wz>y=rAusiy90v0q`qg=8_|65mT1z6Z_V3Sg2eY zT3W>?o_SW(H-l-8edV%2jpNca?M-E1tcIbW39&^md$Vbd=VIF1jb5ncIMQ*~uXl?l zA9kgMnA*7un#9F#pX-|wz!fZ&_L7jSGGHC_*(Io}L3_g-;OyT{k4+YDd{@@uIa zIh=>V$%aNT?Fkaf2{_Q;O2)kokFRHDR&B#TFy&>K`MF0X7!Xi1ye)>a(-~kJHjK%h zW6lIe13ia-`I*pimULKv4*<&NbYnXm;Qe&;uS_3Ji3N~1nl}ZS_-!dMf=0UsQ<87q zGa{bZHYA?jJtQ_`4Al^xKnW502f86OsEG=Lg5#t{LkJk`U*Xxj5Or~I?j$EYJ;+)f6&{&`=C^3}(} z+Jjuoabpf`KdZ$Fj?l@*@K*0~UV8;K+Wq#~aNkz3{RxG^)uE7%c_+!X7AT$7zjb^Z z2;=lwF^yK!LB z=m!??RGvsCY5~bC>e9&q;I|_81a@tSqc39rAB(a|X*V5606s1C9<1Lk&141NeIo9- zx8S?tyWz(O>MijFS8_;`4ZtTqf}BNo;-JLpD=9Y$WN#oyVYLk@?5XYv+Aae4byLwXw|q(dOy+rrs6Cz%RnS zD>uD$UTG3K0Pyi`4-I_SPkvUpct-8*S2=)x-A)X#uVwpc|44&@e`!1n{H8%L@HHM3 z)!$f82&7ALq1M1BGoC|DDR)C~oveGx<}_0_M{C|wHb;W>1nmjplY!r)`Te=;v)MU}Y zPXPSdcou$9q#8aeGVpM{oc52O6UV>*gPznobQA5&^lImrf~obs4-~XJtek7ypjG8? zPngaE6S{X_qh%U2wG-&3#R}Ub$``&Jp{blUv)5*-8gPBhGXvuG>vt$-wD#;~fWdEi z*F4eL-5~RB&o*YV#l|rOrnq6+6RszSFFW^mk2Zj#lTT34FzMNtSb5;3=rojzV⋘ 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 ZG(-CX9-33*jNkl1XeQ)L_GeaT;Y$- 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 Date: Wed, 25 Sep 2024 19:46:18 -0500 Subject: [PATCH 14/41] Move demo further up in README.md --- README.md | 53 +++++++++++++++++++++++++++++------------------------ 1 file changed, 29 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index cae36f65..9b77da0b 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,34 @@ The rapid advancement of **AI** technologies, particularly large language models Gartner research predicts a [rapid increase in AI-driven cyberattacks](https://www.gartner.com/en/newsroom/press-releases/2024-08-28-gartner-forecasts-global-information-security-spending-to-grow-15-percent-in-2025). This shifting paradigm calls for a reevaluation of traditional cybersecurity strategies, with a focus on proactive defenses, rapid response mechanisms, and the adoption of network hiding technologies to safeguard critical infrastructure. +--- + +## Quick Demo: See OpenNHP in Action + +Before diving into the details of OpenNHP, let's start with a quick demonstration of how OpenNHP protects a server from unauthorized access. You can see it in action by accessing the protected server at https://acdemo.opennhp.org. + +### 1) The Protected Server is "Invisible" to Unauthenticated Users + +By default, any attempt to connect to the protected server will result in a TIME OUT error, as all ports are closed, making the server appear offline and effectively *"invisible."* + +![OpenNHP Demo](docs/images/OpenNHP_ACDemo0.png) + +Port scanning the server will also return a TIME OUT error. + +![OpenNHP Demo](docs/images/OpenNHP_ScanDemo.png) + +### 2) After Authentication, the Protected Server Becomes Accessible + +OpenNHP supports a variety of authentication methods, such as OAuth, SAML, QR codes, and more. For simplicity, this demo uses a basic username/password authentication service at https://demologin.opennhp.org to demonstrate the process. + +![OpenNHP Demo](docs/images/OpenNHP_DemoLogin.png) + +Once you click the "Login" button, authentication is completed successfully, and you are redirected to the protected server. At this point, the server becomes *"visible"* and accessible on your device. + +![OpenNHP Demo](docs/images/OpenNHP_ACDemo1.png) + +--- + ## Vision: Making the Internet Trustworthy The openness of TCP/IP protocols has driven the explosive growth of internet applications but also exposed vulnerabilities, allowing malicious actors to gain unauthorized access and exploit any exposed IP address. Although the [OSI network model](https://en.wikipedia.org/wiki/OSI_model) defines the *5th layer (Session Layer)* for managing connections, few effective solutions have been implemented to address this. @@ -30,6 +58,7 @@ The openness of TCP/IP protocols has driven the explosive growth of internet app ![Trustworthy Internet](docs/images/TrustworthyCyberspace.png) +--- ## Solution: OpenNHP Fixes the Network Visibility Control @@ -128,30 +157,6 @@ CL-PKC is a scheme that enhances security by avoiding key escrow and addressing - **Strong cryptography**: Utilizes modern algorithms like ECC, Noise Protocol, and IBC for robust security. -## Quick Demo - -This section provides a brief demonstration of how OpenNHP functions. The server protected by OpenNHP is https://acdemo.opennhp.org. Normally, port 443 would be open for HTTPS services, but with the *NHP-AC* component installed, all ports are closed by default, enforcing a Zero Trust "deny-all" policy. - -### 1) The Protected Server is "Invisible" to Unauthenticated Users - -By default, any attempt to connect to the protected server will result in a TIME OUT error, as all ports are closed, making the server appear offline and effectively *"invisible."* - -![OpenNHP Demo](docs/images/OpenNHP_ACDemo0.png) - -Port scanning the server will also return a TIME OUT error. - -![OpenNHP Demo](docs/images/OpenNHP_ScanDemo.png) - -### 2) After Authentication, the Protected Server Becomes Accessible - -OpenNHP supports a variety of authentication methods, such as OAuth, SAML, QR codes, and more. For simplicity, this demo uses a basic username/password authentication service at https://demologin.opennhp.org to demonstrate the process. - -![OpenNHP Demo](docs/images/OpenNHP_DemoLogin.png) - -Once you click the "Login" button, authentication is completed successfully, and you are redirected to the protected server. At this point, the server becomes *"visible"* and accessible on your device. - -![OpenNHP Demo](docs/images/OpenNHP_ACDemo1.png) - ## Deployment OpenNHP supports multiple deployment models to suit different use cases: From 7e41180f632d7c5b6ebc136a8e468a7bfeb99c42 Mon Sep 17 00:00:00 2001 From: WinGeek Date: Thu, 26 Sep 2024 19:27:43 +0800 Subject: [PATCH 15/41] Add email contact to readme page --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9b77da0b..d41833c9 100644 --- a/README.md +++ b/README.md @@ -194,6 +194,7 @@ OpenNHP is released under the [Apache 2.0 License](LICENSE). ## Contact - Project Website: [https://github.com/OpenNHP/opennhp](https://github.com/OpenNHP/opennhp) +- Email: [opennhp@gmail.com](mailto:opennhp@gmail.com) - Slack Channel: [Join our Slack](https://slack.opennhp.org) For more detailed documentation, please visit our [Official Documentation](https://opennhp.org). From bd26712a50042a088427d7179422dee26791a860 Mon Sep 17 00:00:00 2001 From: zengl Date: Sun, 29 Sep 2024 10:08:45 +0800 Subject: [PATCH 16/41] AC generates token for each knock request. Also added an local http api to refresh connection. --- ac/config.go | 381 +++++++----- ac/constants.go | 3 +- ac/httpac.go | 208 +++++++ ac/msghandler.go | 670 ++++++++++---------- ac/tokenstore.go | 104 ++++ ac/udpac.go | 1555 ++++++++++++++++++++++------------------------ common/nhpmsg.go | 6 + common/types.go | 5 + server/config.go | 740 +++++++++++----------- 9 files changed, 1999 insertions(+), 1673 deletions(-) create mode 100644 ac/httpac.go create mode 100644 ac/tokenstore.go diff --git a/ac/config.go b/ac/config.go index 7402f11a..7f6ecefe 100644 --- a/ac/config.go +++ b/ac/config.go @@ -1,156 +1,225 @@ -package ac - -import ( - "fmt" - "io" - "os" - "path/filepath" - - "github.com/OpenNHP/opennhp/core" - "github.com/OpenNHP/opennhp/log" - "github.com/OpenNHP/opennhp/utils" - - toml "github.com/pelletier/go-toml/v2" -) - -var ( - baseConfigWatch io.Closer - serverConfigWatch io.Closer - - errLoadConfig = fmt.Errorf("config load error") -) - -type Config struct { - PrivateKeyBase64 string `json:"privateKey"` - ACId string `json:"acId"` - DefaultIp string `json:"defaultIp"` - AuthServiceId string `json:"aspId"` - ResourceIds []string `json:"resIds"` - Servers []*core.UdpPeer `json:"servers"` - IpPassMode int `json:"ipPassMode"` // 0: pass the knock source IP, 1: use pre-access mode and release the access source IP - LogLevel int `json:"logLevel"` -} - -type Peers struct { - Servers []*core.UdpPeer -} - -func (d *UdpAC) loadBaseConfig() error { - // config.toml - fileName := filepath.Join(ExeDirPath, "etc", "config.toml") - if err := d.updateBaseConfig(fileName); err != nil { - // report base config error - return err - } - - baseConfigWatch = utils.WatchFile(fileName, func() { - log.Info("base config: %s has been updated", fileName) - d.updateBaseConfig(fileName) - }) - return nil -} - -func (d *UdpAC) loadPeers() error { - // server.toml - fileName := filepath.Join(ExeDirPath, "etc", "server.toml") - if err := d.updateServerPeers(fileName); err != nil { - // ignore error - _ = err - } - - serverConfigWatch = utils.WatchFile(fileName, func() { - log.Info("server peer config: %s has been updated", fileName) - d.updateServerPeers(fileName) - }) - - return nil -} - -func (d *UdpAC) updateBaseConfig(file string) (err error) { - utils.CatchPanicThenRun(func() { - err = errLoadConfig - }) - - content, err := os.ReadFile(file) - if err != nil { - log.Error("failed to read base config: %v", err) - } - - var conf Config - if err := toml.Unmarshal(content, &conf); err != nil { - log.Error("failed to unmarshal base config: %v", err) - } - - if d.config == nil { - d.config = &conf - d.log.SetLogLevel(conf.LogLevel) - return err - } - - // update - if d.config.LogLevel != conf.LogLevel { - log.Info("set base log level to %d", conf.LogLevel) - d.log.SetLogLevel(conf.LogLevel) - d.config.LogLevel = conf.LogLevel - } - - if d.config.DefaultIp != conf.DefaultIp { - log.Info("set default ip mode to %s", conf.DefaultIp) - d.config.DefaultIp = conf.DefaultIp - } - - if d.config.IpPassMode != conf.IpPassMode { - log.Info("set ip pass mode to %d", conf.IpPassMode) - d.config.IpPassMode = conf.IpPassMode - } - - return err -} - -func (d *UdpAC) updateServerPeers(file string) (err error) { - utils.CatchPanicThenRun(func() { - err = errLoadConfig - }) - - content, err := os.ReadFile(file) - if err != nil { - log.Error("failed to read server peer config: %v", err) - } - - // update - var peers Peers - serverPeerMap := make(map[string]*core.UdpPeer) - if err := toml.Unmarshal(content, &peers); err != nil { - log.Error("failed to unmarshal server peer config: %v", err) - } - for _, p := range peers.Servers { - p.Type = core.NHP_SERVER - d.device.AddPeer(p) - serverPeerMap[p.PublicKeyBase64()] = p - } - - // remove old peers from device - d.serverPeerMutex.Lock() - defer d.serverPeerMutex.Unlock() - for pubKey := range d.serverPeerMap { - if _, found := serverPeerMap[pubKey]; !found { - d.device.RemovePeer(pubKey) - } - } - d.serverPeerMap = serverPeerMap - - return err -} - -func (d *UdpAC) IpPassMode() int { - return d.config.IpPassMode -} - -func (d *UdpAC) StopConfigWatch() { - if baseConfigWatch != nil { - baseConfigWatch.Close() - } - if serverConfigWatch != nil { - serverConfigWatch.Close() - } -} +package ac + +import ( + "fmt" + "io" + "os" + "path/filepath" + + "github.com/OpenNHP/opennhp/core" + "github.com/OpenNHP/opennhp/log" + "github.com/OpenNHP/opennhp/utils" + + toml "github.com/pelletier/go-toml/v2" +) + +var ( + baseConfigWatch io.Closer + httpConfigWatch io.Closer + serverPeerWatch io.Closer + + errLoadConfig = fmt.Errorf("config load error") +) + +type Config struct { + PrivateKeyBase64 string `json:"privateKey"` + ACId string `json:"acId"` + DefaultIp string `json:"defaultIp"` + AuthServiceId string `json:"aspId"` + ResourceIds []string `json:"resIds"` + Servers []*core.UdpPeer `json:"servers"` + IpPassMode int `json:"ipPassMode"` // 0: pass the knock source IP, 1: use pre-access mode and release the access source IP + LogLevel int `json:"logLevel"` +} + +type HttpConfig struct { + EnableHttp bool + EnableTLS bool + HttpListenPort int + TLSCertFile string + TLSKeyFile string +} + +type Peers struct { + Servers []*core.UdpPeer +} + +func (a *UdpAC) loadBaseConfig() error { + // config.toml + fileName := filepath.Join(ExeDirPath, "etc", "config.toml") + if err := a.updateBaseConfig(fileName); err != nil { + // report base config error + return err + } + + baseConfigWatch = utils.WatchFile(fileName, func() { + log.Info("base config: %s has been updated", fileName) + a.updateBaseConfig(fileName) + }) + return nil +} + +func (a *UdpAC) loadHttpConfig() error { + // http.toml + fileName := filepath.Join(ExeDirPath, "etc", "http.toml") + if err := a.updateHttpConfig(fileName); err != nil { + // ignore error + _ = err + } + + httpConfigWatch = utils.WatchFile(fileName, func() { + log.Info("http config: %s has been updated", fileName) + a.updateHttpConfig(fileName) + }) + return nil +} + +func (a *UdpAC) loadPeers() error { + // server.toml + fileName := filepath.Join(ExeDirPath, "etc", "server.toml") + if err := a.updateServerPeers(fileName); err != nil { + // ignore error + _ = err + } + + serverPeerWatch = utils.WatchFile(fileName, func() { + log.Info("server peer config: %s has been updated", fileName) + a.updateServerPeers(fileName) + }) + + return nil +} + +func (a *UdpAC) updateBaseConfig(file string) (err error) { + utils.CatchPanicThenRun(func() { + err = errLoadConfig + }) + + content, err := os.ReadFile(file) + if err != nil { + log.Error("failed to read base config: %v", err) + } + + var conf Config + if err := toml.Unmarshal(content, &conf); err != nil { + log.Error("failed to unmarshal base config: %v", err) + } + + if a.config == nil { + a.config = &conf + a.log.SetLogLevel(conf.LogLevel) + return err + } + + // update + if a.config.LogLevel != conf.LogLevel { + log.Info("set base log level to %d", conf.LogLevel) + a.log.SetLogLevel(conf.LogLevel) + a.config.LogLevel = conf.LogLevel + } + + if a.config.DefaultIp != conf.DefaultIp { + log.Info("set default ip mode to %s", conf.DefaultIp) + a.config.DefaultIp = conf.DefaultIp + } + + if a.config.IpPassMode != conf.IpPassMode { + log.Info("set ip pass mode to %d", conf.IpPassMode) + a.config.IpPassMode = conf.IpPassMode + } + + return err +} + +func (a *UdpAC) updateHttpConfig(file string) (err error) { + utils.CatchPanicThenRun(func() { + err = errLoadConfig + }) + + content, err := os.ReadFile(file) + if err != nil { + log.Error("failed to read http config: %v", err) + } + + var httpConf HttpConfig + if err := toml.Unmarshal(content, &httpConf); err != nil { + log.Error("failed to unmarshal http config: %v", err) + } + + // update + if httpConf.EnableHttp { + // start http server + if a.httpServer == nil || !a.httpServer.IsRunning() { + if a.httpServer != nil { + // stop old http server + go a.httpServer.Stop() + } + hs := &HttpAC{} + a.httpServer = hs + err = hs.Start(a, &httpConf) + if err != nil { + return err + } + } + } else { + // stop http server + if a.httpServer != nil && a.httpServer.IsRunning() { + go a.httpServer.Stop() + a.httpServer = nil + } + } + + a.httpConfig = &httpConf + return err +} + +func (a *UdpAC) updateServerPeers(file string) (err error) { + utils.CatchPanicThenRun(func() { + err = errLoadConfig + }) + + content, err := os.ReadFile(file) + if err != nil { + log.Error("failed to read server peer config: %v", err) + } + + // update + var peers Peers + serverPeerMap := make(map[string]*core.UdpPeer) + if err := toml.Unmarshal(content, &peers); err != nil { + log.Error("failed to unmarshal server peer config: %v", err) + } + for _, p := range peers.Servers { + p.Type = core.NHP_SERVER + a.device.AddPeer(p) + serverPeerMap[p.PublicKeyBase64()] = p + } + + // remove old peers from device + a.serverPeerMutex.Lock() + defer a.serverPeerMutex.Unlock() + for pubKey := range a.serverPeerMap { + if _, found := serverPeerMap[pubKey]; !found { + a.device.RemovePeer(pubKey) + } + } + a.serverPeerMap = serverPeerMap + + return err +} + +func (a *UdpAC) IpPassMode() int { + return a.config.IpPassMode +} + +func (a *UdpAC) StopConfigWatch() { + if baseConfigWatch != nil { + baseConfigWatch.Close() + } + if httpConfigWatch != nil { + httpConfigWatch.Close() + } + if serverPeerWatch != nil { + serverPeerWatch.Close() + } +} diff --git a/ac/constants.go b/ac/constants.go index 500f3d6d..db52786e 100644 --- a/ac/constants.go +++ b/ac/constants.go @@ -10,7 +10,8 @@ const ( ServerKeepaliveInterval = 20 // seconds ServerDiscoveryRetryBeforeFail = 3 - TempPortOpenTime = 30 // + TokenStoreRefreshInterval = 10 + TempPortOpenTime = 30 // IPSET_DEFAULT_NAME = "defaultset" IPSET_DEFAULT_DOWN_NAME = "defaultset_down" diff --git a/ac/httpac.go b/ac/httpac.go new file mode 100644 index 00000000..70b7409a --- /dev/null +++ b/ac/httpac.go @@ -0,0 +1,208 @@ +package ac + +import ( + "context" + "encoding/base64" + "net" + "net/http" + "os" + "path/filepath" + "sync" + "sync/atomic" + "time" + + "github.com/OpenNHP/opennhp/common" + "github.com/OpenNHP/opennhp/log" + "github.com/gin-gonic/gin" +) + +type HttpAC struct { + id string + ua *UdpAC + httpServer *http.Server + ginEngine *gin.Engine + listenAddr *net.TCPAddr + + wg sync.WaitGroup + running atomic.Bool + + // signals + signals struct { + stop chan struct{} + } +} + +// Note HttpServer must be started after starting UdpAC, when log and config have been setup +func (hs *HttpAC) Start(uac *UdpAC, hc *HttpConfig) error { + hs.id = time.Now().Format("2006-01-02 15:04:05") + log.Info("==================================================") + log.Info("=== HttpServer (%s) started ===", hs.id) + log.Info("==================================================") + + hs.ua = uac + + port := hc.HttpListenPort + if hc.HttpListenPort == 0 { + port = 62206 + } + // only listen to localhost for security reason. + hs.listenAddr = &net.TCPAddr{ + IP: net.IPv4(127, 0, 0, 1), + Port: port, + } + + hs.signals.stop = make(chan struct{}) + + gin.SetMode(gin.ReleaseMode) + hs.ginEngine = gin.New() + hs.ginEngine.Use(gin.LoggerWithWriter(uac.log.Writer())) + hs.ginEngine.Use(gin.Recovery()) + + hs.initRouter() + + hs.httpServer = &http.Server{ + Addr: hs.listenAddr.String(), + Handler: hs.ginEngine, + ReadTimeout: 4500 * time.Millisecond, + WriteTimeout: 4000 * time.Millisecond, + IdleTimeout: 5000 * time.Millisecond, + } + + hs.wg.Add(1) + if hc.EnableTLS { + certFilePath := filepath.Join(ExeDirPath, hc.TLSCertFile) + keyFilePath := filepath.Join(ExeDirPath, hc.TLSKeyFile) + _, err1 := os.Stat(certFilePath) + _, err2 := os.Stat(keyFilePath) + if err1 == nil && err2 == nil { + go func() { + defer hs.wg.Done() + log.Info("Listening https on %s", hs.listenAddr.String()) + var err = hs.httpServer.ListenAndServeTLS(certFilePath, keyFilePath) + if err != nil && err != http.ErrServerClosed { + log.Error("https server close error: %v\n", err) + //panic(err) + } + }() + + return nil + } + } + + go func() { + defer hs.wg.Done() + log.Info("Listening http on %s", hs.listenAddr.String()) + var err = hs.httpServer.ListenAndServe() + if err != nil && err != http.ErrServerClosed { + log.Error("http server close error: %v\n", err) + //panic(err) + } + }() + + hs.running.Store(true) + return nil +} + +// Stop stops the HttpServer by setting the running flag to false, +// closing the stop channel, shutting down the underlying http server, +// waiting for all goroutines to finish, and logging a message indicating +// that the HttpServer has been stopped. +func (hs *HttpAC) Stop() { + if !hs.running.Load() { + // already stopped, do nothing + return + } + + hs.running.Store(false) + close(hs.signals.stop) + ctx, cancel := context.WithTimeout(context.Background(), 5500*time.Millisecond) + hs.httpServer.Shutdown(ctx) + + hs.wg.Wait() + cancel() + cancel = nil + log.Info("==================================================") + log.Info("=== HttpServer (%s) stopped ===", hs.id) + log.Info("==================================================") +} + +func (hs *HttpAC) IsRunning() bool { + return hs.running.Load() +} + +// init gin engine. Must be called at initialization +func (ha *HttpAC) initRouter() { + g := ha.ginEngine + + pluginGrp := g.Group("refresh") + // display login page with templates + pluginGrp.GET("/:token", func(ctx *gin.Context) { + var err error + token := ctx.Param("token") + log.Info("get refresh request. aspId: %s, query: %v", token, ctx.Request.URL.RawQuery) + + if len(token) == 0 { + err = common.ErrUrlPathInvalid + log.Error("path error: %v", err) + ctx.String(http.StatusOK, "{\"errMsg\": \"path error: %v\"}", err) + return + } + + req := &common.HttpRefreshRequest{ + Token: token, + SrcIp: ctx.Query("srcip"), + } + + ha.HandleHttpRefreshOperations(ctx, req) + }) +} + +func (ha *HttpAC) HandleHttpRefreshOperations(c *gin.Context, req *common.HttpRefreshRequest) { + if len(req.SrcIp) == 0 { + c.String(http.StatusOK, "{\"errMsg\": \"empty source ip\"}") + return + } + + netIp := net.ParseIP(req.SrcIp) + if netIp == nil { + c.String(http.StatusOK, "{\"errMsg\": \"invalid source ip\"}") + return + } + + buf, err := base64.StdEncoding.DecodeString(req.Token) + if err != nil || len(buf) != 32 { + c.String(http.StatusOK, "{\"errMsg\": \"invalid token\"}") + return + } + + entry := ha.ua.VerifyAccessToken(req.Token) + if entry == nil { + c.String(http.StatusOK, "{\"errMsg\": \"token verification failed\"}") + return + } + + var found bool + var newSrcAddr *common.NetAddress + for _, addr := range entry.SrcAddrs { + if addr.Ip == req.SrcIp { + found = true + break + } + } + if !found { + newSrcAddr = &common.NetAddress{ + Ip: req.SrcIp, + Port: entry.SrcAddrs[0].Port, + Protocol: entry.SrcAddrs[0].Protocol, + } + entry.SrcAddrs = append(entry.SrcAddrs, newSrcAddr) + } + + _, err = ha.ua.HandleAccessControl(entry.AgentUser, entry.SrcAddrs, entry.DstAddrs, entry.OpenTime, nil) + if err != nil { + c.String(http.StatusOK, "{\"errMsg\": \"%s\"}", err) + return + } + + c.JSON(http.StatusOK, entry) +} diff --git a/ac/msghandler.go b/ac/msghandler.go index beb970aa..30e58c62 100644 --- a/ac/msghandler.go +++ b/ac/msghandler.go @@ -21,373 +21,399 @@ const ( PASS_PRE_ACCESS_IP ) -func (d *UdpAC) HandleACOperations(ppd *core.PacketParserData) (err error) { - defer d.wg.Done() - d.wg.Add(1) +func (a *UdpAC) HandleUdpACOperations(ppd *core.PacketParserData) (err error) { + a.wg.Add(1) + defer a.wg.Done() - acId := d.config.ACId + acId := a.config.ACId dopMsg := &common.ServerACOpsMsg{} artMsg := &common.ACOpsResultMsg{} transactionId := ppd.SenderTrxId + err = json.Unmarshal(ppd.BodyMessage, dopMsg) + if err != nil { + log.Error("ac(%s#%d)[HandleUdpACOperations] failed to parse %s message: %v", acId, transactionId, core.HeaderTypeToString(ppd.HeaderType), err) + artMsg.ErrCode = common.ErrJsonParseFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } + + srcAddrs := dopMsg.SourceAddrs + dstAddrs := dopMsg.DestinationAddrs + openTimeSec := int(dopMsg.OpenTime) + agentUser := &AgentUser{ + UserId: dopMsg.UserId, + DeviceId: dopMsg.DeviceId, + OrganizationId: dopMsg.OrganizationId, + AuthServiceId: dopMsg.AuthServiceId, + } + artMsg, err = a.HandleAccessControl(agentUser, srcAddrs, dstAddrs, openTimeSec, artMsg) + if err != nil { + log.Error("ac(%s#%d)[HandleUdpACOperations] HandleAccessControl failed, err: %v", acId, err) + } + + // generate ac token and save user and access information + entry := &AccessEntry{ + AgentUser: agentUser, + SrcAddrs: srcAddrs, + DstAddrs: dstAddrs, + OpenTime: openTimeSec, + } + artMsg.ACToken = a.GenerateAccessToken(entry) + + // send ac result + artBytes, _ := json.Marshal(artMsg) + md := &core.MsgData{ + HeaderType: core.NHP_ART, + TransactionId: transactionId, + Compress: true, + PrevParserData: ppd, + Message: artBytes, + } + + // forward to a specific transaction + transaction := ppd.ConnData.FindRemoteTransaction(transactionId) + if transaction == nil { + log.Error("ac(%s#%d)[HandleUdpACOperations] transaction is not available", acId, transactionId) + err = common.ErrTransactionIdNotFound + return err + } + + transaction.NextMsgCh <- md + + return err +} + +func (a *UdpAC) HandleAccessControl(au *AgentUser, srcAddrs []*common.NetAddress, dstAddrs []*common.NetAddress, openTimeSec int, artMsgIn *common.ACOpsResultMsg) (artMsg *common.ACOpsResultMsg, err error) { + if artMsgIn == nil { + artMsg = &common.ACOpsResultMsg{} + } else { + artMsg = artMsgIn + } + // process ac operation - func() { - err = json.Unmarshal(ppd.BodyMessage, dopMsg) - if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] failed to parse %s message: %v", acId, transactionId, core.HeaderTypeToString(ppd.HeaderType), err) - artMsg.ErrCode = common.ErrJsonParseFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } + tempOpenTimeSec := TempPortOpenTime + // 1 sec timeout means exit defaultset access, so exit tempset too + if openTimeSec == 1 { + tempOpenTimeSec = 1 + } - srcAddrs := dopMsg.SourceAddrs - dstAddrs := dopMsg.DestinationAddrs - openTimeSec := int(dopMsg.OpenTime) - tempOpenTimeSec := TempPortOpenTime - // 1 sec timeout means exit defaultset access, so exit tempset too - if openTimeSec == 1 { - tempOpenTimeSec = 1 - } + // check empty src address + if len(srcAddrs) == 0 || len(dstAddrs) == 0 { + log.Error("[HandleAccessControl] no source or destination address specified") + err = common.ErrACEmptyPassAddress + artMsg.ErrCode = common.ErrACEmptyPassAddress.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } - // check empty src address - if len(srcAddrs) == 0 || len(dstAddrs) == 0 { - log.Error("ac(%s#%d)[HandleACOperations] no source or destination address specified", acId, transactionId) - err = common.ErrACEmptyPassAddress - artMsg.ErrCode = common.ErrACEmptyPassAddress.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } + // ac ipset operations + if a.ipset == nil { + log.Error("[HandleAccessControl] ipset is nil") + err = common.ErrACIPSetNotFound + artMsg.ErrCode = common.ErrACIPSetNotFound.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } - // ac ipset operations - if d.ipset == nil { - log.Error("ac(%s#%d)[HandleACOperations] ipset is nil", acId, transactionId) - err = common.ErrACIPSetNotFound - artMsg.ErrCode = common.ErrACIPSetNotFound.ErrorCode() - artMsg.ErrMsg = err.Error() - return + // use ac default ip to override empty destination ip + if len(a.config.DefaultIp) > 0 { + for _, addr := range dstAddrs { + if len(addr.Ip) == 0 { + addr.Ip = a.config.DefaultIp + } } + } - // use ac default ip to override empty destination ip - if len(d.config.DefaultIp) > 0 { - for _, addr := range dstAddrs { - if len(addr.Ip) == 0 { - addr.Ip = d.config.DefaultIp - } + switch a.IpPassMode() { + // pass the knock ip immediately + case PASS_KNOCK_IP: + for _, srcAddr := range srcAddrs { + var ipType utils.IPTYPE + var ipNet *net.IPNet + if strings.Contains(srcAddr.Ip, ":") { + ipType = utils.IPV6 + _, ipNet, _ = net.ParseCIDR(srcAddr.Ip + "/121") + } else { + ipType = utils.IPV4 + _, ipNet, _ = net.ParseCIDR(srcAddr.Ip + "/25") } - } + log.Debug("src ip is %s, net range is %s", srcAddr, ipNet.String()) + + for _, dstAddr := range dstAddrs { + // for tcp + if len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "tcp" || dstAddr.Protocol == "any" { + ipHashStr := fmt.Sprintf("%s,%d,%s", srcAddr.Ip, dstAddr.Port, dstAddr.Ip) + if dstAddr.Port == 0 { + ipHashStr = fmt.Sprintf("%s,1-65535,%s", srcAddr.Ip, dstAddr.Ip) + } - switch d.IpPassMode() { - // pass the knock ip immediately - case PASS_KNOCK_IP: - for _, srcAddr := range srcAddrs { - var ipType utils.IPTYPE - var ipNet *net.IPNet - if strings.Contains(srcAddr.Ip, ":") { - ipType = utils.IPV6 - _, ipNet, _ = net.ParseCIDR(srcAddr.Ip + "/121") - } else { - ipType = utils.IPV4 - _, ipNet, _ = net.ParseCIDR(srcAddr.Ip + "/25") + _, err = a.ipset.Add(ipType, 1, openTimeSec, ipHashStr) + if err != nil { + log.Error("[HandleAccessControl] add ipset %s error: %v", ipHashStr, err) + err = common.ErrACIPSetOperationFailed + artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } } - log.Debug("src ip is %s, net range is %s", srcAddr, ipNet.String()) - for _, dstAddr := range dstAddrs { - // for tcp - if len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "tcp" || dstAddr.Protocol == "any" { - ipHashStr := fmt.Sprintf("%s,%d,%s", srcAddr.Ip, dstAddr.Port, dstAddr.Ip) - if dstAddr.Port == 0 { - ipHashStr = fmt.Sprintf("%s,1-65535,%s", srcAddr.Ip, dstAddr.Ip) - } + // for udp + if len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "udp" || dstAddr.Protocol == "any" { + ipHashStr := fmt.Sprintf("%s,udp:%d,%s", srcAddr.Ip, dstAddr.Port, dstAddr.Ip) + if dstAddr.Port == 0 { + ipHashStr = fmt.Sprintf("%s,udp:1-65535,%s", srcAddr.Ip, dstAddr.Ip) + } - _, err = d.ipset.Add(ipType, 1, openTimeSec, ipHashStr) - if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] add ipset %s error: %v", acId, transactionId, ipHashStr, err) - err = common.ErrACIPSetOperationFailed - artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } + _, err = a.ipset.Add(ipType, 1, openTimeSec, ipHashStr) + if err != nil { + log.Error("[HandleAccessControl] add ipset %s error: %v", ipHashStr, err) + err = common.ErrACIPSetOperationFailed + artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return } + } - // for udp - if len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "udp" || dstAddr.Protocol == "any" { - ipHashStr := fmt.Sprintf("%s,udp:%d,%s", srcAddr.Ip, dstAddr.Port, dstAddr.Ip) - if dstAddr.Port == 0 { - ipHashStr = fmt.Sprintf("%s,udp:1-65535,%s", srcAddr.Ip, dstAddr.Ip) - } + // for icmp ping + if dstAddr.Port == 0 && (len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "any") { + for _, dstAddr := range dstAddrs { + ipHashStr := fmt.Sprintf("%s,icmp:8/0,%s", srcAddr.Ip, dstAddr.Ip) - _, err = d.ipset.Add(ipType, 1, openTimeSec, ipHashStr) + _, err = a.ipset.Add(ipType, 1, openTimeSec, ipHashStr) if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] add ipset %s error: %v", acId, transactionId, ipHashStr, err) + log.Error("[HandleAccessControl] add ipset %s error: %v", ipHashStr, err) err = common.ErrACIPSetOperationFailed artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() artMsg.ErrMsg = err.Error() return } } + } - // for icmp ping - if dstAddr.Port == 0 && (len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "any") { - for _, dstAddr := range dstAddrs { - ipHashStr := fmt.Sprintf("%s,icmp:8/0,%s", srcAddr.Ip, dstAddr.Ip) - - _, err = d.ipset.Add(ipType, 1, openTimeSec, ipHashStr) - if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] add ipset %s error: %v", acId, transactionId, ipHashStr, err) - err = common.ErrACIPSetOperationFailed - artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } + // add tempset + if ipNet != nil { + netStr := ipNet.String() + if len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "tcp" || dstAddr.Protocol == "any" { + netHashStr := fmt.Sprintf("%s,%d", netStr, dstAddr.Port) + if dstAddr.Port == 0 { + netHashStr = fmt.Sprintf("%s,1-65535", netStr) } + _, err = a.ipset.Add(ipType, 4, tempOpenTimeSec, netHashStr) } - // add tempset - if ipNet != nil { - netStr := ipNet.String() - if len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "tcp" || dstAddr.Protocol == "any" { - netHashStr := fmt.Sprintf("%s,%d", netStr, dstAddr.Port) - if dstAddr.Port == 0 { - netHashStr = fmt.Sprintf("%s,1-65535", netStr) - } - _, err = d.ipset.Add(ipType, 4, tempOpenTimeSec, netHashStr) - } - - if len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "udp" || dstAddr.Protocol == "any" { - netHashStr := fmt.Sprintf("%s,udp:%d", netStr, dstAddr.Port) - if dstAddr.Port == 0 { - netHashStr = fmt.Sprintf("%s,udp:1-65535", netStr) - } - _, err = d.ipset.Add(ipType, 4, tempOpenTimeSec, netHashStr) + if len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "udp" || dstAddr.Protocol == "any" { + netHashStr := fmt.Sprintf("%s,udp:%d", netStr, dstAddr.Port) + if dstAddr.Port == 0 { + netHashStr = fmt.Sprintf("%s,udp:1-65535", netStr) } + _, err = a.ipset.Add(ipType, 4, tempOpenTimeSec, netHashStr) + } - if dstAddr.Port == 0 && (len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "any") { - netHashStr := fmt.Sprintf("%s,icmp:8/0", netStr) - _, err = d.ipset.Add(ipType, 4, tempOpenTimeSec, netHashStr) - } + if dstAddr.Port == 0 && (len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "any") { + netHashStr := fmt.Sprintf("%s,icmp:8/0", netStr) + _, err = a.ipset.Add(ipType, 4, tempOpenTimeSec, netHashStr) } } } + } - // return temporary listened port(s) and nhp access token, then pass the real ip when agent sends access message - case PASS_PRE_ACCESS_IP: - fallthrough - default: - // ac open a temporary tcp or udp port for access - dstIp := net.ParseIP(dstAddrs[0].Ip) - if dstIp == nil { - log.Error("ac(%s#%d)[HandleACOperations] destination IP %s is invalid", acId, transactionId, dstAddrs[0].Ip) - err = common.ErrInvalidIpAddress - artMsg.ErrCode = common.ErrInvalidIpAddress.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } - - var ipType utils.IPTYPE - var netStr string - var netStr1 string - var pickedPort int - var tcpListener *net.TCPListener - var udpListener *net.UDPConn - - if strings.Contains(dstAddrs[0].Ip, ":") { - ipType = utils.IPV6 - netStr = "0:0:0:0:0:0:0:0/0" - } else { - // since ipset does not allow full ip range 0.0.0.0/0, we use two ip ranges - ipType = utils.IPV4 - netStr = "0.0.0.0/1" - netStr1 = "128.0.0.0/1" - } - - // openning temp tcp access - tcpListener, err = net.ListenTCP("tcp", &net.TCPAddr{ - IP: dstIp, - Port: 0, // ephemeral port - }) + // return temporary listened port(s) and nhp access token, then pass the real ip when agent sends access message + case PASS_PRE_ACCESS_IP: + fallthrough + default: + // ac open a temporary tcp or udp port for access + dstIp := net.ParseIP(dstAddrs[0].Ip) + if dstIp == nil { + log.Error("[HandleAccessControl] destination IP %s is invalid", dstAddrs[0].Ip) + err = common.ErrInvalidIpAddress + artMsg.ErrCode = common.ErrInvalidIpAddress.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } - if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] temporary tcp listening error: %v", acId, transactionId, err) - err = common.ErrACTempPortListenFailed - artMsg.ErrCode = common.ErrACTempPortListenFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } + var ipType utils.IPTYPE + var netStr string + var netStr1 string + var pickedPort int + var tcpListener *net.TCPListener + var udpListener *net.UDPConn - // retrieve local port - tladdr := tcpListener.Addr() - tlocalAddr, locErr := net.ResolveTCPAddr(tladdr.Network(), tladdr.String()) - if locErr != nil { - log.Error("ac(%s#%d)[HandleACOperations] resolve local TCPAddr error: %v", acId, transactionId, locErr) - err = common.ErrACResolveTempPortFailed - artMsg.ErrCode = common.ErrACResolveTempPortFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } + if strings.Contains(dstAddrs[0].Ip, ":") { + ipType = utils.IPV6 + netStr = "0:0:0:0:0:0:0:0/0" + } else { + // since ipset does not allow full ip range 0.0.0.0/0, we use two ip ranges + ipType = utils.IPV4 + netStr = "0.0.0.0/1" + netStr1 = "128.0.0.0/1" + } - log.Debug("open temporary tcp port %s", tlocalAddr.String()) - portHashStr := fmt.Sprintf("%s,%d", netStr, tlocalAddr.Port) - _, err = d.ipset.Add(ipType, 4, tempOpenTimeSec, portHashStr) - if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] add ipset %s error: %v", acId, transactionId, portHashStr, err) - err = common.ErrACIPSetOperationFailed - artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } - portHashStr = fmt.Sprintf("%s,%d", netStr1, tlocalAddr.Port) - _, err = d.ipset.Add(ipType, 4, tempOpenTimeSec, portHashStr) - if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] add ipset %s error: %v", acId, transactionId, portHashStr, err) - err = common.ErrACIPSetOperationFailed - artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } + // openning temp tcp access + tcpListener, err = net.ListenTCP("tcp", &net.TCPAddr{ + IP: dstIp, + Port: 0, // ephemeral port + }) - pickedPort = tlocalAddr.Port - log.Info("ac(%s#%d)[HandleACOperations] open temporary tcp port on %s", acId, transactionId, tladdr.String()) + if err != nil { + log.Error("[HandleAccessControl] temporary tcp listening error: %v", err) + err = common.ErrACTempPortListenFailed + artMsg.ErrCode = common.ErrACTempPortListenFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } - // for temp udp access - udpListener, err = net.ListenUDP("udp", &net.UDPAddr{ - IP: dstIp, - Port: pickedPort, // ephemeral port(0) or continue with previously picked tcp port - }) - if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] temporary udp listening error: %v", acId, transactionId, err) - err = common.ErrACTempPortListenFailed - artMsg.ErrCode = common.ErrACTempPortListenFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } + // retrieve local port + tladdr := tcpListener.Addr() + tlocalAddr, locErr := net.ResolveTCPAddr(tladdr.Network(), tladdr.String()) + if locErr != nil { + log.Error("[HandleAccessControl] resolve local TCPAddr error: %v", locErr) + err = common.ErrACResolveTempPortFailed + artMsg.ErrCode = common.ErrACResolveTempPortFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } - // retrieve local port - uladdr := udpListener.LocalAddr() - _, locErr = net.ResolveUDPAddr(uladdr.Network(), uladdr.String()) - if locErr != nil { - log.Error("ac(%s#%d)[HandleACOperations] resolve local UDPAddr error: %v", acId, transactionId, locErr) - err = common.ErrACResolveTempPortFailed - artMsg.ErrCode = common.ErrACResolveTempPortFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } + log.Debug("open temporary tcp port %s", tlocalAddr.String()) + portHashStr := fmt.Sprintf("%s,%d", netStr, tlocalAddr.Port) + _, err = a.ipset.Add(ipType, 4, tempOpenTimeSec, portHashStr) + if err != nil { + log.Error("[HandleAccessControl] add ipset %s error: %v", portHashStr, err) + err = common.ErrACIPSetOperationFailed + artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } + portHashStr = fmt.Sprintf("%s,%d", netStr1, tlocalAddr.Port) + _, err = a.ipset.Add(ipType, 4, tempOpenTimeSec, portHashStr) + if err != nil { + log.Error("[HandleAccessControl] add ipset %s error: %v", portHashStr, err) + err = common.ErrACIPSetOperationFailed + artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } - log.Debug("open temporary udp port %s", tlocalAddr.String()) - pickedPort = tlocalAddr.Port - portHashStr = fmt.Sprintf("%s,udp:%d", netStr, tlocalAddr.Port) - _, err = d.ipset.Add(ipType, 4, tempOpenTimeSec, portHashStr) - if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] add ipset %s error: %v", acId, transactionId, portHashStr, err) - err = common.ErrACIPSetOperationFailed - artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } - portHashStr = fmt.Sprintf("%s,udp:%d", netStr1, tlocalAddr.Port) - _, err = d.ipset.Add(ipType, 4, tempOpenTimeSec, portHashStr) - if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] add ipset %s error: %v", acId, transactionId, portHashStr, err) - err = common.ErrACIPSetOperationFailed - artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() - artMsg.ErrMsg = err.Error() - return - } + pickedPort = tlocalAddr.Port + log.Info("[HandleAccessControl] open temporary tcp port on %s", tladdr.String()) - log.Info("ac(%s#%d)[HandleACOperations] open temporary udp port on %s", acId, transactionId, tladdr.String()) + // for temp udp access + udpListener, err = net.ListenUDP("udp", &net.UDPAddr{ + IP: dstIp, + Port: pickedPort, // ephemeral port(0) or continue with previously picked tcp port + }) + if err != nil { + log.Error("[HandleAccessControl] temporary udp listening error: %v", err) + err = common.ErrACTempPortListenFailed + artMsg.ErrCode = common.ErrACTempPortListenFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } - agentUser := &AgentUser{ - UserId: dopMsg.UserId, - DeviceId: dopMsg.DeviceId, - OrganizationId: dopMsg.OrganizationId, - } + // retrieve local port + uladdr := udpListener.LocalAddr() + _, locErr = net.ResolveUDPAddr(uladdr.Network(), uladdr.String()) + if locErr != nil { + log.Error("[HandleAccessControl] resolve local UDPAddr error: %v", locErr) + err = common.ErrACResolveTempPortFailed + artMsg.ErrCode = common.ErrACResolveTempPortFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } - artMsg.PreAccessAction = &common.PreAccessInfo{ - AccessPort: strconv.Itoa(pickedPort), - ACPubKey: d.device.PublicKeyExBase64(), - ACToken: d.GenerateAccessToken(agentUser), - } + log.Debug("open temporary udp port %s", tlocalAddr.String()) + pickedPort = tlocalAddr.Port + portHashStr = fmt.Sprintf("%s,udp:%d", netStr, tlocalAddr.Port) + _, err = a.ipset.Add(ipType, 4, tempOpenTimeSec, portHashStr) + if err != nil { + log.Error("[HandleAccessControl] add ipset %s error: %v", portHashStr, err) + err = common.ErrACIPSetOperationFailed + artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } + portHashStr = fmt.Sprintf("%s,udp:%d", netStr1, tlocalAddr.Port) + _, err = a.ipset.Add(ipType, 4, tempOpenTimeSec, portHashStr) + if err != nil { + log.Error("[HandleAccessControl] add ipset %s error: %v", portHashStr, err) + err = common.ErrACIPSetOperationFailed + artMsg.ErrCode = common.ErrACIPSetOperationFailed.ErrorCode() + artMsg.ErrMsg = err.Error() + return + } - if tcpListener != nil { - d.wg.Add(1) - go d.tcpTempAccessHandler(transactionId, tcpListener, agentUser, tempOpenTimeSec, dopMsg) - } + log.Info("[HandleAccessControl] open temporary udp port on %s", tladdr.String()) - if udpListener != nil { - d.wg.Add(1) - go d.udpTempAccessHandler(transactionId, udpListener, agentUser, tempOpenTimeSec, dopMsg) - } + tempEntry := &AccessEntry{ + AgentUser: au, + SrcAddrs: srcAddrs, + DstAddrs: dstAddrs, + OpenTime: tempOpenTimeSec, + } + artMsg.PreAccessAction = &common.PreAccessInfo{ + AccessPort: strconv.Itoa(pickedPort), + ACPubKey: a.device.PublicKeyExBase64(), + ACToken: a.GenerateAccessToken(tempEntry), } - log.Info("ac(%s#%d)[HandleACOperations] succeed", acId, transactionId) - artMsg.ErrCode = common.ErrSuccess.ErrorCode() - artMsg.OpenTime = dopMsg.OpenTime - }() - - // send ac result - artBytes, _ := json.Marshal(artMsg) + if tcpListener != nil { + a.wg.Add(1) + go a.tcpTempAccessHandler(tcpListener, tempOpenTimeSec, dstAddrs, openTimeSec) + } - md := &core.MsgData{ - HeaderType: core.NHP_ART, - TransactionId: transactionId, - Compress: true, - PrevParserData: ppd, - Message: artBytes, + if udpListener != nil { + a.wg.Add(1) + go a.udpTempAccessHandler(udpListener, tempOpenTimeSec, dstAddrs, openTimeSec) + } } - // forward to a specific transaction - transaction := ppd.ConnData.FindRemoteTransaction(transactionId) - if transaction == nil { - log.Error("ac(%s#%d)[HandleACOperations] transaction is not available", acId, transactionId) - err = common.ErrTransactionIdNotFound - return err - } + log.Info("[HandleAccessControl] succeed") - transaction.NextMsgCh <- md + artMsg.ErrCode = common.ErrSuccess.ErrorCode() + artMsg.OpenTime = uint32(openTimeSec) - return nil + return } -func (d *UdpAC) tcpTempAccessHandler(transactionId uint64, listener *net.TCPListener, au *AgentUser, timeoutSec int, dopMsg *common.ServerACOpsMsg) { - defer d.wg.Done() - defer d.DeleteAccessToken(au) +func (a *UdpAC) tcpTempAccessHandler(listener *net.TCPListener, timeoutSec int, dstAddrs []*common.NetAddress, openTimeSec int) { + defer a.wg.Done() defer listener.Close() - acId := d.config.ACId // accept only the first incoming tcp connection startTime := time.Now() deadlineTime := startTime.Add(time.Duration(timeoutSec) * time.Second) localAddrStr := listener.Addr().String() err := listener.SetDeadline(deadlineTime) if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] temporary port on %s failed to set tcp listen timeout", acId, transactionId, localAddrStr) + log.Error("[tcpTempAccessHandler] temporary port on %s failed to set tcp listen timeout", localAddrStr) return } conn, err := listener.Accept() if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] temporary port on %s tcp listen timeout", acId, transactionId, localAddrStr) + log.Error("[tcpTempAccessHandler] temporary port on %s tcp listen timeout", localAddrStr) return } defer conn.Close() err = conn.SetDeadline(deadlineTime) if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] temporary port on %s failed to set tcp conn timeout", acId, transactionId, localAddrStr) + log.Error("[tcpTempAccessHandler] temporary port on %s failed to set tcp conn timeout", localAddrStr) return } remoteAddrStr := conn.RemoteAddr().String() - pkt := d.device.AllocatePoolPacket() - defer d.device.ReleasePoolPacket(pkt) + pkt := a.device.AllocatePoolPacket() + defer a.device.ReleasePoolPacket(pkt) // monitor stop signals and quit connection earlier ctx, ctxCancel := context.WithDeadline(context.Background(), deadlineTime) defer ctxCancel() - go d.tempConnTerminator(conn, ctx) + go a.tempConnTerminator(conn, ctx) // tcp recv common header first n, err := conn.Read(pkt.Buf[:core.HeaderCommonSize]) if err != nil || n < core.HeaderCommonSize { - log.Error("ac(%s#%d)[HandleACOperations] failed to receive tcp packet header from remote address %s (%v)", acId, transactionId, remoteAddrStr, err) + log.Error("[tcpTempAccessHandler] failed to receive tcp packet header from remote address %s (%v)", remoteAddrStr, err) return } @@ -395,7 +421,7 @@ func (d *UdpAC) tcpTempAccessHandler(transactionId uint64, listener *net.TCPList // check type and payload size msgType, msgSize := pkt.HeaderTypeAndSize() if msgType != core.NHP_ACC { - log.Error("ac(%s#%d)[HandleACOperations] message type is not %s, close connection", acId, transactionId, core.HeaderTypeToString(core.NHP_ACC)) + log.Error("[tcpTempAccessHandler] message type is not %s, close connection", core.HeaderTypeToString(core.NHP_ACC)) return } @@ -409,13 +435,13 @@ func (d *UdpAC) tcpTempAccessHandler(transactionId uint64, listener *net.TCPList remainingSize := packetSize - n n, err = conn.Read(pkt.Buf[n:packetSize]) if err != nil || n < remainingSize { - log.Error("ac(%s#%d)[HandleACOperations] failed to receive tcp message body from remote address %s (%v)", acId, transactionId, remoteAddrStr, err) + log.Error("[tcpTempAccessHandler] failed to receive tcp message body from remote address %s (%v)", remoteAddrStr, err) return } pkt.Content = pkt.Buf[:packetSize] - log.Trace("receive tcp access packet (%s -> %s): %+v", remoteAddrStr, localAddrStr, pkt.Content) - log.Info("ac(%s#%d)[HandleACOperations] receive tcp access message (%s -> %s)", acId, transactionId, remoteAddrStr, localAddrStr) + //log.Trace("[tcpTempAccessHandler]receive tcp access packet (%s -> %s): %+v", remoteAddrStr, localAddrStr, pkt.Content) + log.Info("[tcpTempAccessHandler] receive tcp access message (%s -> %s)", remoteAddrStr, localAddrStr) pd := &core.PacketData{ BasePacket: pkt, @@ -424,41 +450,33 @@ func (d *UdpAC) tcpTempAccessHandler(transactionId uint64, listener *net.TCPList DecryptedMsgCh: make(chan *core.PacketParserData), } - if !d.IsRunning() { - log.Error("ac(%s#%d)[HandleACOperations] PacketData channel closed or being closed, skip decrypting", acId, transactionId) + if !a.IsRunning() { + log.Error("[tcpTempAccessHandler] PacketData channel closed or being closed, skip decrypting") return } // start message decryption - d.device.RecvPacketToMsg(pd) + a.device.RecvPacketToMsg(pd) // waiting for message decryption accPpd := <-pd.DecryptedMsgCh close(pd.DecryptedMsgCh) if accPpd.Error != nil { - log.Error("ac(%s#%d)[HandleACOperations] failed to decrypt tcp access message: %v", acId, transactionId, accPpd.Error) + log.Error("[tcpTempAccessHandler] failed to decrypt tcp access message: %v", accPpd.Error) return } accMsg := &common.AgentAccessMsg{} err = json.Unmarshal(accPpd.BodyMessage, accMsg) if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] failed to parse %s message: %v", acId, transactionId, core.HeaderTypeToString(accPpd.HeaderType), err) + log.Error("[tcpTempAccessHandler] failed to parse %s message: %v", core.HeaderTypeToString(accPpd.HeaderType), err) return } - remoteAgentUser := &AgentUser{ - UserId: accMsg.UserId, - DeviceId: accMsg.DeviceId, - OrganizationId: accMsg.OrganizationId, - } - - if d.VerifyAccessToken(remoteAgentUser, accMsg.ACToken) { + if a.VerifyAccessToken(accMsg.ACToken) != nil { remoteAddr, _ := net.ResolveTCPAddr(conn.RemoteAddr().Network(), conn.RemoteAddr().String()) srcAddrIp := remoteAddr.IP.String() - dstAddrs := dopMsg.DestinationAddrs - openTimeSec := int(dopMsg.OpenTime) var ipType utils.IPTYPE if strings.Contains(dstAddrs[0].Ip, ":") { ipType = utils.IPV6 @@ -472,43 +490,41 @@ func (d *UdpAC) tcpTempAccessHandler(transactionId uint64, listener *net.TCPList ipHashStr = fmt.Sprintf("%s,1-65535,%s", srcAddrIp, dstAddr.Ip) } - _, err = d.ipset.Add(ipType, 1, openTimeSec, ipHashStr) + _, err = a.ipset.Add(ipType, 1, openTimeSec, ipHashStr) if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] add ipset %s error: %v", acId, transactionId, ipHashStr, err) + log.Error("[tcpTempAccessHandler] add ipset %s error: %v", ipHashStr, err) return } } } } -func (d *UdpAC) udpTempAccessHandler(transactionId uint64, conn *net.UDPConn, au *AgentUser, timeoutSec int, dopMsg *common.ServerACOpsMsg) { - defer d.wg.Done() - defer d.DeleteAccessToken(au) +func (a *UdpAC) udpTempAccessHandler(conn *net.UDPConn, timeoutSec int, dstAddrs []*common.NetAddress, openTimeSec int) { + defer a.wg.Done() defer conn.Close() - acId := d.config.ACId // listen to accept and handle only one incoming connection startTime := time.Now() deadlineTime := startTime.Add(time.Duration(timeoutSec) * time.Second) localAddrStr := conn.LocalAddr().String() err := conn.SetDeadline(deadlineTime) if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] temporary port on %s failed to set udp conn timeout", acId, transactionId, localAddrStr) + log.Error("[udpTempAccessHandler] temporary port on %s failed to set udp conn timeout", localAddrStr) return } - pkt := d.device.AllocatePoolPacket() - defer d.device.ReleasePoolPacket(pkt) + pkt := a.device.AllocatePoolPacket() + defer a.device.ReleasePoolPacket(pkt) // monitor stop signals and quit connection earlier ctx, ctxCancel := context.WithDeadline(context.Background(), deadlineTime) defer ctxCancel() - go d.tempConnTerminator(conn, ctx) + go a.tempConnTerminator(conn, ctx) // udp recv, blocking until packet arrives or deadline reaches n, remoteAddr, err := conn.ReadFromUDP(pkt.Buf[:]) if err != nil || n < core.HeaderCommonSize { - log.Error("ac(%s#%d)[HandleACOperations] failed to receive udp packet (%v)", acId, transactionId, err) + log.Error("[udpTempAccessHandler] failed to receive udp packet (%v)", err) return } @@ -518,7 +534,7 @@ func (d *UdpAC) udpTempAccessHandler(transactionId uint64, conn *net.UDPConn, au // check type and payload size msgType, msgSize := pkt.HeaderTypeAndSize() if msgType != core.NHP_ACC { - log.Error("ac(%s#%d)[HandleACOperations] message type is not %s, close connection", acId, transactionId, core.HeaderTypeToString(core.NHP_ACC)) + log.Error("[udpTempAccessHandler] message type is not %s, close connection", core.HeaderTypeToString(core.NHP_ACC)) return } @@ -531,12 +547,12 @@ func (d *UdpAC) udpTempAccessHandler(transactionId uint64, conn *net.UDPConn, au } if n != packetSize { - log.Error("ac(%s#%d)[HandleACOperations] udp packet size incorrect from remote address %s", acId, transactionId, remoteAddrStr) + log.Error("[udpTempAccessHandler] udp packet size incorrect from remote address %s", remoteAddrStr) return } log.Trace("receive udp access packet (%s -> %s): %+v", remoteAddrStr, localAddrStr, pkt.Content) - log.Info("ac(%s#%d)[HandleACOperations] receive udp access message (%s -> %s)", acId, transactionId, remoteAddrStr, localAddrStr) + log.Info("[udpTempAccessHandler] receive udp access message (%s -> %s)", remoteAddrStr, localAddrStr) pd := &core.PacketData{ BasePacket: pkt, @@ -545,40 +561,32 @@ func (d *UdpAC) udpTempAccessHandler(transactionId uint64, conn *net.UDPConn, au DecryptedMsgCh: make(chan *core.PacketParserData), } - if !d.IsRunning() { - log.Error("ac(%s#%d)[HandleACOperations] PacketData channel closed or being closed, skip decrypting", acId, transactionId) + if !a.IsRunning() { + log.Error("[udpTempAccessHandler] PacketData channel closed or being closed, skip decrypting") return } // start packet decryption - d.device.RecvPacketToMsg(pd) + a.device.RecvPacketToMsg(pd) // waiting for packet decryption accPpd := <-pd.DecryptedMsgCh close(pd.DecryptedMsgCh) if accPpd.Error != nil { - log.Error("ac(%s#%d)[HandleACOperations] failed to decrypt udp access message: %v", acId, transactionId, accPpd.Error) + log.Error("[udpTempAccessHandler] failed to decrypt udp access message: %v", accPpd.Error) return } accMsg := &common.AgentAccessMsg{} err = json.Unmarshal(accPpd.BodyMessage, accMsg) if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] failed to parse %s message: %v", acId, transactionId, core.HeaderTypeToString(accPpd.HeaderType), err) + log.Error("[udpTempAccessHandler] failed to parse %s message: %v", core.HeaderTypeToString(accPpd.HeaderType), err) return } - remoteAgentUser := &AgentUser{ - UserId: accMsg.UserId, - DeviceId: accMsg.DeviceId, - OrganizationId: accMsg.OrganizationId, - } - - if d.VerifyAccessToken(remoteAgentUser, accMsg.ACToken) { + if a.VerifyAccessToken(accMsg.ACToken) != nil { srcAddrIp := remoteAddr.IP.String() - dstAddrs := dopMsg.DestinationAddrs - openTimeSec := int(dopMsg.OpenTime) var ipType utils.IPTYPE if strings.Contains(dstAddrs[0].Ip, ":") { ipType = utils.IPV6 @@ -593,9 +601,9 @@ func (d *UdpAC) udpTempAccessHandler(transactionId uint64, conn *net.UDPConn, au ipHashStr = fmt.Sprintf("%s,udp:1-65535,%s", srcAddrIp, dstAddr.Ip) } - _, err = d.ipset.Add(ipType, 1, openTimeSec, ipHashStr) + _, err = a.ipset.Add(ipType, 1, openTimeSec, ipHashStr) if err != nil { - log.Error("ac(%s#%d)[HandleACOperations] add ipset %s error: %v", acId, transactionId, ipHashStr, err) + log.Error("[udpTempAccessHandler] add ipset %s error: %v", ipHashStr, err) return } } @@ -603,15 +611,15 @@ func (d *UdpAC) udpTempAccessHandler(transactionId uint64, conn *net.UDPConn, au // for ping if dstAddr.Port == 0 && (len(dstAddr.Protocol) == 0 || dstAddr.Protocol == "any") { ipHashStr := fmt.Sprintf("%s,icmp:8/0,%s", remoteAddr.IP.String(), dstAddr.Ip) - d.ipset.Add(ipType, 1, openTimeSec, ipHashStr) + a.ipset.Add(ipType, 1, openTimeSec, ipHashStr) } } } } -func (d *UdpAC) tempConnTerminator(conn net.Conn, ctx context.Context) { +func (a *UdpAC) tempConnTerminator(conn net.Conn, ctx context.Context) { select { - case <-d.signals.stop: + case <-a.signals.stop: conn.Close() return diff --git a/ac/tokenstore.go b/ac/tokenstore.go new file mode 100644 index 00000000..79e61514 --- /dev/null +++ b/ac/tokenstore.go @@ -0,0 +1,104 @@ +package ac + +import ( + "encoding/base64" + "encoding/binary" + "time" + + "github.com/emmansun/gmsm/sm3" + + "github.com/OpenNHP/opennhp/common" + "github.com/OpenNHP/opennhp/log" +) + +type AgentUser struct { + UserId string + DeviceId string + OrganizationId string + AuthServiceId string +} + +type AccessEntry struct { + AgentUser *AgentUser + SrcAddrs []*common.NetAddress + DstAddrs []*common.NetAddress + OpenTime int + ExpireTime time.Time +} + +type TokenAccessMap = map[string]*AccessEntry // access token mapped into user and access information +type TokenStore = map[string]TokenAccessMap // upper layer of tokens, indexed by first two characters + +func (a *UdpAC) GenerateAccessToken(entry *AccessEntry) string { + var tsBytes [8]byte + currTime := time.Now().UnixNano() + + hash := sm3.New() + binary.BigEndian.PutUint64(tsBytes[:], uint64(currTime)) + au := entry.AgentUser + hash.Write([]byte(a.config.ACId + au.UserId + au.DeviceId + au.OrganizationId + au.AuthServiceId)) + hash.Write(tsBytes[:]) + token := base64.StdEncoding.EncodeToString(hash.Sum(nil)) + hash.Reset() + + a.TokenStoreMutex.Lock() + defer a.TokenStoreMutex.Unlock() + + entry.ExpireTime = time.Now().Add(time.Duration(entry.OpenTime) * time.Second) + tokenMap, found := a.tokenStore[token[0:1]] + if found { + tokenMap[token] = entry + } else { + tokenMap := make(TokenAccessMap) + tokenMap[token] = entry + a.tokenStore[token[0:1]] = tokenMap + } + + return token +} + +func (a *UdpAC) VerifyAccessToken(token string) *AccessEntry { + a.TokenStoreMutex.Lock() + defer a.TokenStoreMutex.Unlock() + + tokenMap, found := a.tokenStore[token[0:1]] + if found { + entry, found := tokenMap[token] + if found { + return entry + } + } + + return nil +} + +func (a *UdpAC) tokenStoreRefreshRoutine() { + defer a.wg.Done() + defer log.Info("tokenStoreRefreshRoutine stopped") + + log.Info("tokenStoreRefreshRoutine started") + + for { + select { + case <-a.signals.stop: + return + + case <-time.After(TokenStoreRefreshInterval * time.Second): + a.TokenStoreMutex.Lock() + defer a.TokenStoreMutex.Unlock() + + now := time.Now() + for head, tokenMap := range a.tokenStore { + for token, entry := range tokenMap { + if now.After(entry.ExpireTime) { + log.Info("[TokenStore] token %s expired", token) + delete(tokenMap, token) + } + } + if len(tokenMap) == 0 { + delete(a.tokenStore, head) + } + } + } + } +} diff --git a/ac/udpac.go b/ac/udpac.go index 5ce5097c..c5706a15 100644 --- a/ac/udpac.go +++ b/ac/udpac.go @@ -1,815 +1,740 @@ -package ac - -import ( - "encoding/base64" - "encoding/json" - "fmt" - "hash" - "net" - "path/filepath" - "strconv" - "sync" - "sync/atomic" - "time" - - "github.com/OpenNHP/opennhp/common" - "github.com/OpenNHP/opennhp/core" - "github.com/OpenNHP/opennhp/log" - "github.com/OpenNHP/opennhp/utils" - "github.com/OpenNHP/opennhp/version" -) - -var ( - ExeDirPath string -) - -type AgentUser struct { - UserId string - DeviceId string - OrganizationId string - hash hash.Hash -} - -func (au *AgentUser) Hash() string { - au.hash = core.NewHash(core.HASH_SM3) - au.hash.Write([]byte(au.UserId)) - au.hash.Write([]byte(au.DeviceId)) - au.hash.Write([]byte(au.OrganizationId)) - // do not include Agent's PublicKey in calculating hash, because it may vary between Curve25519 and SM2 - sum := au.hash.Sum(nil) - return string(sum) -} - -type AgentUserCodeMap = map[string]*map[string]string // agent hash string first letter > agent hash string > token - -type UdpAC struct { - config *Config - iptables *utils.IPTables - ipset *utils.IPSet - - stats struct { - totalRecvBytes uint64 - totalSendBytes uint64 - } - - log *log.Logger - - remoteConnectionMutex sync.Mutex - remoteConnectionMap map[string]*UdpConn // indexed by remote UDP address - - serverPeerMutex sync.Mutex - serverPeerMap map[string]*core.UdpPeer // indexed by server's public key - - AgentUserTokenMutex sync.Mutex - agentUserCodeMap AgentUserCodeMap - - device *core.Device - wg sync.WaitGroup - running atomic.Bool - - signals struct { - stop chan struct{} - serverMapUpdated chan struct{} - } - - recvMsgCh <-chan *core.PacketParserData - sendMsgCh chan *core.MsgData -} - -type UdpConn struct { - ConnData *core.ConnectionData - netConn *net.UDPConn - connected atomic.Bool - externalAddr string -} - -func (c *UdpConn) Close() { - c.netConn.Close() - c.ConnData.Close() -} - -/* -dirPath: the path of app or shared library entry point -logLevel: 0: silent, 1: error, 2: info, 3: debug, 4: verbose -*/ -func (d *UdpAC) Start(dirPath string, logLevel int) (err error) { - common.ExeDirPath = dirPath - ExeDirPath = dirPath - // init logger - d.log = log.NewLogger("NHP-AC", logLevel, filepath.Join(ExeDirPath, "logs"), "ac") - log.SetGlobalLogger(d.log) - - log.Info("=========================================================") - log.Info("=== NHP-AC %s started ===", version.Version) - log.Info("=== REVISION %s ===", version.CommitId) - log.Info("=== RELEASE %s ===", version.BuildTime) - log.Info("=========================================================") - - // init config - err = d.loadBaseConfig() - if err != nil { - return err - } - - d.iptables, err = utils.NewIPTables() - if err != nil { - log.Error("iptables command not found") - return - } - - d.ipset, err = utils.NewIPSet(false) - if err != nil { - log.Error("ipset command not found") - return - } - - prk, err := base64.StdEncoding.DecodeString(d.config.PrivateKeyBase64) - if err != nil { - log.Error("private key parse error %v\n", err) - return fmt.Errorf("private key parse error %v", err) - } - - d.device = core.NewDevice(core.NHP_AC, prk, nil) - if d.device == nil { - log.Critical("failed to create device %v\n", err) - return fmt.Errorf("failed to create device %v", err) - } - - d.remoteConnectionMap = make(map[string]*UdpConn) - d.serverPeerMap = make(map[string]*core.UdpPeer) - d.agentUserCodeMap = make(AgentUserCodeMap) - - // load peers - d.loadPeers() - - d.signals.stop = make(chan struct{}) - d.signals.serverMapUpdated = make(chan struct{}, 1) - - d.recvMsgCh = d.device.DecryptedMsgQueue - d.sendMsgCh = make(chan *core.MsgData, core.SendQueueSize) - - // start device routines - d.device.Start() - - // start ac routines - d.wg.Add(3) - go d.sendMessageRoutine() - go d.recvMessageRoutine() - go d.maintainServerConnectionRoutine() - - d.running.Store(true) - return nil -} - -func (d *UdpAC) Stop() { - d.running.Store(false) - close(d.signals.stop) - - d.device.Stop() - d.StopConfigWatch() - d.wg.Wait() - close(d.sendMsgCh) - close(d.signals.serverMapUpdated) - - log.Info("==========================") - log.Info("=== NHP-AC stopped ===") - log.Info("==========================") - d.log.Close() -} - -func (d *UdpAC) IsRunning() bool { - return d.running.Load() -} - -func (d *UdpAC) newConnection(addr *net.UDPAddr) (conn *UdpConn) { - conn = &UdpConn{} - var err error - // unlike tcp, udp dial is fast (just socket bind), so no need to run in a thread - conn.netConn, err = net.DialUDP("udp", nil, addr) - if err != nil { - log.Error("could not connect to remote addr %s", addr.String()) - return nil - } - - // retrieve local port - laddr := conn.netConn.LocalAddr() - localAddr, err := net.ResolveUDPAddr(laddr.Network(), laddr.String()) - if err != nil { - log.Error("resolve local UDPAddr error %v\n", err) - return nil - } - - log.Info("Dial up new UDP connection from %s to %s", localAddr.String(), addr.String()) - - conn.ConnData = &core.ConnectionData{ - Device: d.device, - CookieStore: &core.CookieStore{}, - RemoteTransactionMap: make(map[uint64]*core.RemoteTransaction), - LocalAddr: localAddr, - RemoteAddr: addr, - TimeoutMs: DefaultConnectionTimeoutMs, - SendQueue: make(chan *core.Packet, PacketQueueSizePerConnection), - RecvQueue: make(chan *core.Packet, PacketQueueSizePerConnection), - BlockSignal: make(chan struct{}), - SetTimeoutSignal: make(chan struct{}), - StopSignal: make(chan struct{}), - } - - // start connection receive routine - conn.ConnData.Add(1) - go d.recvPacketRoutine(conn) - - return conn -} - -func (d *UdpAC) sendMessageRoutine() { - defer d.wg.Done() - defer log.Info("sendMessageRoutine stopped") - - log.Info("sendMessageRoutine started") - - for { - select { - case <-d.signals.stop: - return - - case md, ok := <-d.sendMsgCh: - if !ok { - return - } - if md == nil || md.RemoteAddr == nil { - log.Warning("Invalid initiator session starter") - continue - } - - addrStr := md.RemoteAddr.String() - - d.remoteConnectionMutex.Lock() - conn, found := d.remoteConnectionMap[addrStr] - d.remoteConnectionMutex.Unlock() - - if found { - md.ConnData = conn.ConnData - } else { - conn = d.newConnection(md.RemoteAddr) - if conn == nil { - log.Error("Failed to dial to remote address: %s", addrStr) - continue - } - - d.remoteConnectionMutex.Lock() - d.remoteConnectionMap[addrStr] = conn - d.remoteConnectionMutex.Unlock() - - md.ConnData = conn.ConnData - - // launch connection routine - d.wg.Add(1) - go d.connectionRoutine(conn) - } - - d.device.SendMsgToPacket(md) - } - } -} - -func (d *UdpAC) SendPacket(pkt *core.Packet, conn *UdpConn) (n int, err error) { - defer func() { - atomic.AddUint64(&d.stats.totalSendBytes, uint64(n)) - atomic.StoreInt64(&conn.ConnData.LastLocalSendTime, time.Now().UnixNano()) - - if !pkt.KeepAfterSend { - d.device.ReleasePoolPacket(pkt) - } - }() - - pktType := core.HeaderTypeToString(pkt.HeaderType) - //log.Debug("Send [%s] packet (%s -> %s): %+v", pktType, conn.ConnData.LocalAddr.String(), conn.ConnData.RemoteAddr.String(), pkt.Content) - log.Info("Send [%s] packet (%s -> %s), %d bytes", pktType, conn.ConnData.LocalAddr.String(), conn.ConnData.RemoteAddr.String(), len(pkt.Content)) - log.Evaluate("Send [%s] packet (%s -> %s, %d bytes)", pktType, conn.ConnData.LocalAddr.String(), conn.ConnData.RemoteAddr.String(), len(pkt.Content)) - return conn.netConn.Write(pkt.Content) -} - -func (d *UdpAC) recvPacketRoutine(conn *UdpConn) { - addrStr := conn.ConnData.RemoteAddr.String() - - defer conn.ConnData.Done() - defer log.Debug("recvPacketRoutine for %s stopped", addrStr) - - log.Debug("recvPacketRoutine for %s started", addrStr) - - for { - select { - case <-conn.ConnData.StopSignal: - return - - default: - } - - // udp recv, blocking until packet arrives or netConn.Close() - pkt := d.device.AllocatePoolPacket() - n, err := conn.netConn.Read(pkt.Buf[:]) - if err != nil { - d.device.ReleasePoolPacket(pkt) - if n == 0 { - // udp connection closed, it is not an error - return - } - log.Error("Failed to receive from remote address %s (%v)", addrStr, err) - continue - } - - // add total recv bytes - atomic.AddUint64(&d.stats.totalRecvBytes, uint64(n)) - - // check minimal length - if n < core.HeaderSize { - d.device.ReleasePoolPacket(pkt) - log.Error("Received UDP packet from %s is too short, discard", addrStr) - continue - } - - pkt.Content = pkt.Buf[:n] - //log.Trace("receive udp packet (%s -> %s): %+v", conn.ConnData.RemoteAddr.String(), conn.ConnData.LocalAddr.String(), pkt.Content) - - typ, _, err := d.device.RecvPrecheck(pkt) - msgType := core.HeaderTypeToString(typ) - log.Info("Receive [%s] packet (%s -> %s), %d bytes", msgType, addrStr, conn.ConnData.LocalAddr.String(), n) - log.Evaluate("Receive [%s] packet (%s -> %s), %d bytes", msgType, addrStr, conn.ConnData.LocalAddr.String(), n) - if err != nil { - d.device.ReleasePoolPacket(pkt) - log.Warning("Receive [%s] packet (%s -> %s), precheck error: %v", msgType, addrStr, conn.ConnData.LocalAddr.String(), err) - log.Evaluate("Receive [%s] packet (%s -> %s) precheck error: %v", msgType, addrStr, conn.ConnData.LocalAddr.String(), err) - continue - } - - atomic.StoreInt64(&conn.ConnData.LastLocalRecvTime, time.Now().UnixNano()) - - conn.ConnData.ForwardInboundPacket(pkt) - } -} - -func (d *UdpAC) connectionRoutine(conn *UdpConn) { - addrStr := conn.ConnData.RemoteAddr.String() - - defer d.wg.Done() - defer log.Debug("Connection routine: %s stopped", addrStr) - - log.Debug("Connection routine: %s started", addrStr) - - // stop receiving packets and clean up - defer func() { - d.remoteConnectionMutex.Lock() - delete(d.remoteConnectionMap, addrStr) - d.remoteConnectionMutex.Unlock() - - conn.Close() - }() - - for { - select { - case <-d.signals.stop: - return - - case <-conn.ConnData.SetTimeoutSignal: - if conn.ConnData.TimeoutMs <= 0 { - log.Debug("Connection routine closed immediately") - return - } - - case <-time.After(time.Duration(conn.ConnData.TimeoutMs) * time.Millisecond): - // timeout, quit routine - log.Debug("Connection routine idle timeout") - return - - case pkt, ok := <-conn.ConnData.SendQueue: - if !ok { - return - } - if pkt == nil { - continue - } - d.SendPacket(pkt, conn) - - case pkt, ok := <-conn.ConnData.RecvQueue: - if !ok { - return - } - if pkt == nil { - continue - } - log.Debug("Received udp packet len [%d] from addr: %s\n", len(pkt.Content), addrStr) - - if pkt.HeaderType == core.NHP_KPL { - d.device.ReleasePoolPacket(pkt) - log.Info("Receive [NHP_KPL] message (%s -> %s)", addrStr, conn.ConnData.LocalAddr.String()) - continue - } - - if d.device.IsTransactionResponse(pkt.HeaderType) { - // forward to a specific transaction - transactionId := pkt.Counter() - transaction := d.device.FindLocalTransaction(transactionId) - if transaction != nil { - transaction.NextPacketCh <- pkt - continue - } - } - - pd := &core.PacketData{ - BasePacket: pkt, - ConnData: conn.ConnData, - InitTime: atomic.LoadInt64(&conn.ConnData.LastLocalRecvTime), - } - // generic receive - d.device.RecvPacketToMsg(pd) - - case <-conn.ConnData.BlockSignal: - log.Critical("blocking address %s", addrStr) - return - } - } -} - -func (d *UdpAC) recvMessageRoutine() { - defer d.wg.Done() - defer log.Info("recvMessageRoutine stopped") - - log.Info("recvMessageRoutine started") - - for { - select { - case <-d.signals.stop: - return - - case ppd, ok := <-d.recvMsgCh: - if !ok { - return - } - if ppd == nil { - continue - } - - switch ppd.HeaderType { - case core.NHP_AOP: - // deal with NHP_AOP message - go d.HandleACOperations(ppd) - } - } - } -} - -// keep interaction between ac and server in certain time interval to keep outwards ip path active -func (d *UdpAC) maintainServerConnectionRoutine() { - defer d.wg.Done() - defer log.Info("maintainServerConnectionRoutine stopped") - - log.Info("maintainServerConnectionRoutine started") - - // reset iptables before exiting - defer d.iptables.ResetAllInput() - - var discoveryRoutineWg sync.WaitGroup - defer discoveryRoutineWg.Wait() - - for { - // make a local copy of servers then iterate because next operations are time consuming (too long to use locked iteration) - d.serverPeerMutex.Lock() - var serverCount int32 = int32(len(d.serverPeerMap)) - discoveryQuitArr := make([]chan struct{}, 0, serverCount) - discoveryFailStatusArr := make([]*int32, 0, serverCount) - - for _, server := range d.serverPeerMap { - // launch discovery routine for each server - fail := new(int32) - discoveryFailStatusArr = append(discoveryFailStatusArr, fail) - quit := make(chan struct{}) - discoveryQuitArr = append(discoveryQuitArr, quit) - - discoveryRoutineWg.Add(1) - go d.serverDiscovery(server, &discoveryRoutineWg, fail, quit) - } - d.serverPeerMutex.Unlock() - - // check whether all server discovery failed. - // If so, open all blocked input - quitCheck := make(chan struct{}) - discoveryQuitArr = append(discoveryQuitArr, quitCheck) - discoveryRoutineWg.Add(1) - go func() { - defer discoveryRoutineWg.Done() - - for { - select { - case <-d.signals.stop: - return - case <-quitCheck: - return - case <-time.After(MinialServerDiscoveryInterval * time.Second): - var totalFail int32 - for _, status := range discoveryFailStatusArr { - totalFail += atomic.LoadInt32(status) - } - - if totalFail < int32(len(discoveryFailStatusArr)) { - d.iptables.ResetAllInput() - } else { - d.iptables.AcceptAllInput() - } - } - } - }() - - select { - case <-d.signals.stop: - return - case _, ok := <-d.signals.serverMapUpdated: - if !ok { - return - } - // stop all current discovery routines - for _, q := range discoveryQuitArr { - close(q) - } - // continue and restart with new server discovery cycle - } - } -} - -func (d *UdpAC) serverDiscovery(server *core.UdpPeer, discoveryRoutineWg *sync.WaitGroup, serverFailCount *int32, quit <-chan struct{}) { - defer discoveryRoutineWg.Done() - - acId := d.config.ACId - serverAddr := server.HostOrAddr() - server, sendAddr := d.ResolvePeer(server) - if sendAddr == nil { - log.Error("Cannot connect to nil server address") - return - } - - addrStr := sendAddr.String() - - defer log.Info("server discovery sub-routine at %s stopped", serverAddr) - log.Info("server discovery sub-routine at %s started", serverAddr) - - var failCount int - - for { - var lastSendTime int64 - var lastRecvTime int64 - var connected bool - - // find whether connection is already connected - d.remoteConnectionMutex.Lock() - conn, found := d.remoteConnectionMap[addrStr] - d.remoteConnectionMutex.Unlock() - - if found { - // connection based timing - lastSendTime = atomic.LoadInt64(&conn.ConnData.LastLocalSendTime) - lastRecvTime = atomic.LoadInt64(&conn.ConnData.LastLocalRecvTime) - connected = conn.connected.Load() - } else { - // peer based timing - conn = nil - lastSendTime = server.LastSendTime() - lastRecvTime = server.LastRecvTime() - } - - currTime := time.Now().UnixNano() - peerPbk := server.PublicKey() - - // when a server is not connected, try to connect in every ACLocalTransactionResponseTimeoutMs - // when a server is connected when ServerConnectionInterval is reached since last receive, try resend NHP_AOL for maintaining server connection - if !connected || (currTime-lastRecvTime) > int64(ReportToServerInterval*time.Second) { - // send NHP_AOL message to server - aolMsg := &common.ACOnlineMsg{ - ACId: acId, - AuthServiceId: d.config.AuthServiceId, - ResourceIds: d.config.ResourceIds, - } - aolBytes, _ := json.Marshal(aolMsg) - - aolMd := &core.MsgData{ - RemoteAddr: sendAddr.(*net.UDPAddr), - HeaderType: core.NHP_AOL, - TransactionId: d.device.NextCounterIndex(), - Compress: true, - PeerPk: peerPbk, - Message: aolBytes, - ResponseMsgCh: make(chan *core.PacketParserData), - } - - if !d.IsRunning() { - log.Error("ac(%s#%d)[ACOnline] MsgData channel closed or being closed, skip sending", acId, aolMd.TransactionId) - return - } - - d.sendMsgCh <- aolMd // create new connection - server.UpdateSend(currTime) - - // block until transaction completes or timeouts - ppd := <-aolMd.ResponseMsgCh - close(aolMd.ResponseMsgCh) - - var err error - func() { - defer func() { - if err != nil { - if conn != nil { - conn.connected.Store(false) - } - - failCount += 1 - if failCount%ServerDiscoveryRetryBeforeFail == 0 { - atomic.StoreInt32(serverFailCount, 1) - // remove failed connection - d.remoteConnectionMutex.Lock() - conn = d.remoteConnectionMap[addrStr] - if conn != nil { - log.Info("server discovery failed, close local connection: %s", conn.ConnData.LocalAddr.String()) - delete(d.remoteConnectionMap, addrStr) - } - d.remoteConnectionMutex.Unlock() - conn.Close() - } - log.Error("ac(%s#%d)[ACOnline] reporting to server %s failed", acId, aolMd.TransactionId, addrStr) - } - - }() - - if ppd.Error != nil { - log.Error("ac(%s#%d)[ACOnline] failed to receive response from server %s: %v", acId, aolMd.TransactionId, addrStr, ppd.Error) - err = ppd.Error - return - } - - if ppd.HeaderType != core.NHP_AAK { - log.Error("ac(%s#%d)[ACOnline] response from server %s has wrong type: %s", acId, aolMd.TransactionId, addrStr, core.HeaderTypeToString(ppd.HeaderType)) - err = common.ErrTransactionRepliedWithWrongType - return - } - - aakMsg := &common.ServerACAckMsg{} - err = json.Unmarshal(ppd.BodyMessage, aakMsg) - if err != nil { - log.Error("ac(%s#%d)[HandleACAck] failed to parse %s message: %v", acId, ppd.SenderTrxId, core.HeaderTypeToString(ppd.HeaderType), err) - return - } - - // server discovery succeeded - failCount = 0 - atomic.StoreInt32(serverFailCount, 0) - d.remoteConnectionMutex.Lock() - conn = d.remoteConnectionMap[addrStr] // conn must be available at this point - conn.connected.Store(true) - conn.externalAddr = aakMsg.ACAddr - d.remoteConnectionMutex.Unlock() - log.Info("ac(%s#%d)[ACOnline] succeed. ac external address is %s, replied by server %s", acId, aolMd.TransactionId, aakMsg.ACAddr, addrStr) - }() - - } else if connected { - if (currTime - lastSendTime) > int64(ServerKeepaliveInterval*time.Second) { - // send NHP_KPL to server if no send happens within ServerKeepaliveInterval - md := &core.MsgData{ - RemoteAddr: sendAddr.(*net.UDPAddr), - HeaderType: core.NHP_KPL, - //PeerPk: peerPbk, // pubkey not needed - TransactionId: d.device.NextCounterIndex(), - } - - d.sendMsgCh <- md // send NHP_KPL to server via existing connection - server.UpdateSend(currTime) - } - } - - select { - case <-d.signals.stop: - return - case <-quit: - return - case <-time.After(MinialServerDiscoveryInterval * time.Second): - // wait for ServerConnectionDiscoveryInterval - } - } -} - -func (d *UdpAC) AddServerPeer(server *core.UdpPeer) { - if server.DeviceType() == core.NHP_SERVER { - d.device.AddPeer(server) - - d.serverPeerMutex.Lock() - d.serverPeerMap[server.PublicKeyBase64()] = server - d.serverPeerMutex.Unlock() - - // renew server connection cycle - if len(d.signals.serverMapUpdated) == 0 { - d.signals.serverMapUpdated <- struct{}{} - } - } -} - -func (d *UdpAC) RemoveServerPeer(serverKey string) { - d.serverPeerMutex.Lock() - beforeSize := len(d.serverPeerMap) - delete(d.serverPeerMap, serverKey) - afterSize := len(d.serverPeerMap) - d.serverPeerMutex.Unlock() - - if beforeSize != afterSize { - // renew server connection cycle - if len(d.signals.serverMapUpdated) == 0 { - d.signals.serverMapUpdated <- struct{}{} - } - } -} - -func (d *UdpAC) GenerateAccessToken(au *AgentUser) string { - hashStr := au.Hash() - timeStr := strconv.FormatInt(time.Now().UnixNano(), 10) - au.hash.Write([]byte(timeStr)) - token := base64.StdEncoding.EncodeToString(au.hash.Sum(nil)) - - d.AgentUserTokenMutex.Lock() - defer d.AgentUserTokenMutex.Unlock() - - tokenMap, found := d.agentUserCodeMap[hashStr[0:1]] - if found { - (*tokenMap)[hashStr] = token - } else { - tokenMap = &map[string]string{hashStr: token} - d.agentUserCodeMap[hashStr[0:1]] = tokenMap - } - - // log.Debug("user %+v, hash: %s", au, hashStr) - // log.Debug("agentUserCodeMap: %+v", d.agentUserCodeMap) - // log.Debug("tokenMap: %+v", d.agentUserCodeMap[hashStr[0:1]]) - return token -} - -func (d *UdpAC) VerifyAccessToken(au *AgentUser, token string) bool { - hashStr := au.Hash() - - d.AgentUserTokenMutex.Lock() - defer d.AgentUserTokenMutex.Unlock() - - // log.Debug("verify access token: %s", token) - // log.Debug("user %+v, hash: %s", au, hashStr) - // log.Debug("agentUserCodeMap: %+v", d.agentUserCodeMap) - // log.Debug("tokenMap: %+v", d.agentUserCodeMap[hashStr[0:1]]) - - tokenMap, found := d.agentUserCodeMap[hashStr[0:1]] - if found { - foundToken, found := (*tokenMap)[hashStr] - if found { - return token == foundToken - } - } - - return false -} - -func (d *UdpAC) DeleteAccessToken(au *AgentUser) { - hashStr := au.Hash() - - d.AgentUserTokenMutex.Lock() - defer d.AgentUserTokenMutex.Unlock() - - tokenMap, found := d.agentUserCodeMap[hashStr[0:1]] - if found { - delete(*tokenMap, hashStr) - if len(*tokenMap) == 0 { - delete(d.agentUserCodeMap, hashStr[0:1]) - } - } -} - -// if the server uses hostname as destination, find the correct peer with the actual IP address -func (d *UdpAC) ResolvePeer(peer *core.UdpPeer) (*core.UdpPeer, net.Addr) { - addr := peer.SendAddr() - if addr == nil { - return peer, nil - } - - if len(peer.Hostname) == 0 { - // peer with fixed ip, no change - return peer, addr - } - - actualIp := peer.ResolvedIp() - if peer.Ip == actualIp { - // peer with the correct resolved address, no change - return peer, addr - } - - d.serverPeerMutex.Lock() - defer d.serverPeerMutex.Unlock() - for _, p := range d.serverPeerMap { - if p.Ip == actualIp { - p.CopyResolveStatus(peer) - return p, addr - } - } - - return peer, addr -} +package ac + +import ( + "encoding/base64" + "encoding/json" + "fmt" + "net" + "path/filepath" + "sync" + "sync/atomic" + "time" + + "github.com/OpenNHP/opennhp/common" + "github.com/OpenNHP/opennhp/core" + "github.com/OpenNHP/opennhp/log" + "github.com/OpenNHP/opennhp/utils" + "github.com/OpenNHP/opennhp/version" +) + +var ( + ExeDirPath string +) + +type UdpAC struct { + config *Config + httpConfig *HttpConfig + iptables *utils.IPTables + ipset *utils.IPSet + + stats struct { + totalRecvBytes uint64 + totalSendBytes uint64 + } + + log *log.Logger + + remoteConnectionMutex sync.Mutex + remoteConnectionMap map[string]*UdpConn // indexed by remote UDP address + + serverPeerMutex sync.Mutex + serverPeerMap map[string]*core.UdpPeer // indexed by server's public key + + TokenStoreMutex sync.Mutex + tokenStore TokenStore + + device *core.Device + httpServer *HttpAC + wg sync.WaitGroup + running atomic.Bool + + signals struct { + stop chan struct{} + serverMapUpdated chan struct{} + } + + recvMsgCh <-chan *core.PacketParserData + sendMsgCh chan *core.MsgData +} + +type UdpConn struct { + ConnData *core.ConnectionData + netConn *net.UDPConn + connected atomic.Bool + externalAddr string +} + +func (c *UdpConn) Close() { + c.netConn.Close() + c.ConnData.Close() +} + +/* +dirPath: the path of app or shared library entry point +logLevel: 0: silent, 1: error, 2: info, 3: debug, 4: verbose +*/ +func (a *UdpAC) Start(dirPath string, logLevel int) (err error) { + common.ExeDirPath = dirPath + ExeDirPath = dirPath + // init logger + a.log = log.NewLogger("NHP-AC", logLevel, filepath.Join(ExeDirPath, "logs"), "ac") + log.SetGlobalLogger(a.log) + + log.Info("=========================================================") + log.Info("=== NHP-AC %s started ===", version.Version) + log.Info("=== REVISION %s ===", version.CommitId) + log.Info("=== RELEASE %s ===", version.BuildTime) + log.Info("=========================================================") + + // init config + err = a.loadBaseConfig() + if err != nil { + return err + } + + // load http config and turn on http server if needed + a.loadHttpConfig() + + a.iptables, err = utils.NewIPTables() + if err != nil { + log.Error("iptables command not found") + return + } + + a.ipset, err = utils.NewIPSet(false) + if err != nil { + log.Error("ipset command not found") + return + } + + prk, err := base64.StdEncoding.DecodeString(a.config.PrivateKeyBase64) + if err != nil { + log.Error("private key parse error %v\n", err) + return fmt.Errorf("private key parse error %v", err) + } + + a.device = core.NewDevice(core.NHP_AC, prk, nil) + if a.device == nil { + log.Critical("failed to create device %v\n", err) + return fmt.Errorf("failed to create device %v", err) + } + + a.remoteConnectionMap = make(map[string]*UdpConn) + a.serverPeerMap = make(map[string]*core.UdpPeer) + a.tokenStore = make(TokenStore) + + // load peers + a.loadPeers() + + a.signals.stop = make(chan struct{}) + a.signals.serverMapUpdated = make(chan struct{}, 1) + + a.recvMsgCh = a.device.DecryptedMsgQueue + a.sendMsgCh = make(chan *core.MsgData, core.SendQueueSize) + + // start device routines + a.device.Start() + + // start ac routines + a.wg.Add(4) + go a.tokenStoreRefreshRoutine() + go a.sendMessageRoutine() + go a.recvMessageRoutine() + go a.maintainServerConnectionRoutine() + + a.running.Store(true) + return nil +} + +func (ac *UdpAC) Stop() { + ac.running.Store(false) + close(ac.signals.stop) + + ac.device.Stop() + ac.StopConfigWatch() + ac.wg.Wait() + close(ac.sendMsgCh) + close(ac.signals.serverMapUpdated) + + log.Info("==========================") + log.Info("=== NHP-AC stopped ===") + log.Info("==========================") + ac.log.Close() +} + +func (a *UdpAC) IsRunning() bool { + return a.running.Load() +} + +func (a *UdpAC) newConnection(addr *net.UDPAddr) (conn *UdpConn) { + conn = &UdpConn{} + var err error + // unlike tcp, udp dial is fast (just socket bind), so no need to run in a thread + conn.netConn, err = net.DialUDP("udp", nil, addr) + if err != nil { + log.Error("could not connect to remote addr %s", addr.String()) + return nil + } + + // retrieve local port + laddr := conn.netConn.LocalAddr() + localAddr, err := net.ResolveUDPAddr(laddr.Network(), laddr.String()) + if err != nil { + log.Error("resolve local UDPAddr error %v\n", err) + return nil + } + + log.Info("Dial up new UDP connection from %s to %s", localAddr.String(), addr.String()) + + conn.ConnData = &core.ConnectionData{ + Device: a.device, + CookieStore: &core.CookieStore{}, + RemoteTransactionMap: make(map[uint64]*core.RemoteTransaction), + LocalAddr: localAddr, + RemoteAddr: addr, + TimeoutMs: DefaultConnectionTimeoutMs, + SendQueue: make(chan *core.Packet, PacketQueueSizePerConnection), + RecvQueue: make(chan *core.Packet, PacketQueueSizePerConnection), + BlockSignal: make(chan struct{}), + SetTimeoutSignal: make(chan struct{}), + StopSignal: make(chan struct{}), + } + + // start connection receive routine + conn.ConnData.Add(1) + go a.recvPacketRoutine(conn) + + return conn +} + +func (a *UdpAC) sendMessageRoutine() { + defer a.wg.Done() + defer log.Info("sendMessageRoutine stopped") + + log.Info("sendMessageRoutine started") + + for { + select { + case <-a.signals.stop: + return + + case md, ok := <-a.sendMsgCh: + if !ok { + return + } + if md == nil || md.RemoteAddr == nil { + log.Warning("Invalid initiator session starter") + continue + } + + addrStr := md.RemoteAddr.String() + + a.remoteConnectionMutex.Lock() + conn, found := a.remoteConnectionMap[addrStr] + a.remoteConnectionMutex.Unlock() + + if found { + md.ConnData = conn.ConnData + } else { + conn = a.newConnection(md.RemoteAddr) + if conn == nil { + log.Error("Failed to dial to remote address: %s", addrStr) + continue + } + + a.remoteConnectionMutex.Lock() + a.remoteConnectionMap[addrStr] = conn + a.remoteConnectionMutex.Unlock() + + md.ConnData = conn.ConnData + + // launch connection routine + a.wg.Add(1) + go a.connectionRoutine(conn) + } + + a.device.SendMsgToPacket(md) + } + } +} + +func (a *UdpAC) SendPacket(pkt *core.Packet, conn *UdpConn) (n int, err error) { + defer func() { + atomic.AddUint64(&a.stats.totalSendBytes, uint64(n)) + atomic.StoreInt64(&conn.ConnData.LastLocalSendTime, time.Now().UnixNano()) + + if !pkt.KeepAfterSend { + a.device.ReleasePoolPacket(pkt) + } + }() + + pktType := core.HeaderTypeToString(pkt.HeaderType) + //log.Debug("Send [%s] packet (%s -> %s): %+v", pktType, conn.ConnData.LocalAddr.String(), conn.ConnData.RemoteAddr.String(), pkt.Content) + log.Info("Send [%s] packet (%s -> %s), %d bytes", pktType, conn.ConnData.LocalAddr.String(), conn.ConnData.RemoteAddr.String(), len(pkt.Content)) + log.Evaluate("Send [%s] packet (%s -> %s, %d bytes)", pktType, conn.ConnData.LocalAddr.String(), conn.ConnData.RemoteAddr.String(), len(pkt.Content)) + return conn.netConn.Write(pkt.Content) +} + +func (a *UdpAC) recvPacketRoutine(conn *UdpConn) { + addrStr := conn.ConnData.RemoteAddr.String() + + defer conn.ConnData.Done() + defer log.Debug("recvPacketRoutine for %s stopped", addrStr) + + log.Debug("recvPacketRoutine for %s started", addrStr) + + for { + select { + case <-conn.ConnData.StopSignal: + return + + default: + } + + // udp recv, blocking until packet arrives or netConn.Close() + pkt := a.device.AllocatePoolPacket() + n, err := conn.netConn.Read(pkt.Buf[:]) + if err != nil { + a.device.ReleasePoolPacket(pkt) + if n == 0 { + // udp connection closed, it is not an error + return + } + log.Error("Failed to receive from remote address %s (%v)", addrStr, err) + continue + } + + // add total recv bytes + atomic.AddUint64(&a.stats.totalRecvBytes, uint64(n)) + + // check minimal length + if n < core.HeaderSize { + a.device.ReleasePoolPacket(pkt) + log.Error("Received UDP packet from %s is too short, discard", addrStr) + continue + } + + pkt.Content = pkt.Buf[:n] + //log.Trace("receive udp packet (%s -> %s): %+v", conn.ConnData.RemoteAddr.String(), conn.ConnData.LocalAddr.String(), pkt.Content) + + typ, _, err := a.device.RecvPrecheck(pkt) + msgType := core.HeaderTypeToString(typ) + log.Info("Receive [%s] packet (%s -> %s), %d bytes", msgType, addrStr, conn.ConnData.LocalAddr.String(), n) + log.Evaluate("Receive [%s] packet (%s -> %s), %d bytes", msgType, addrStr, conn.ConnData.LocalAddr.String(), n) + if err != nil { + a.device.ReleasePoolPacket(pkt) + log.Warning("Receive [%s] packet (%s -> %s), precheck error: %v", msgType, addrStr, conn.ConnData.LocalAddr.String(), err) + log.Evaluate("Receive [%s] packet (%s -> %s) precheck error: %v", msgType, addrStr, conn.ConnData.LocalAddr.String(), err) + continue + } + + atomic.StoreInt64(&conn.ConnData.LastLocalRecvTime, time.Now().UnixNano()) + + conn.ConnData.ForwardInboundPacket(pkt) + } +} + +func (a *UdpAC) connectionRoutine(conn *UdpConn) { + addrStr := conn.ConnData.RemoteAddr.String() + + defer a.wg.Done() + defer log.Debug("Connection routine: %s stopped", addrStr) + + log.Debug("Connection routine: %s started", addrStr) + + // stop receiving packets and clean up + defer func() { + a.remoteConnectionMutex.Lock() + delete(a.remoteConnectionMap, addrStr) + a.remoteConnectionMutex.Unlock() + + conn.Close() + }() + + for { + select { + case <-a.signals.stop: + return + + case <-conn.ConnData.SetTimeoutSignal: + if conn.ConnData.TimeoutMs <= 0 { + log.Debug("Connection routine closed immediately") + return + } + + case <-time.After(time.Duration(conn.ConnData.TimeoutMs) * time.Millisecond): + // timeout, quit routine + log.Debug("Connection routine idle timeout") + return + + case pkt, ok := <-conn.ConnData.SendQueue: + if !ok { + return + } + if pkt == nil { + continue + } + a.SendPacket(pkt, conn) + + case pkt, ok := <-conn.ConnData.RecvQueue: + if !ok { + return + } + if pkt == nil { + continue + } + log.Debug("Received udp packet len [%d] from addr: %s\n", len(pkt.Content), addrStr) + + if pkt.HeaderType == core.NHP_KPL { + a.device.ReleasePoolPacket(pkt) + log.Info("Receive [NHP_KPL] message (%s -> %s)", addrStr, conn.ConnData.LocalAddr.String()) + continue + } + + if a.device.IsTransactionResponse(pkt.HeaderType) { + // forward to a specific transaction + transactionId := pkt.Counter() + transaction := a.device.FindLocalTransaction(transactionId) + if transaction != nil { + transaction.NextPacketCh <- pkt + continue + } + } + + pd := &core.PacketData{ + BasePacket: pkt, + ConnData: conn.ConnData, + InitTime: atomic.LoadInt64(&conn.ConnData.LastLocalRecvTime), + } + // generic receive + a.device.RecvPacketToMsg(pd) + + case <-conn.ConnData.BlockSignal: + log.Critical("blocking address %s", addrStr) + return + } + } +} + +func (a *UdpAC) recvMessageRoutine() { + defer a.wg.Done() + defer log.Info("recvMessageRoutine stopped") + + log.Info("recvMessageRoutine started") + + for { + select { + case <-a.signals.stop: + return + + case ppd, ok := <-a.recvMsgCh: + if !ok { + return + } + if ppd == nil { + continue + } + + switch ppd.HeaderType { + case core.NHP_AOP: + // deal with NHP_AOP message + go a.HandleUdpACOperations(ppd) + } + } + } +} + +// keep interaction between ac and server in certain time interval to keep outwards ip path active +func (a *UdpAC) maintainServerConnectionRoutine() { + defer a.wg.Done() + defer log.Info("maintainServerConnectionRoutine stopped") + + log.Info("maintainServerConnectionRoutine started") + + // reset iptables before exiting + defer a.iptables.ResetAllInput() + + var discoveryRoutineWg sync.WaitGroup + defer discoveryRoutineWg.Wait() + + for { + // make a local copy of servers then iterate because next operations are time consuming (too long to use locked iteration) + a.serverPeerMutex.Lock() + var serverCount int32 = int32(len(a.serverPeerMap)) + discoveryQuitArr := make([]chan struct{}, 0, serverCount) + discoveryFailStatusArr := make([]*int32, 0, serverCount) + + for _, server := range a.serverPeerMap { + // launch discovery routine for each server + fail := new(int32) + discoveryFailStatusArr = append(discoveryFailStatusArr, fail) + quit := make(chan struct{}) + discoveryQuitArr = append(discoveryQuitArr, quit) + + discoveryRoutineWg.Add(1) + go a.serverDiscovery(server, &discoveryRoutineWg, fail, quit) + } + a.serverPeerMutex.Unlock() + + // check whether all server discovery failed. + // If so, open all blocked input + quitCheck := make(chan struct{}) + discoveryQuitArr = append(discoveryQuitArr, quitCheck) + discoveryRoutineWg.Add(1) + go func() { + defer discoveryRoutineWg.Done() + + for { + select { + case <-a.signals.stop: + return + case <-quitCheck: + return + case <-time.After(MinialServerDiscoveryInterval * time.Second): + var totalFail int32 + for _, status := range discoveryFailStatusArr { + totalFail += atomic.LoadInt32(status) + } + + if totalFail < int32(len(discoveryFailStatusArr)) { + a.iptables.ResetAllInput() + } else { + a.iptables.AcceptAllInput() + } + } + } + }() + + select { + case <-a.signals.stop: + return + case _, ok := <-a.signals.serverMapUpdated: + if !ok { + return + } + // stop all current discovery routines + for _, q := range discoveryQuitArr { + close(q) + } + // continue and restart with new server discovery cycle + } + } +} + +func (a *UdpAC) serverDiscovery(server *core.UdpPeer, discoveryRoutineWg *sync.WaitGroup, serverFailCount *int32, quit <-chan struct{}) { + defer discoveryRoutineWg.Done() + + acId := a.config.ACId + serverAddr := server.HostOrAddr() + server, sendAddr := a.ResolvePeer(server) + if sendAddr == nil { + log.Error("Cannot connect to nil server address") + return + } + + addrStr := sendAddr.String() + + defer log.Info("server discovery sub-routine at %s stopped", serverAddr) + log.Info("server discovery sub-routine at %s started", serverAddr) + + var failCount int + + for { + var lastSendTime int64 + var lastRecvTime int64 + var connected bool + + // find whether connection is already connected + a.remoteConnectionMutex.Lock() + conn, found := a.remoteConnectionMap[addrStr] + a.remoteConnectionMutex.Unlock() + + if found { + // connection based timing + lastSendTime = atomic.LoadInt64(&conn.ConnData.LastLocalSendTime) + lastRecvTime = atomic.LoadInt64(&conn.ConnData.LastLocalRecvTime) + connected = conn.connected.Load() + } else { + // peer based timing + conn = nil + lastSendTime = server.LastSendTime() + lastRecvTime = server.LastRecvTime() + } + + currTime := time.Now().UnixNano() + peerPbk := server.PublicKey() + + // when a server is not connected, try to connect in every ACLocalTransactionResponseTimeoutMs + // when a server is connected when ServerConnectionInterval is reached since last receive, try resend NHP_AOL for maintaining server connection + if !connected || (currTime-lastRecvTime) > int64(ReportToServerInterval*time.Second) { + // send NHP_AOL message to server + aolMsg := &common.ACOnlineMsg{ + ACId: acId, + AuthServiceId: a.config.AuthServiceId, + ResourceIds: a.config.ResourceIds, + } + aolBytes, _ := json.Marshal(aolMsg) + + aolMd := &core.MsgData{ + RemoteAddr: sendAddr.(*net.UDPAddr), + HeaderType: core.NHP_AOL, + TransactionId: a.device.NextCounterIndex(), + Compress: true, + PeerPk: peerPbk, + Message: aolBytes, + ResponseMsgCh: make(chan *core.PacketParserData), + } + + if !a.IsRunning() { + log.Error("ac(%s#%d)[ACOnline] MsgData channel closed or being closed, skip sending", acId, aolMd.TransactionId) + return + } + + a.sendMsgCh <- aolMd // create new connection + server.UpdateSend(currTime) + + // block until transaction completes or timeouts + ppd := <-aolMd.ResponseMsgCh + close(aolMd.ResponseMsgCh) + + var err error + func() { + defer func() { + if err != nil { + if conn != nil { + conn.connected.Store(false) + } + + failCount += 1 + if failCount%ServerDiscoveryRetryBeforeFail == 0 { + atomic.StoreInt32(serverFailCount, 1) + // remove failed connection + a.remoteConnectionMutex.Lock() + conn = a.remoteConnectionMap[addrStr] + if conn != nil { + log.Info("server discovery failed, close local connection: %s", conn.ConnData.LocalAddr.String()) + delete(a.remoteConnectionMap, addrStr) + } + a.remoteConnectionMutex.Unlock() + conn.Close() + } + log.Error("ac(%s#%d)[ACOnline] reporting to server %s failed", acId, aolMd.TransactionId, addrStr) + } + + }() + + if ppd.Error != nil { + log.Error("ac(%s#%d)[ACOnline] failed to receive response from server %s: %v", acId, aolMd.TransactionId, addrStr, ppd.Error) + err = ppd.Error + return + } + + if ppd.HeaderType != core.NHP_AAK { + log.Error("ac(%s#%d)[ACOnline] response from server %s has wrong type: %s", acId, aolMd.TransactionId, addrStr, core.HeaderTypeToString(ppd.HeaderType)) + err = common.ErrTransactionRepliedWithWrongType + return + } + + aakMsg := &common.ServerACAckMsg{} + err = json.Unmarshal(ppd.BodyMessage, aakMsg) + if err != nil { + log.Error("ac(%s#%d)[HandleACAck] failed to parse %s message: %v", acId, ppd.SenderTrxId, core.HeaderTypeToString(ppd.HeaderType), err) + return + } + + // server discovery succeeded + failCount = 0 + atomic.StoreInt32(serverFailCount, 0) + a.remoteConnectionMutex.Lock() + conn = a.remoteConnectionMap[addrStr] // conn must be available at this point + conn.connected.Store(true) + conn.externalAddr = aakMsg.ACAddr + a.remoteConnectionMutex.Unlock() + log.Info("ac(%s#%d)[ACOnline] succeed. ac external address is %s, replied by server %s", acId, aolMd.TransactionId, aakMsg.ACAddr, addrStr) + }() + + } else if connected { + if (currTime - lastSendTime) > int64(ServerKeepaliveInterval*time.Second) { + // send NHP_KPL to server if no send happens within ServerKeepaliveInterval + md := &core.MsgData{ + RemoteAddr: sendAddr.(*net.UDPAddr), + HeaderType: core.NHP_KPL, + //PeerPk: peerPbk, // pubkey not needed + TransactionId: a.device.NextCounterIndex(), + } + + a.sendMsgCh <- md // send NHP_KPL to server via existing connection + server.UpdateSend(currTime) + } + } + + select { + case <-a.signals.stop: + return + case <-quit: + return + case <-time.After(MinialServerDiscoveryInterval * time.Second): + // wait for ServerConnectionDiscoveryInterval + } + } +} + +func (a *UdpAC) AddServerPeer(server *core.UdpPeer) { + if server.DeviceType() == core.NHP_SERVER { + a.device.AddPeer(server) + + a.serverPeerMutex.Lock() + a.serverPeerMap[server.PublicKeyBase64()] = server + a.serverPeerMutex.Unlock() + + // renew server connection cycle + if len(a.signals.serverMapUpdated) == 0 { + a.signals.serverMapUpdated <- struct{}{} + } + } +} + +func (a *UdpAC) RemoveServerPeer(serverKey string) { + a.serverPeerMutex.Lock() + beforeSize := len(a.serverPeerMap) + delete(a.serverPeerMap, serverKey) + afterSize := len(a.serverPeerMap) + a.serverPeerMutex.Unlock() + + if beforeSize != afterSize { + // renew server connection cycle + if len(a.signals.serverMapUpdated) == 0 { + a.signals.serverMapUpdated <- struct{}{} + } + } +} + +// if the server uses hostname as destination, find the correct peer with the actual IP address +func (a *UdpAC) ResolvePeer(peer *core.UdpPeer) (*core.UdpPeer, net.Addr) { + addr := peer.SendAddr() + if addr == nil { + return peer, nil + } + + if len(peer.Hostname) == 0 { + // peer with fixed ip, no change + return peer, addr + } + + actualIp := peer.ResolvedIp() + if peer.Ip == actualIp { + // peer with the correct resolved address, no change + return peer, addr + } + + a.serverPeerMutex.Lock() + defer a.serverPeerMutex.Unlock() + for _, p := range a.serverPeerMap { + if p.Ip == actualIp { + p.CopyResolveStatus(peer) + return p, addr + } + } + + return peer, addr +} diff --git a/common/nhpmsg.go b/common/nhpmsg.go index cd800dce..c7a2672a 100644 --- a/common/nhpmsg.go +++ b/common/nhpmsg.go @@ -125,6 +125,7 @@ type ACOpsResultMsg struct { ErrCode string `json:"errCode"` ErrMsg string `json:"errMsg,omitempty"` OpenTime uint32 `json:"opnTime"` + ACToken string `json:"token"` PreAccessAction *PreAccessInfo `json:"preAct"` } @@ -134,6 +135,11 @@ type ACOnlineMsg struct { ACId string `json:"acId,omitempty"` } +type ACRefreshMsg struct { + NhpToken string `json:"nhpToken"` + SourceAddr *NetAddress `json:"srcAddr"` +} + type ServerACAckMsg struct { ErrCode string `json:"errCode"` ErrMsg string `json:"errMsg,omitempty"` diff --git a/common/types.go b/common/types.go index ddb9cab9..144cd4b7 100644 --- a/common/types.go +++ b/common/types.go @@ -76,3 +76,8 @@ type HttpKnockRequest struct { SrcIp string `json:"-"` SrcPort int `json:"-"` } + +type HttpRefreshRequest struct { + Token string `json:"token"` + SrcIp string `json:"srcIp"` +} diff --git a/server/config.go b/server/config.go index a53ed74d..1a55e025 100644 --- a/server/config.go +++ b/server/config.go @@ -1,370 +1,370 @@ -package server - -import ( - "fmt" - "io" - "os" - "path/filepath" - - "github.com/OpenNHP/opennhp/common" - "github.com/OpenNHP/opennhp/core" - "github.com/OpenNHP/opennhp/log" - "github.com/OpenNHP/opennhp/plugins" - "github.com/OpenNHP/opennhp/utils" - - toml "github.com/pelletier/go-toml/v2" -) - -var ( - baseConfigWatch io.Closer - httpConfigWatch io.Closer - acConfigWatch io.Closer - agentConfigWatch io.Closer - resConfigWatch io.Closer - srcipConfigWatch io.Closer - - errLoadConfig = fmt.Errorf("config load error") -) - -type Config struct { - PrivateKeyBase64 string `json:"privateKey"` - ListenIp string `json:"listenIp"` - ListenPort int `json:"listenPort"` - LogLevel int `json:"logLevel"` - Hostname string `json:"hostname"` - DisableAgentValidation bool `json:"disableAgentValidation"` -} - -type HttpConfig struct { - EnableHttp bool - EnableTLS bool - HttpListenIp string - TLSCertFile string - TLSKeyFile string -} - -type Peers struct { - ACs []*core.UdpPeer - Agents []*core.UdpPeer -} - -func (s *UdpServer) loadBaseConfig() error { - // config.toml - fileName := filepath.Join(ExeDirPath, "etc", "config.toml") - if err := s.updateBaseConfig(fileName); err != nil { - // report base config error - return err - } - - baseConfigWatch = utils.WatchFile(fileName, func() { - log.Info("base config: %s has been updated", fileName) - s.updateBaseConfig(fileName) - }) - return nil -} - -func (s *UdpServer) loadHttpConfig() error { - // http.toml - fileName := filepath.Join(ExeDirPath, "etc", "http.toml") - if err := s.updateHttpConfig(fileName); err != nil { - // ignore error - _ = err - } - - httpConfigWatch = utils.WatchFile(fileName, func() { - log.Info("http config: %s has been updated", fileName) - s.updateHttpConfig(fileName) - }) - return nil -} - -func (s *UdpServer) loadPeers() error { - // ac.toml - fileNameAC := filepath.Join(ExeDirPath, "etc", "ac.toml") - if err := s.updateACPeers(fileNameAC); err != nil { - // ignore error - _ = err - } - - acConfigWatch = utils.WatchFile(fileNameAC, func() { - log.Info("ac peer config: %s has been updated", fileNameAC) - s.updateACPeers(fileNameAC) - }) - - // agent.toml - fileNameAgent := filepath.Join(ExeDirPath, "etc", "agent.toml") - if err := s.updateAgentPeers(fileNameAgent); err != nil { - // ignore error - _ = err - } - - agentConfigWatch = utils.WatchFile(fileNameAgent, func() { - log.Info("agent peer config: %s has been updated", fileNameAgent) - s.updateAgentPeers(fileNameAgent) - }) - return nil -} - -func (s *UdpServer) loadResources() error { - // resource.toml - fileName := filepath.Join(ExeDirPath, "etc", "resource.toml") - if err := s.updateResources(fileName); err != nil { - // ignore error - _ = err - } - - resConfigWatch = utils.WatchFile(fileName, func() { - log.Info("resource config: %s has been updated", fileName) - s.updateResources(fileName) - }) - return nil -} - -func (s *UdpServer) loadSourceIps() error { - // srcip.toml - fileName := filepath.Join(ExeDirPath, "etc", "srcip.toml") - if err := s.updateSourceIps(fileName); err != nil { - // ignore error - _ = err - } - - srcipConfigWatch = utils.WatchFile(fileName, func() { - log.Info("src ip config: %s has been updated", fileName) - s.updateSourceIps(fileName) - }) - return nil -} - -func (s *UdpServer) updateBaseConfig(file string) (err error) { - utils.CatchPanicThenRun(func() { - err = errLoadConfig - }) - - content, err := os.ReadFile(file) - if err != nil { - log.Error("failed to read base config: %v", err) - } - - var conf Config - if err := toml.Unmarshal(content, &conf); err != nil { - log.Error("failed to unmarshal base config: %v", err) - } - - if s.config == nil { - s.config = &conf - s.log.SetLogLevel(conf.LogLevel) - return err - } - - // update - if s.config.LogLevel != conf.LogLevel { - log.Info("set base log level to %d", conf.LogLevel) - s.log.SetLogLevel(conf.LogLevel) - s.config.LogLevel = conf.LogLevel - } - - if s.config.DisableAgentValidation != conf.DisableAgentValidation { - if s.device != nil { - s.device.SetOption(core.DeviceOptions{ - DisableAgentPeerValidation: conf.DisableAgentValidation, - }) - } - s.config.DisableAgentValidation = conf.DisableAgentValidation - } - - return err -} - -func (s *UdpServer) updateHttpConfig(file string) (err error) { - utils.CatchPanicThenRun(func() { - err = errLoadConfig - }) - - content, err := os.ReadFile(file) - if err != nil { - log.Error("failed to read base config: %v", err) - } - - var httpConf HttpConfig - if err := toml.Unmarshal(content, &httpConf); err != nil { - log.Error("failed to unmarshal base config: %v", err) - } - - // update - if httpConf.EnableHttp { - // start http server - if s.httpServer == nil || !s.httpServer.IsRunning() { - if s.httpServer != nil { - // stop old http server - go s.httpServer.Stop() - } - hs := &HttpServer{} - s.httpServer = hs - err = hs.Start(s, &httpConf) - if err != nil { - return err - } - } - } else { - // stop http server - if s.httpServer != nil && s.httpServer.IsRunning() { - go s.httpServer.Stop() - s.httpServer = nil - } - } - - s.httpConfig = &httpConf - return err -} - -func (s *UdpServer) updateACPeers(file string) (err error) { - utils.CatchPanicThenRun(func() { - err = errLoadConfig - }) - - content, err := os.ReadFile(file) - if err != nil { - log.Error("failed to read ac peer config: %v", err) - } - - // update - var peers Peers - acPeerMap := make(map[string]*core.UdpPeer) - if err := toml.Unmarshal(content, &peers); err != nil { - log.Error("failed to unmarshal ac peer config: %v", err) - } - for _, p := range peers.ACs { - p.Type = core.NHP_AC - s.device.AddPeer(p) - acPeerMap[p.PublicKeyBase64()] = p - } - - // remove old peers from device - s.acPeerMapMutex.Lock() - defer s.acPeerMapMutex.Unlock() - for pubKey := range s.acPeerMap { - if _, found := acPeerMap[pubKey]; !found { - s.device.RemovePeer(pubKey) - } - } - s.acPeerMap = acPeerMap - - return err -} - -func (s *UdpServer) updateAgentPeers(file string) (err error) { - utils.CatchPanicThenRun(func() { - err = errLoadConfig - }) - - content, err := os.ReadFile(file) - if err != nil { - log.Error("failed to read agent peer config: %v", err) - } - - var peers Peers - agentPeerMap := make(map[string]*core.UdpPeer) - if err := toml.Unmarshal(content, &peers); err != nil { - log.Error("failed to unmarshal agent peer config: %v", err) - } - for _, p := range peers.Agents { - p.Type = core.NHP_AGENT - s.device.AddPeer(p) - agentPeerMap[p.PublicKeyBase64()] = p - } - - // remove old peers from device - s.agentPeerMapMutex.Lock() - defer s.agentPeerMapMutex.Unlock() - for pubKey := range s.agentPeerMap { - if _, found := agentPeerMap[pubKey]; !found { - s.device.RemovePeer(pubKey) - } - } - s.agentPeerMap = agentPeerMap - - return err -} - -func (s *UdpServer) updateResources(file string) (err error) { - utils.CatchPanicThenRun(func() { - err = errLoadConfig - }) - - content, err := os.ReadFile(file) - if err != nil { - log.Error("failed to read resource config: %v", err) - } - - // update - aspMap := make(common.AuthSvcProviderMap) - if err := toml.Unmarshal(content, &aspMap); err != nil { - log.Error("failed to unmarshal resource config: %v", err) - } - - for aspId, aspData := range aspMap { - aspData.AuthSvcId = aspId - if len(aspData.PluginPath) > 0 { - h := plugins.ReadPluginHandler(aspData.PluginPath) - if h != nil { - s.LoadPlugin(aspId, h) - } - } - - for resId, res := range aspData.ResourceGroups { - // Note: res is a pointer, so we can update its value - res.AuthServiceId = aspId - res.ResourceId = resId - } - } - - s.authServiceMapMutex.Lock() - defer s.authServiceMapMutex.Unlock() - s.authServiceMap = aspMap - - return err -} - -func (s *UdpServer) updateSourceIps(file string) (err error) { - utils.CatchPanicThenRun(func() { - err = errLoadConfig - }) - - content, err := os.ReadFile(file) - if err != nil { - log.Error("failed to read src ip config: %v", err) - } - - // update - srcIpMap := make(map[string][]*common.NetAddress) - if err := toml.Unmarshal(content, &srcIpMap); err != nil { - log.Error("failed to unmarshal src ip config: %v", err) - } - - s.srcIpAssociatedAddrMapMutex.Lock() - defer s.srcIpAssociatedAddrMapMutex.Unlock() - s.srcIpAssociatedAddrMap = srcIpMap - - return err -} - -func (s *UdpServer) StopConfigWatch() { - if baseConfigWatch != nil { - baseConfigWatch.Close() - } - if httpConfigWatch != nil { - httpConfigWatch.Close() - } - if acConfigWatch != nil { - acConfigWatch.Close() - } - if agentConfigWatch != nil { - agentConfigWatch.Close() - } - if resConfigWatch != nil { - resConfigWatch.Close() - } - if srcipConfigWatch != nil { - srcipConfigWatch.Close() - } -} +package server + +import ( + "fmt" + "io" + "os" + "path/filepath" + + "github.com/OpenNHP/opennhp/common" + "github.com/OpenNHP/opennhp/core" + "github.com/OpenNHP/opennhp/log" + "github.com/OpenNHP/opennhp/plugins" + "github.com/OpenNHP/opennhp/utils" + + toml "github.com/pelletier/go-toml/v2" +) + +var ( + baseConfigWatch io.Closer + httpConfigWatch io.Closer + acConfigWatch io.Closer + agentConfigWatch io.Closer + resConfigWatch io.Closer + srcipConfigWatch io.Closer + + errLoadConfig = fmt.Errorf("config load error") +) + +type Config struct { + PrivateKeyBase64 string `json:"privateKey"` + ListenIp string `json:"listenIp"` + ListenPort int `json:"listenPort"` + LogLevel int `json:"logLevel"` + Hostname string `json:"hostname"` + DisableAgentValidation bool `json:"disableAgentValidation"` +} + +type HttpConfig struct { + EnableHttp bool + EnableTLS bool + HttpListenIp string + TLSCertFile string + TLSKeyFile string +} + +type Peers struct { + ACs []*core.UdpPeer + Agents []*core.UdpPeer +} + +func (s *UdpServer) loadBaseConfig() error { + // config.toml + fileName := filepath.Join(ExeDirPath, "etc", "config.toml") + if err := s.updateBaseConfig(fileName); err != nil { + // report base config error + return err + } + + baseConfigWatch = utils.WatchFile(fileName, func() { + log.Info("base config: %s has been updated", fileName) + s.updateBaseConfig(fileName) + }) + return nil +} + +func (s *UdpServer) loadHttpConfig() error { + // http.toml + fileName := filepath.Join(ExeDirPath, "etc", "http.toml") + if err := s.updateHttpConfig(fileName); err != nil { + // ignore error + _ = err + } + + httpConfigWatch = utils.WatchFile(fileName, func() { + log.Info("http config: %s has been updated", fileName) + s.updateHttpConfig(fileName) + }) + return nil +} + +func (s *UdpServer) loadPeers() error { + // ac.toml + fileNameAC := filepath.Join(ExeDirPath, "etc", "ac.toml") + if err := s.updateACPeers(fileNameAC); err != nil { + // ignore error + _ = err + } + + acConfigWatch = utils.WatchFile(fileNameAC, func() { + log.Info("ac peer config: %s has been updated", fileNameAC) + s.updateACPeers(fileNameAC) + }) + + // agent.toml + fileNameAgent := filepath.Join(ExeDirPath, "etc", "agent.toml") + if err := s.updateAgentPeers(fileNameAgent); err != nil { + // ignore error + _ = err + } + + agentConfigWatch = utils.WatchFile(fileNameAgent, func() { + log.Info("agent peer config: %s has been updated", fileNameAgent) + s.updateAgentPeers(fileNameAgent) + }) + return nil +} + +func (s *UdpServer) loadResources() error { + // resource.toml + fileName := filepath.Join(ExeDirPath, "etc", "resource.toml") + if err := s.updateResources(fileName); err != nil { + // ignore error + _ = err + } + + resConfigWatch = utils.WatchFile(fileName, func() { + log.Info("resource config: %s has been updated", fileName) + s.updateResources(fileName) + }) + return nil +} + +func (s *UdpServer) loadSourceIps() error { + // srcip.toml + fileName := filepath.Join(ExeDirPath, "etc", "srcip.toml") + if err := s.updateSourceIps(fileName); err != nil { + // ignore error + _ = err + } + + srcipConfigWatch = utils.WatchFile(fileName, func() { + log.Info("src ip config: %s has been updated", fileName) + s.updateSourceIps(fileName) + }) + return nil +} + +func (s *UdpServer) updateBaseConfig(file string) (err error) { + utils.CatchPanicThenRun(func() { + err = errLoadConfig + }) + + content, err := os.ReadFile(file) + if err != nil { + log.Error("failed to read base config: %v", err) + } + + var conf Config + if err := toml.Unmarshal(content, &conf); err != nil { + log.Error("failed to unmarshal base config: %v", err) + } + + if s.config == nil { + s.config = &conf + s.log.SetLogLevel(conf.LogLevel) + return err + } + + // update + if s.config.LogLevel != conf.LogLevel { + log.Info("set base log level to %d", conf.LogLevel) + s.log.SetLogLevel(conf.LogLevel) + s.config.LogLevel = conf.LogLevel + } + + if s.config.DisableAgentValidation != conf.DisableAgentValidation { + if s.device != nil { + s.device.SetOption(core.DeviceOptions{ + DisableAgentPeerValidation: conf.DisableAgentValidation, + }) + } + s.config.DisableAgentValidation = conf.DisableAgentValidation + } + + return err +} + +func (s *UdpServer) updateHttpConfig(file string) (err error) { + utils.CatchPanicThenRun(func() { + err = errLoadConfig + }) + + content, err := os.ReadFile(file) + if err != nil { + log.Error("failed to read http config: %v", err) + } + + var httpConf HttpConfig + if err := toml.Unmarshal(content, &httpConf); err != nil { + log.Error("failed to unmarshal http config: %v", err) + } + + // update + if httpConf.EnableHttp { + // start http server + if s.httpServer == nil || !s.httpServer.IsRunning() { + if s.httpServer != nil { + // stop old http server + go s.httpServer.Stop() + } + hs := &HttpServer{} + s.httpServer = hs + err = hs.Start(s, &httpConf) + if err != nil { + return err + } + } + } else { + // stop http server + if s.httpServer != nil && s.httpServer.IsRunning() { + go s.httpServer.Stop() + s.httpServer = nil + } + } + + s.httpConfig = &httpConf + return err +} + +func (s *UdpServer) updateACPeers(file string) (err error) { + utils.CatchPanicThenRun(func() { + err = errLoadConfig + }) + + content, err := os.ReadFile(file) + if err != nil { + log.Error("failed to read ac peer config: %v", err) + } + + // update + var peers Peers + acPeerMap := make(map[string]*core.UdpPeer) + if err := toml.Unmarshal(content, &peers); err != nil { + log.Error("failed to unmarshal ac peer config: %v", err) + } + for _, p := range peers.ACs { + p.Type = core.NHP_AC + s.device.AddPeer(p) + acPeerMap[p.PublicKeyBase64()] = p + } + + // remove old peers from device + s.acPeerMapMutex.Lock() + defer s.acPeerMapMutex.Unlock() + for pubKey := range s.acPeerMap { + if _, found := acPeerMap[pubKey]; !found { + s.device.RemovePeer(pubKey) + } + } + s.acPeerMap = acPeerMap + + return err +} + +func (s *UdpServer) updateAgentPeers(file string) (err error) { + utils.CatchPanicThenRun(func() { + err = errLoadConfig + }) + + content, err := os.ReadFile(file) + if err != nil { + log.Error("failed to read agent peer config: %v", err) + } + + var peers Peers + agentPeerMap := make(map[string]*core.UdpPeer) + if err := toml.Unmarshal(content, &peers); err != nil { + log.Error("failed to unmarshal agent peer config: %v", err) + } + for _, p := range peers.Agents { + p.Type = core.NHP_AGENT + s.device.AddPeer(p) + agentPeerMap[p.PublicKeyBase64()] = p + } + + // remove old peers from device + s.agentPeerMapMutex.Lock() + defer s.agentPeerMapMutex.Unlock() + for pubKey := range s.agentPeerMap { + if _, found := agentPeerMap[pubKey]; !found { + s.device.RemovePeer(pubKey) + } + } + s.agentPeerMap = agentPeerMap + + return err +} + +func (s *UdpServer) updateResources(file string) (err error) { + utils.CatchPanicThenRun(func() { + err = errLoadConfig + }) + + content, err := os.ReadFile(file) + if err != nil { + log.Error("failed to read resource config: %v", err) + } + + // update + aspMap := make(common.AuthSvcProviderMap) + if err := toml.Unmarshal(content, &aspMap); err != nil { + log.Error("failed to unmarshal resource config: %v", err) + } + + for aspId, aspData := range aspMap { + aspData.AuthSvcId = aspId + if len(aspData.PluginPath) > 0 { + h := plugins.ReadPluginHandler(aspData.PluginPath) + if h != nil { + s.LoadPlugin(aspId, h) + } + } + + for resId, res := range aspData.ResourceGroups { + // Note: res is a pointer, so we can update its value + res.AuthServiceId = aspId + res.ResourceId = resId + } + } + + s.authServiceMapMutex.Lock() + defer s.authServiceMapMutex.Unlock() + s.authServiceMap = aspMap + + return err +} + +func (s *UdpServer) updateSourceIps(file string) (err error) { + utils.CatchPanicThenRun(func() { + err = errLoadConfig + }) + + content, err := os.ReadFile(file) + if err != nil { + log.Error("failed to read src ip config: %v", err) + } + + // update + srcIpMap := make(map[string][]*common.NetAddress) + if err := toml.Unmarshal(content, &srcIpMap); err != nil { + log.Error("failed to unmarshal src ip config: %v", err) + } + + s.srcIpAssociatedAddrMapMutex.Lock() + defer s.srcIpAssociatedAddrMapMutex.Unlock() + s.srcIpAssociatedAddrMap = srcIpMap + + return err +} + +func (s *UdpServer) StopConfigWatch() { + if baseConfigWatch != nil { + baseConfigWatch.Close() + } + if httpConfigWatch != nil { + httpConfigWatch.Close() + } + if acConfigWatch != nil { + acConfigWatch.Close() + } + if agentConfigWatch != nil { + agentConfigWatch.Close() + } + if resConfigWatch != nil { + resConfigWatch.Close() + } + if srcipConfigWatch != nil { + srcipConfigWatch.Close() + } +} From 79ac58465ee53658e1209ed0911af71a23c14b2e Mon Sep 17 00:00:00 2001 From: zengl Date: Sun, 29 Sep 2024 10:10:49 +0800 Subject: [PATCH 17/41] add ac http config file --- ac/main/etc/http.toml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 ac/main/etc/http.toml diff --git a/ac/main/etc/http.toml b/ac/main/etc/http.toml new file mode 100644 index 00000000..b47fdac1 --- /dev/null +++ b/ac/main/etc/http.toml @@ -0,0 +1,12 @@ +# http server config + +# EnableHttp: true: turn on http server, false: shutdown http server. +# EnableTLS: whether to use TLS certificates for hosting https server. +# TLSCertFile: certificate file path. +# TLSKeyFile: key file path. +# to update http changes, you need to restart the http server by changing "EnableHttp" to "false" and then switch it back to "true". +EnableHttp = true +EnableTLS = true +HttpListenPort = 62206 +TLSCertFile = "cert/cert.pem" +TLSKeyFile = "cert/cert.key" From 5b28d4693beb302404ca802c262d0dd80f37ffa7 Mon Sep 17 00:00:00 2001 From: zengl Date: Sun, 29 Sep 2024 14:28:59 +0800 Subject: [PATCH 18/41] Server ack message propagates AC tokens to agent. Http knock api also set agent's cookie with tokens --- ac/httpac.go | 7 ++--- ac/msghandler.go | 20 ++++++------- ac/tokenstore.go | 31 ++++++++------------ ac/udpac.go | 2 +- common/nhpmsg.go | 17 +++++------ common/types.go | 8 ++++++ server/constants.go | 5 ++-- server/httpserver.go | 52 ++++++++++++++++++++++++++++------ server/plugins/example/main.go | 33 +++++++++++++++------ server/udpserver.go | 35 ++++++++++++----------- 10 files changed, 133 insertions(+), 77 deletions(-) diff --git a/ac/httpac.go b/ac/httpac.go index 70b7409a..f929ed2e 100644 --- a/ac/httpac.go +++ b/ac/httpac.go @@ -134,9 +134,8 @@ func (hs *HttpAC) IsRunning() bool { func (ha *HttpAC) initRouter() { g := ha.ginEngine - pluginGrp := g.Group("refresh") - // display login page with templates - pluginGrp.GET("/:token", func(ctx *gin.Context) { + refreshGrp := g.Group("refresh") + refreshGrp.GET("/:token", func(ctx *gin.Context) { var err error token := ctx.Param("token") log.Info("get refresh request. aspId: %s, query: %v", token, ctx.Request.URL.RawQuery) @@ -198,7 +197,7 @@ func (ha *HttpAC) HandleHttpRefreshOperations(c *gin.Context, req *common.HttpRe entry.SrcAddrs = append(entry.SrcAddrs, newSrcAddr) } - _, err = ha.ua.HandleAccessControl(entry.AgentUser, entry.SrcAddrs, entry.DstAddrs, entry.OpenTime, nil) + _, err = ha.ua.HandleAccessControl(entry.User, entry.SrcAddrs, entry.DstAddrs, entry.OpenTime, nil) if err != nil { c.String(http.StatusOK, "{\"errMsg\": \"%s\"}", err) return diff --git a/ac/msghandler.go b/ac/msghandler.go index 30e58c62..fd8ad425 100644 --- a/ac/msghandler.go +++ b/ac/msghandler.go @@ -41,7 +41,7 @@ func (a *UdpAC) HandleUdpACOperations(ppd *core.PacketParserData) (err error) { srcAddrs := dopMsg.SourceAddrs dstAddrs := dopMsg.DestinationAddrs openTimeSec := int(dopMsg.OpenTime) - agentUser := &AgentUser{ + agentUser := &common.AgentUser{ UserId: dopMsg.UserId, DeviceId: dopMsg.DeviceId, OrganizationId: dopMsg.OrganizationId, @@ -54,10 +54,10 @@ func (a *UdpAC) HandleUdpACOperations(ppd *core.PacketParserData) (err error) { // generate ac token and save user and access information entry := &AccessEntry{ - AgentUser: agentUser, - SrcAddrs: srcAddrs, - DstAddrs: dstAddrs, - OpenTime: openTimeSec, + User: agentUser, + SrcAddrs: srcAddrs, + DstAddrs: dstAddrs, + OpenTime: openTimeSec, } artMsg.ACToken = a.GenerateAccessToken(entry) @@ -84,7 +84,7 @@ func (a *UdpAC) HandleUdpACOperations(ppd *core.PacketParserData) (err error) { return err } -func (a *UdpAC) HandleAccessControl(au *AgentUser, srcAddrs []*common.NetAddress, dstAddrs []*common.NetAddress, openTimeSec int, artMsgIn *common.ACOpsResultMsg) (artMsg *common.ACOpsResultMsg, err error) { +func (a *UdpAC) HandleAccessControl(au *common.AgentUser, srcAddrs []*common.NetAddress, dstAddrs []*common.NetAddress, openTimeSec int, artMsgIn *common.ACOpsResultMsg) (artMsg *common.ACOpsResultMsg, err error) { if artMsgIn == nil { artMsg = &common.ACOpsResultMsg{} } else { @@ -345,10 +345,10 @@ func (a *UdpAC) HandleAccessControl(au *AgentUser, srcAddrs []*common.NetAddress log.Info("[HandleAccessControl] open temporary udp port on %s", tladdr.String()) tempEntry := &AccessEntry{ - AgentUser: au, - SrcAddrs: srcAddrs, - DstAddrs: dstAddrs, - OpenTime: tempOpenTimeSec, + User: au, + SrcAddrs: srcAddrs, + DstAddrs: dstAddrs, + OpenTime: tempOpenTimeSec, } artMsg.PreAccessAction = &common.PreAccessInfo{ AccessPort: strconv.Itoa(pickedPort), diff --git a/ac/tokenstore.go b/ac/tokenstore.go index 79e61514..2f966218 100644 --- a/ac/tokenstore.go +++ b/ac/tokenstore.go @@ -11,23 +11,16 @@ import ( "github.com/OpenNHP/opennhp/log" ) -type AgentUser struct { - UserId string - DeviceId string - OrganizationId string - AuthServiceId string -} - type AccessEntry struct { - AgentUser *AgentUser + User *common.AgentUser SrcAddrs []*common.NetAddress DstAddrs []*common.NetAddress OpenTime int ExpireTime time.Time } -type TokenAccessMap = map[string]*AccessEntry // access token mapped into user and access information -type TokenStore = map[string]TokenAccessMap // upper layer of tokens, indexed by first two characters +type TokenToAccessMap = map[string]*AccessEntry // access token mapped into user and access information +type TokenStore = map[string]TokenToAccessMap // upper layer of tokens, indexed by first two characters func (a *UdpAC) GenerateAccessToken(entry *AccessEntry) string { var tsBytes [8]byte @@ -35,21 +28,21 @@ func (a *UdpAC) GenerateAccessToken(entry *AccessEntry) string { hash := sm3.New() binary.BigEndian.PutUint64(tsBytes[:], uint64(currTime)) - au := entry.AgentUser + au := entry.User hash.Write([]byte(a.config.ACId + au.UserId + au.DeviceId + au.OrganizationId + au.AuthServiceId)) hash.Write(tsBytes[:]) token := base64.StdEncoding.EncodeToString(hash.Sum(nil)) hash.Reset() - a.TokenStoreMutex.Lock() - defer a.TokenStoreMutex.Unlock() + a.tokenStoreMutex.Lock() + defer a.tokenStoreMutex.Unlock() entry.ExpireTime = time.Now().Add(time.Duration(entry.OpenTime) * time.Second) tokenMap, found := a.tokenStore[token[0:1]] if found { tokenMap[token] = entry } else { - tokenMap := make(TokenAccessMap) + tokenMap := make(TokenToAccessMap) tokenMap[token] = entry a.tokenStore[token[0:1]] = tokenMap } @@ -58,8 +51,8 @@ func (a *UdpAC) GenerateAccessToken(entry *AccessEntry) string { } func (a *UdpAC) VerifyAccessToken(token string) *AccessEntry { - a.TokenStoreMutex.Lock() - defer a.TokenStoreMutex.Unlock() + a.tokenStoreMutex.Lock() + defer a.tokenStoreMutex.Unlock() tokenMap, found := a.tokenStore[token[0:1]] if found { @@ -84,14 +77,14 @@ func (a *UdpAC) tokenStoreRefreshRoutine() { return case <-time.After(TokenStoreRefreshInterval * time.Second): - a.TokenStoreMutex.Lock() - defer a.TokenStoreMutex.Unlock() + a.tokenStoreMutex.Lock() + defer a.tokenStoreMutex.Unlock() now := time.Now() for head, tokenMap := range a.tokenStore { for token, entry := range tokenMap { if now.After(entry.ExpireTime) { - log.Info("[TokenStore] token %s expired", token) + log.Info("[TokenStore] token %s expired, remove", token) delete(tokenMap, token) } } diff --git a/ac/udpac.go b/ac/udpac.go index c5706a15..affbbc83 100644 --- a/ac/udpac.go +++ b/ac/udpac.go @@ -40,7 +40,7 @@ type UdpAC struct { serverPeerMutex sync.Mutex serverPeerMap map[string]*core.UdpPeer // indexed by server's public key - TokenStoreMutex sync.Mutex + tokenStoreMutex sync.Mutex tokenStore TokenStore device *core.Device diff --git a/common/nhpmsg.go b/common/nhpmsg.go index c7a2672a..dd1bbc4b 100644 --- a/common/nhpmsg.go +++ b/common/nhpmsg.go @@ -70,14 +70,15 @@ type PreAccessInfo struct { } type ServerKnockAckMsg struct { - ErrCode string `json:"errCode"` - ErrMsg string `json:"errMsg,omitempty"` - ResourceHost map[string]string `json:"resHost"` - OpenTime uint32 `json:"opnTime"` - AuthProviderToken string `json:"aspToken,omitempty"` // optional for ac backend validation - AgentAddr string `json:"agentAddr"` - PreAccessActions []*PreAccessInfo `json:"preActs,omitempty"` // optional for pre-access - RedirectUrl string `json:"redirectUrl,omitempty"` + ErrCode string `json:"errCode"` + ErrMsg string `json:"errMsg,omitempty"` + ResourceHost map[string]string `json:"resHost"` + OpenTime uint32 `json:"opnTime"` + AuthProviderToken string `json:"aspToken,omitempty"` // optional for ac backend validation + AgentAddr string `json:"agentAddr"` + ACTokens map[string]string `json:"acTokens"` + PreAccessActions map[string]*PreAccessInfo `json:"preActions,omitempty"` // optional for pre-access + RedirectUrl string `json:"redirectUrl,omitempty"` } type AgentListMsg struct { diff --git a/common/types.go b/common/types.go index 144cd4b7..a74f5b35 100644 --- a/common/types.go +++ b/common/types.go @@ -2,6 +2,14 @@ package common import "net/url" +// an object contains represent knocking user information +type AgentUser struct { + UserId string + DeviceId string + OrganizationId string + AuthServiceId string +} + // authsvcprovider and resource type LoginPageContext struct { Title string `json:"title,omitempty"` diff --git a/server/constants.go b/server/constants.go index f1eb6a5d..0b0b1e37 100644 --- a/server/constants.go +++ b/server/constants.go @@ -18,6 +18,7 @@ const ( // knock const ( - DefaultIpOpenTime = 120 // second, align with ipset default timeout - ACOpenCompensationTime = 5 // second + DefaultIpOpenTime = 120 // second, align with ipset default timeout + ACOpenCompensationTime = 5 // second + TokenStoreRefreshInterval = 10 // second ) diff --git a/server/httpserver.go b/server/httpserver.go index 3ca15ec2..9ff63f9a 100644 --- a/server/httpserver.go +++ b/server/httpserver.go @@ -253,6 +253,30 @@ func (hs *HttpServer) initRouter() { } hs.legacyAuthWithAspPlugin(ctx, req) }) + + /* + refreshGrp := g.Group("refresh") + refreshGrp.GET("/:token", func(ctx *gin.Context) { + var err error + token := ctx.Param("token") + log.Info("get refresh request. aspId: %s, query: %v", token, ctx.Request.URL.RawQuery) + + if len(token) == 0 { + err = common.ErrUrlPathInvalid + log.Error("path error: %v", err) + ctx.String(http.StatusOK, "{\"errMsg\": \"path error: %v\"}", err) + return + } + + req := &common.HttpRefreshRequest{ + Token: token, + SrcIp: ctx.Query("srcip"), + } + + hs.handleRefreshResource() + }) + */ + } // corsMiddleware is a middleware function that adds CORS headers to the HTTP response. @@ -316,13 +340,13 @@ func (hs *HttpServer) handleHttpOpenResource(req *common.HttpKnockRequest, res * srcAddr := &common.NetAddress{Ip: srcIp} acDstIpMap := make(map[string][]*common.NetAddress) - for _, info := range res.Resources { - addrs, exist := acDstIpMap[info.ACId] + for resName, info := range res.Resources { + addrs, exist := acDstIpMap[resName] if exist { addrs = append(addrs, info.Addr) - acDstIpMap[info.ACId] = addrs + acDstIpMap[resName] = addrs } else { - acDstIpMap[info.ACId] = []*common.NetAddress{info.Addr} + acDstIpMap[resName] = []*common.NetAddress{info.Addr} } } @@ -330,8 +354,11 @@ func (hs *HttpServer) handleHttpOpenResource(req *common.HttpKnockRequest, res * var acWg sync.WaitGroup var artMsgsMutex sync.Mutex artMsgs := make(map[string]*common.ACOpsResultMsg) + ackMsg.ACTokens = make(map[string]string) + ackMsg.PreAccessActions = make(map[string]*common.PreAccessInfo) - for acId, addrs := range acDstIpMap { + for resName, addrs := range acDstIpMap { + acId := res.Resources[resName].ACId s.acConnectionMapMutex.Lock() acConn, found := s.acConnectionMap[acId] s.acConnectionMapMutex.Unlock() @@ -344,14 +371,16 @@ func (hs *HttpServer) handleHttpOpenResource(req *common.HttpKnockRequest, res * } acWg.Add(1) - go func(acip string, dstAddrs []*common.NetAddress) { + go func(name string, dstAddrs []*common.NetAddress) { defer acWg.Done() artMsg, _ := s.processACOperation(knkMsg, acConn, srcAddr, dstAddrs, res.OpenTime) artMsgsMutex.Lock() - artMsgs[acip] = artMsg + artMsgs[name] = artMsg + ackMsg.ACTokens[name] = artMsg.ACToken + ackMsg.PreAccessActions[name] = artMsg.PreAccessAction artMsgsMutex.Unlock() - }(acId, addrs) + }(resName, addrs) } acWg.Wait() @@ -359,7 +388,7 @@ func (hs *HttpServer) handleHttpOpenResource(req *common.HttpKnockRequest, res * for _, artMsg := range artMsgs { if artMsg.ErrCode != common.ErrSuccess.ErrorCode() { errCount++ - break + continue } } @@ -393,3 +422,8 @@ func (hs *HttpServer) NewHttpServerHelper() *plugins.HttpServerPluginHelper { func (hs *HttpServer) FindPluginHandler(aspId string) plugins.PluginHandler { return hs.udpServer.FindPluginHandler(aspId) } + +func (hs *HttpServer) handleRefreshResource(token string) (err error) { + // to do + return nil +} diff --git a/server/plugins/example/main.go b/server/plugins/example/main.go index e6431ffc..8fba9fbc 100644 --- a/server/plugins/example/main.go +++ b/server/plugins/example/main.go @@ -244,14 +244,31 @@ func authRegular(ctx *gin.Context, req *common.HttpKnockRequest, res *common.Res log.Error("RedirectUrl is not provided.") } else { ackMsg.RedirectUrl = res.RedirectUrl - ctx.SetCookie( - "nhp-token", // Name - "example-nhp-token-GUBdoVXpxt", // Value - -1, // MaxAge - "/", // Path - res.CookieDomain, // Domain - true, // Secure - true) // HttpOnly + } + + // set cookies + singleHost := len(ackMsg.ACTokens) == 1 + for resName, token := range ackMsg.ACTokens { + if singleHost { + ctx.SetCookie( + "nhp-token", // Name + token, // Value + -1, // MaxAge + "/", // Path + res.CookieDomain, // Domain + true, // Secure + true) // HttpOnly + } else { + domain := strings.Split(ackMsg.ResourceHost[resName], ":")[0] + ctx.SetCookie( + "nhp-token"+"/"+resName, // Name + token, // Value + -1, // MaxAge + "/", // Path + domain, // Domain + true, // Secure + true) // HttpOnly + } log.Info("ctx.SetCookie.") } } diff --git a/server/udpserver.go b/server/udpserver.go index e322a352..ccb5e1f3 100644 --- a/server/udpserver.go +++ b/server/udpserver.go @@ -55,6 +55,9 @@ type UdpServer struct { acPeerMapMutex sync.Mutex acPeerMap map[string]*core.UdpPeer // indexed by peer's public key base64 string + tokenStoreMutex sync.Mutex + tokenStore TokenStore + // block address management blockAddrMapMutex sync.Mutex blockAddrMap map[string]*BlockAddr // indexed by remote UDP address, need lock for dynamic change @@ -189,6 +192,7 @@ func (s *UdpServer) Start(dirPath string, logLevel int) (err error) { s.remoteConnectionMap = make(map[string]*UdpConn) s.acConnectionMap = make(map[string]*ACConn) + s.tokenStore = make(TokenStore) s.blockAddrMap = make(map[string]*BlockAddr) s.signals.stop = make(chan struct{}) @@ -199,7 +203,8 @@ func (s *UdpServer) Start(dirPath string, logLevel int) (err error) { s.device.Start() // start server routines - s.wg.Add(4) + s.wg.Add(5) + go s.tokenStoreRefreshRoutine() go s.BlockAddrRefreshRoutine() go s.recvPacketRoutine() go s.sendMessageRoutine() @@ -855,13 +860,13 @@ func (s *UdpServer) handleNhpOpenResource(req *common.NhpAuthRequest, res *commo ackMsg = req.Ack acDstIpMap := make(map[string][]*common.NetAddress) - for _, info := range res.Resources { - addrs, exist := acDstIpMap[info.ACId] + for resName, info := range res.Resources { + addrs, exist := acDstIpMap[resName] if exist { addrs = append(addrs, info.Addr) - acDstIpMap[info.ACId] = addrs + acDstIpMap[resName] = addrs } else { - acDstIpMap[info.ACId] = []*common.NetAddress{info.Addr} + acDstIpMap[resName] = []*common.NetAddress{info.Addr} } } @@ -869,8 +874,11 @@ func (s *UdpServer) handleNhpOpenResource(req *common.NhpAuthRequest, res *commo var acWg sync.WaitGroup var artMsgsMutex sync.Mutex artMsgs := make(map[string]*common.ACOpsResultMsg) + ackMsg.ACTokens = make(map[string]string) + ackMsg.PreAccessActions = make(map[string]*common.PreAccessInfo) - for acId, dstAddrs := range acDstIpMap { + for resName, dstAddrs := range acDstIpMap { + acId := res.Resources[resName].ACId s.acConnectionMapMutex.Lock() acConn, found := s.acConnectionMap[acId] s.acConnectionMapMutex.Unlock() @@ -883,7 +891,7 @@ func (s *UdpServer) handleNhpOpenResource(req *common.NhpAuthRequest, res *commo } acWg.Add(1) - go func(id string, addrs []*common.NetAddress) { + go func(name string, addrs []*common.NetAddress) { defer acWg.Done() openTime := res.OpenTime @@ -892,9 +900,11 @@ func (s *UdpServer) handleNhpOpenResource(req *common.NhpAuthRequest, res *commo } artMsg, _ := s.processACOperation(knkMsg, acConn, srcAddr, addrs, openTime) artMsgsMutex.Lock() - artMsgs[id] = artMsg + artMsgs[name] = artMsg + ackMsg.ACTokens[name] = artMsg.ACToken + ackMsg.PreAccessActions[name] = artMsg.PreAccessAction artMsgsMutex.Unlock() - }(acId, dstAddrs) + }(resName, dstAddrs) } acWg.Wait() @@ -914,13 +924,6 @@ func (s *UdpServer) handleNhpOpenResource(req *common.NhpAuthRequest, res *commo return } - ackMsg.PreAccessActions = make([]*common.PreAccessInfo, 0, len(artMsgs)) - for _, artMsg := range artMsgs { - if artMsg.PreAccessAction != nil { - ackMsg.PreAccessActions = append(ackMsg.PreAccessActions, artMsg.PreAccessAction) - } - } - ackMsg.ErrCode = common.ErrSuccess.ErrorCode() ackMsg.ErrMsg = common.ErrSuccess.Error() return ackMsg, nil From 6b50c4e4198e96ef08101647b8374b8c48fc649c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Sep 2024 15:54:32 +0000 Subject: [PATCH 19/41] Bump webrick in /docs in the bundler group across 1 directory Bumps the bundler group with 1 update in the /docs directory: [webrick](https://github.com/ruby/webrick). Updates `webrick` from 1.8.1 to 1.8.2 - [Release notes](https://github.com/ruby/webrick/releases) - [Commits](https://github.com/ruby/webrick/compare/v1.8.1...v1.8.2) --- updated-dependencies: - dependency-name: webrick dependency-type: indirect dependency-group: bundler ... Signed-off-by: dependabot[bot] --- docs/Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock index f7ac156f..47f5f7ec 100644 --- a/docs/Gemfile.lock +++ b/docs/Gemfile.lock @@ -80,7 +80,7 @@ GEM terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) unicode-display_width (2.5.0) - webrick (1.8.1) + webrick (1.8.2) PLATFORMS arm64-darwin From cc78349c17685193c05249a2f4d966e8316ee6c0 Mon Sep 17 00:00:00 2001 From: zengl Date: Mon, 30 Sep 2024 23:59:53 +0800 Subject: [PATCH 20/41] add missing file --- server/tokenstore.go | 97 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 server/tokenstore.go diff --git a/server/tokenstore.go b/server/tokenstore.go new file mode 100644 index 00000000..9320945a --- /dev/null +++ b/server/tokenstore.go @@ -0,0 +1,97 @@ +package server + +import ( + "encoding/base64" + "encoding/binary" + "time" + + "github.com/emmansun/gmsm/sm3" + + "github.com/OpenNHP/opennhp/common" + "github.com/OpenNHP/opennhp/log" +) + +type ACTokenEntry struct { + User *common.AgentUser + ResourceId string + ACTokens map[string]string + OpenTime int + ExpireTime time.Time +} + +type TokenToACMap = map[string]*ACTokenEntry // server access token mapped into mutiple AC tokens +type TokenStore = map[string]TokenToACMap // upper layer of tokens, indexed by first two characters + +func (s *UdpServer) GenerateAccessToken(entry *ACTokenEntry) string { + var tsBytes [8]byte + currTime := time.Now().UnixNano() + + hash := sm3.New() + binary.BigEndian.PutUint64(tsBytes[:], uint64(currTime)) + au := entry.User + hash.Write([]byte(s.config.Hostname + au.UserId + au.DeviceId + au.OrganizationId + au.AuthServiceId)) + hash.Write(tsBytes[:]) + token := base64.StdEncoding.EncodeToString(hash.Sum(nil)) + hash.Reset() + + s.tokenStoreMutex.Lock() + defer s.tokenStoreMutex.Unlock() + + entry.ExpireTime = time.Now().Add(time.Duration(entry.OpenTime) * time.Second) + tokenMap, found := s.tokenStore[token[0:1]] + if found { + tokenMap[token] = entry + } else { + tokenMap := make(TokenToACMap) + tokenMap[token] = entry + s.tokenStore[token[0:1]] = tokenMap + } + + return token +} + +func (s *UdpServer) VerifyAccessToken(token string) *ACTokenEntry { + s.tokenStoreMutex.Lock() + defer s.tokenStoreMutex.Unlock() + + tokenMap, found := s.tokenStore[token[0:1]] + if found { + entry, found := tokenMap[token] + if found { + return entry + } + } + + return nil +} + +func (s *UdpServer) tokenStoreRefreshRoutine() { + defer s.wg.Done() + defer log.Info("tokenStoreRefreshRoutine stopped") + + log.Info("tokenStoreRefreshRoutine started") + + for { + select { + case <-s.signals.stop: + return + + case <-time.After(TokenStoreRefreshInterval * time.Second): + s.tokenStoreMutex.Lock() + defer s.tokenStoreMutex.Unlock() + + now := time.Now() + for head, tokenMap := range s.tokenStore { + for token, entry := range tokenMap { + if now.After(entry.ExpireTime) { + log.Info("[TokenStore] token %s expired, remove", token) + delete(tokenMap, token) + } + } + if len(tokenMap) == 0 { + delete(s.tokenStore, head) + } + } + } + } +} From 9b1e55cef96a97a8b4e18fe543fd9a68160687ff Mon Sep 17 00:00:00 2001 From: windcbf Date: Mon, 30 Sep 2024 09:02:10 -0700 Subject: [PATCH 21/41] Create SECURITY.md --- SECURITY.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 SECURITY.md diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 00000000..2c9c5218 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,12 @@ +# Security Policy + +## Reporting Security Issues + +The OpenNHP team and community take security bugs in OpenNHP seriously. We appreciate your efforts to responsibly disclose your findings, and will make every effort to acknowledge your contributions. + +To report a security issue, please use the GitHub Security Advisory ["Report a Vulnerability"](https://github.com/opennhp/opennhp/security/advisories/new) tab. + +The OpenNHP team will send a response indicating the next steps in handling your report. After the initial reply to your report, the security team will keep you informed of the progress towards a fix and full announcement, and may ask for additional information or guidance. + +Report security bugs in third-party modules to the person or team maintaining the module. + From d5bf7be7b4603512b3a0d90736d6ef4e2ccab405 Mon Sep 17 00:00:00 2001 From: windcbf Date: Mon, 30 Sep 2024 12:45:36 -0700 Subject: [PATCH 22/41] Create CODE_OF_CONDUCT.md --- CODE_OF_CONDUCT.md | 128 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 CODE_OF_CONDUCT.md diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 00000000..afbe7e53 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,128 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, religion, or sexual identity +and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the + overall community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or + advances of any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email + address, without their explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders responsible for enforcement at +opennhp@gmail.com. +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series +of actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or +permanent ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within +the community. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], +version 2.0, available at +https://www.contributor-covenant.org/version/2/0/code_of_conduct.html. + +Community Impact Guidelines were inspired by [Mozilla's code of conduct +enforcement ladder](https://github.com/mozilla/diversity). + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see the FAQ at +https://www.contributor-covenant.org/faq. Translations are available at +https://www.contributor-covenant.org/translations. From c87ff1592d1be07c5c3033b26ec729c53a8e4fdd Mon Sep 17 00:00:00 2001 From: WinGeek Date: Tue, 1 Oct 2024 04:11:39 +0800 Subject: [PATCH 23/41] Update diagram in README --- docs/images/TrustworthyCyberspace.png | Bin 79112 -> 86949 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/images/TrustworthyCyberspace.png b/docs/images/TrustworthyCyberspace.png index 262cd6dcacdb28ac0e6b69e1bdaad91c177fe563..5fbcf3116573d1ebf002db46df4b7551e0563175 100644 GIT binary patch literal 86949 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 literal 79112 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 RHK(>gF0%iTYwC6Re*yS&DmVZD From 03253ad7e390e5bdbd2e39b0aecb0f9f270bf600 Mon Sep 17 00:00:00 2001 From: windcbf Date: Sun, 6 Oct 2024 23:15:35 -0700 Subject: [PATCH 24/41] README.md formatting --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index d41833c9..3a3921db 100644 --- a/README.md +++ b/README.md @@ -106,7 +106,7 @@ Cryptography is at the heart of OpenNHP, providing robust security, excellent pe - **[Elliptic Curve Cryptography (ECC)](https://en.wikipedia.org/wiki/Elliptic-curve_cryptography):** Used for efficient public key cryptography. -Compared to RSA, ECC offers superior efficiency with stronger encryption at shorter key lengths, improving both network transmission and computational performance. The table below highlights the differences in security strength, key lengths, and the key length ratio between RSA and ECC, along with their respective validity periods. +> Compared to RSA, ECC offers superior efficiency with stronger encryption at shorter key lengths, improving both network transmission and computational performance. The table below highlights the differences in security strength, key lengths, and the key length ratio between RSA and ECC, along with their respective validity periods. | Security Strength (bits) | DSA/RSA Key Length (bits) | ECC Key Length (bits) | Ratio: ECC vs. DSA/RSA | Validity | |:------------------------:|:-------------------------:|:---------------------:|:----------------------:|:--------:| @@ -118,15 +118,15 @@ Compared to RSA, ECC offers superior efficiency with stronger encryption at shor - **[Noise Protocol Framework](https://noiseprotocol.org/):** Enables secure key exchange, message encryption/decryption, and mutual authentication. -The Noise Protocol is built around the [Diffie-Hellman key agreement](https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange) and provides modern cryptographic solutions like mutual and optional authentication, identity hiding, forward secrecy, and zero round-trip encryption. Proven for its security and performance, it is already used by popular applications like [WhatsApp](https://www.whatsapp.com/security/WhatsApp-Security-Whitepaper.pdf), [Slack](https://github.com/slackhq/nebula) and [WireGuard](https://www.wireguard.com/). +> The Noise Protocol is built around the [Diffie-Hellman key agreement](https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange) and provides modern cryptographic solutions like mutual and optional authentication, identity hiding, forward secrecy, and zero round-trip encryption. Proven for its security and performance, it is already used by popular applications like [WhatsApp](https://www.whatsapp.com/security/WhatsApp-Security-Whitepaper.pdf), [Slack](https://github.com/slackhq/nebula) and [WireGuard](https://www.wireguard.com/). - **[Identity-Based Cryptography (IBC)](https://en.wikipedia.org/wiki/Identity-based_cryptography):** Simplifies key distribution at scale. -Efficient key distribution is essential for implementing Zero Trust. OpenNHP supports both PKI and IBC. While PKI has been widely used for decades, it depends on centralized Certificate Authorities (CA) for identity verification and key management, which can be time-consuming and costly. In contrast, IBC allows for a decentralized and self-governing approach to identity verification and key management, making it more cost-effective for OpenNHP's Zero Trust environment, where billions of devices or servers may need protection and onboarding in real-time. +> Efficient key distribution is essential for implementing Zero Trust. OpenNHP supports both PKI and IBC. While PKI has been widely used for decades, it depends on centralized Certificate Authorities (CA) for identity verification and key management, which can be time-consuming and costly. In contrast, IBC allows for a decentralized and self-governing approach to identity verification and key management, making it more cost-effective for OpenNHP's Zero Trust environment, where billions of devices or servers may need protection and onboarding in real-time. - **[Certificateless Public Key Cryptography (CL-PKC)](https://en.wikipedia.org/wiki/Certificateless_cryptography):** Recommended IBC algorithm -CL-PKC is a scheme that enhances security by avoiding key escrow and addressing the limitations of Identity-Based Cryptography (IBC). In most IBC systems, a user's private key is generated by a Key Generation Center (KGC), which introduces significant risks. A compromised KGC can lead to the exposure of all users' private keys, requiring full trust in the KGC. CL-PKC mitigates this issue by splitting the key generation process, so the KGC only has knowledge of a partial private key. As a result, CL-PKC combines the strengths of both PKI and IBC, offering stronger security without the drawbacks of centralized key management. +> CL-PKC is a scheme that enhances security by avoiding key escrow and addressing the limitations of Identity-Based Cryptography (IBC). In most IBC systems, a user's private key is generated by a Key Generation Center (KGC), which introduces significant risks. A compromised KGC can lead to the exposure of all users' private keys, requiring full trust in the KGC. CL-PKC mitigates this issue by splitting the key generation process, so the KGC only has knowledge of a partial private key. As a result, CL-PKC combines the strengths of both PKI and IBC, offering stronger security without the drawbacks of centralized key management. ## Key Features From 2940df27823f83ccff1bd39200ca672954e22300 Mon Sep 17 00:00:00 2001 From: WinGeek Date: Tue, 8 Oct 2024 21:54:06 -0700 Subject: [PATCH 25/41] Update diagram in README --- docs/images/TrustworthyCyberspace.png | Bin 86949 -> 122781 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/images/TrustworthyCyberspace.png b/docs/images/TrustworthyCyberspace.png index 5fbcf3116573d1ebf002db46df4b7551e0563175..f1767d18c99107cd4bea2ebf7d78e9f085891315 100644 GIT binary patch literal 122781 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 From 71af0b616cc9cd239a5851a68b0c46df6834e393 Mon Sep 17 00:00:00 2001 From: WinGeek Date: Tue, 8 Oct 2024 22:00:57 -0700 Subject: [PATCH 26/41] Update Diagram in README --- docs/images/TrustworthyCyberspace.png | Bin 122781 -> 124878 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/images/TrustworthyCyberspace.png b/docs/images/TrustworthyCyberspace.png index f1767d18c99107cd4bea2ebf7d78e9f085891315..790f917ec319711dc5e9e6c6366ca016a6a9ec87 100644 GIT binary patch literal 124878 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 z z9|>P;qLV3Cncs$KFHMxS<|G@itms*VWp+m<<=J%{`&8HYQ8~d3h#3ZGRR)zEw4Cl} zDtei`wTGd?63LOOE$bTuxR$1>Jt*~dPOBUP+N3ZnP{AiNlRCNAaYB5&#>WE6)9SN zI(vFN>g3s1r!$HJB!c3~0Pydo!OCNAB$16*ou<~P9~pLs ziHocU0s^HcyeDGazjO9~Sc53o_<*sKN~}Pd6?<8Ld8YSUDTV zBEwi+OVs$|Qd`;2isDr^C{F!#M3V%v5g z6xhFn`E7GBM>`Lay2NAeD59HJ8ZV6XWz$aRD1~U+aB{_bD$3eoLL-ZiEiCu@SY}3i zQE{t`?9Vg#tuRwQ+nPYd6nG4rMnFXixeSSx3g zp~iZGq0eZq*FsL3Z38(1X(Mp?n3X+SEO!mYZo69FVjEH@*l_m%0D023>x*a=wje** zV34^NEh#IEcbDeI*O8sRG)PYi&1^OC+xNusDzK@I=@f#aQqy!y@5pv0J=XXOI z);c`q^Oyx31GcnjlDI(xkc8f7&le7N=T23VLyYXBCYoxu`LlB+H{gW8?^+NKcb(sK{FNepCGfMOrK;iN$iwwS_G!`B{+arY7?p( zrBx)Gm8+PM@oax`hHX!Ml9p#}6yK}$ZWb&pOecH~j&AJt9hok4i2#=US(;ZJz2V!s zW0AKca;04R%ZEqH4i#;yu-w}gFE}^KJp=^oZKqb0p3h>86mfF8fYLr zt-a)N?Ac764Xes9F{&)512^QOBx*Zocc`23*Mhd+ePED_&s^B=PxdstfKqaNUr85? z)Occ8UW4{3xcC_5o9RmSsjBmmauCKYoY*TZ4QDr4cNAGBR7l6qhbP0**%FL~VR`Lb z?R*}_y&ep=RU9Mbt6IJ8t8E)+uUD;%{`^vcM7QDdvp&80J!5c+v5aO}&83otX+g%Y zSsY4P_vuxudni?lRerm^SGQA4$Av%~M|kdoZG&LQZzn1i6UPjFgB#~w)M0B@bo>16 zVgd_cDgu6+vUp~pw?DcO+P}4V3++**WFG9?F+1sn${zVEp9mXM>$n)r7g-2+40Rs1 z;Vt4l-Web0(>m-O^ZnUEV%e%CjE4hHi?>puU{yBFf1DLfdF;nMc;rvkyC{0`Jx)hr zWQDGN%}&>V!N>CzDL8&{A7i;cxw6&iu#~+76<$vZ5c|W6oYmCK=!6_%4X3d z?bkCemicmqW;HtmX3i0oO}uw;IA~-`9CQYB)UJEb&6gaVB`|s<7aP6C==WBo*-`yi zyTU%ut9|~UX_cs62SlGm=fB0@so4(H4emIO)2^luvLBKpv~pUQ z+-a$!$8DNbi_^6a6hzU>L1nPW!=_s)AI-l&60ao=6Jvd-ul*nL+#EVy{4ESs>+{x* zUe*=m+c9Q!R-db9hvWxnWfc{)(f_JTE@~wUQDKMVRFzT>_oAR86iK+0#CfrLlrN?T zs%6!w6DueN8+GgA07Hndz)ZK2piQEoJ3OsDjS)aJ24D&8M00t z9I#t>?{Lp_dmb=9SK%%E@#*73p9ESF8d|hj8ez;dXpl-Uj1hnxoIr^xN`WgYxWk9> zBioEv$+%@z=pO(b&GQm5;$okkM)8sf;06FtDV;@&+z%{fDGQOW&fcu8R>jdrq(3EL z*g4^rMM&w_lnonsP`9zH#=XTgyIm}#gt%<}wLh7SHD2*CIXb==cSy-9J#G@}2wJk+ zs(zIX+^}g>lXtAJo3jC?-xpa=Bfehe7CD%a*hSf)zWF=ut!_*IK>nAVqU`Nb08C7I zrt>rQLpXfEYhnl*UPnz&I@|{QCB#h3D-#D04Men$m%$9Vl=5XB+u^2pwu z^FobDB)+6Pk&H#zMMR2h2A~W9e6OD`c`k`gb`Lue-lH9UFmc6`SOPodDx73+w&CJR z{KEGO8|qtL3NB?}0I-b6bx43YOx3Oc$o8aSQ5;I8dC=##@sKYaZ}5GXwv89>b6ctM z{Dp9CE>(?-Y{z5nd0wo$==i#{J{tb^S4!4T(n;%-TeqKfXN1peVeMVrjd-gWRnWTP zxS~Ff0oCL#-{7HQ%^ojV875^127^W?mZ(i|nNYKI(@KVF@d3g(c%p8hLt-(UPV}8) zL=lC~+7s@oY`G6~$Z=Y_$nnCY(-rp6pT=C!pkY)|2(@1I;DI6(XiH?}>)Dat8Wt!TChl2fIsGTb9@uv*o2C$B;Vw77eqDrqVd{ z!)8U$;5JXqF82JZF*}l_FL|^UI*(pGAaqBh+Iwn<_|ge^X*jPZgSM;&zz`k)S{i)U2Mk%h6Hl=eDP`l z?V6!f{{VBn$B&)fu)D4ZG4;lhizAwyXBWm3VEtj|$R&cmP+d*BUgWQ@o=<#o0n~37 z^?f4(LiVSl@CF5dEo0u1(@ESC0cM0T+H?S{abV`OhqYOJN?&Qcso&Y5FAAUZR3`cvI}!}|DOREE}y z-sRYE+W?Py8vi-w*m10i_3+STCXm`PJry%yDBNS5s!8p~Rqifs<|fYA7@WM?9<*bA zx!^ByHlAB(Wsr*R@ua^-Zzt{Z(|smpXQhJ6DG@VJq&!)HeX+RyK#ps@DCTIFpOw2{ ze6cxZNgnIh<@+}*>saG|rTkv8ENaI&fRDslg?-+iRm03<@_~w*Ppiz-LRdMt#N7V? zSbvPMyBy^OK|`SZ+AD50Q&Tg2wp&?smY$lesg=ce3thuWppkcQw6_2+9V}hz{@!tC5$jV?w!;-i8aOepfNv)BMIfw-gr&D5wnayi|4wV$xW8M!RS=hBVDMc zQ>TzN*CsB(k(Duk;8}CQS{OOkL-2y89zHE$UBwWGw&b8?lE-O>66Cb=8NP<0q#8;h zQ&MAOvL>~RRVgQ&HQEgqQ56-H@JW*}T%#l>oNj^~LVWO}uu33`!|j{>0F1DBnBf8- z5e!h1zpDEb1jIS0EcvVo4;v{s-z8xJH~amV&1JjetfGw6%0_vUQ#ErWn0FL8up!?y zlscUp01D}n?}9;Ac2C3We3*>kBJC0Wmk!p|lSYV!2fuJYlHt^@jvB-Dl%*sBbu`0k zkq49qmE555i1wroBo&`d&>F=3Ltu5!8s;AH;bgyKCbUS?46jR%k9WEayM28>RbdD` zC|{4IlGdy^XuQ_pw3bRONrgq8WWeEoz@(g(6zd(mHE}I;kWrZo;%Ye4=z18dv{iIy zZT83MPl}qFy7bR{E0KOmAtWMwwgjStH_{GDrkt9ep49O@!WMh3(YCd+qqzd25PY zjXky%A58TZ^?3GD9+B!xRI~8QQ-`WAohT_>Rk}{{E-4k@*3WY9y7Jud98Y{~`UaHI zlo1*EU^k)8kzgwu1Bv@l0_t0qshchg7BT6JKBqxp!GAKLbKB!u2`749ONjmlpk}}1 ze!&>LzxsxC=Pys`qnQG!zo1vWXncIwM0pQx{QGv8N|$_E7v~XOGD}z^LBK7^Ubi!K ziVL5Elq^%JJ9J7YQe6^*ToZ{(2X77!>&W`2^}&O?@mphhkf_^7E`P;St#NvMYg-jK zn;E5vJ8F2N;yzuR7Ds{td{4D|LXCclK2dZkTC8RDt0=Tmn_G6r`TJnxBP_Nlf6W~w zXRBF@qEJWT8jk~ivB4)3&8#F>uGHq=KT9CgT%Lu$J2wj|ng&dWX{T6vIW1<NzxIVhy@W^S{{bkGlYX5Cw$8`JC5Fc*Mnqd}@llh7@pN@P#AIOCnU}6t z%%^cp;*^wa)>@>BVonjOQH!MuLJPi`v&PQ^Z9Du2run~0Y1vhRJ2F1XSJM6gf)2a> z0kQ+%a|EAcHO{naNytud;B{WHtb+A^j?ak8k!m9ra%xR|qEv}I9#LgakK=ZUNpo8s zvgLJXkuS@M*uuCd53cqs`v=(WZV)~+4z^0zLea`h@!vMl%%j!V(7P`=V}V97S_69d z(VbRd9Mk*9RXT|X1p!+^i9>kX15r5#*VLoNUCmP4<5o^4F;810xmQlF7G)?Ce#v5c z=bN%N(SHQNp!xxI&vaS>nGWU@%jL07G`b0s`K398CEH3Jj}j&5uiMau7QbMH(M07W zi}234*$*Y&Yx+~z?zN2fFJtmGM8;5Fz%Vsgu=ee)u&$?(PAyELVqhV!*m8Zz;D}$5 zb>=T!;WcnlBoOMg*l=)Ew2=6ahOcN(%%Y`Mkm#ou!{_ykIVL4G;j?BA^o4DO>r<{Gg(=Rm#J$42IC1YeS)mE5Z zY-4-?Lvy`N{t*CNnr5gj{7r$a1=Vb^tvh>06}3j%KK3#lJP{`BHmxh*AE1YCj0GaZ zi#|$wJiZxzEqbWDZIS=T;%X3znyCk&l@5)FVtUDFo%B|8RMXZXeTA4`(Q)o zE0Bj}?Nm`_ILkT2pT#g(o1Z-HNduT`dy%77zjO}o?KOUHdwLfV?qw6cj<`Fz+)7h9 zfBy$?FL{NyQ&*7x0gUfo?Mh$od`;hf`>Q{%Q9(g_U1{VB?vL%FF z4J9l`gg*s$*RwC4916e49;=X4&I})us3Nxn;*`&t6MBr*o)51+d-e;Ie~>cL0^rUO zJJ;?AmgHtBAc=9n_@qaZv@7YT^&;g9{CE6WDVXExC z+_SKoLT^cMUm@6djzM^BF$6j46=$Ag!kxp6c8_;~4)&(DS^gxYTqJ z^)0*^n2Ra?TM!0D5PETu)Oi?0yXpyhwv?M$jgFYyM(}k&1l1319b6~!{$ho)>nB7* zP7=)o3EXvLuDClh07M^PoSpa(_rOf5YuzLZYpUfZC6PS>{kooavO6EdJJ|J2Y4CHB zsbwv5g%zoo*?{9yu3~)fLoSh6vTKMpzb;R?(dc7F2T*=xzm9Zj&$m62cqn2RiE@WD zNNzKVNuZ-?t{>TH<3nf5T92dnq^A3reb4K6F(=$agLI3WkjHwPr;qNwTiNLZQYq4h zSWivpUocQYKc(2D`9w$75DJCtcoJu@lBi?4bulylt3$}_ebQIuUa?(B}smYV{a;MaL$zleFsfrrm zV~zMFL}kQi7RWlxR>{TGP11b#(mVS!HQ^=nid48HAQybqr~D6)G7+%7%>n=ayu_2m zum8WV{dmN_$`hNuBNqhzTd%y=xmqWzR))9_XViK5nSnb~EB%@g3Wv;{nT6?mXczLo zQ@XKq&%P_xYA#bou-vJm?0*uTAUcF>8#e6O$PXaW;;v@x3_b{So^(=5;o-Ebl%sU{ z$y5a2Z+c2rZbz|v7gqHI&VruP9Cl_DY z4Y2j-%p1w^Jr1;K9~xP_B}+Xosx66TfL;7HxG>rVe>wDOzS8={2AZ~1qT1u&r^H%< z(6Kh!vI}Np@~!7q)F}#}_lf&I2IuZyUj6}?*u{Vxt<#jZ{IZM<3$hdiYnw?9Gr?-g z&mqSE0Kosgdg+XVZwlY=8$KAQ)KKn+e-X%&iNAERoM74r!&(KPbgcputU*4bldAiU zdL(mFld>c$kxpJ+lQNT9O`j55B2QTigPc=MFR`q!&x)*`TtPNr0u6T?pOu9I$<}-g zyMh0ZAPE)zAsF_++Z!B85@UaPh6*V_nLq7QE7X2>|A&yg>y=vQGN-GqtnLNf{61Q-Au>&(2{yF_ISe zGflEnbwtl12-@?`pJ&YPh8r#JbHl>{GJ=;z1bu<|)Rnf=>m@bCs~@(tB+(m%Ni;Eo zo@7L+f|ceQQH|LD0Qf>t>UYyQ8V7G?v5Pxzr}An!o~3`Q%l4Z*xrV~gs=nwIjNuS` z^Z2?)=+sN!UYb~ri^J9cnP+Ze|A$~R+%dm7Vy+~clh@@%2Vk7#7Qb87vzpUdiAq=i z3sK^~1cwLY?{gz`P@!0DaoCGk9E4AQQGO}#(|0gH44>(jQ?y&!ZLSP8vT`eAtQLY2 zI^`)Cu|l_|!{pqV$glNW;Fpfrcpua`&nh6h6;Hyym2=CCW2IuJkgLLQm?uBlcSwd* zciN-q#uS=e$g5YVDB$x2G8p&5B`02fmT|!GRu!2S^ra|(N#s4B_-+xd-O9ckJCRQ* z+*>bTv8o|0wCL;09CH=qk|gPsJJrjV7iJi&*x%l~di-=au#sl}$mS-*T~#{eW#DFr z1oUejoOpUah)Y=O^h$@bL}@Z2WCR%Nhs&1Ou_3Ku(kS#Ij=YSc(? z@X%B#UJDmf@!nO`*!{XABUV`{MS zOu1xG`Vo@(UwllNSLF4FV^HLB^Pf}j^ z(zXaRi18&zmRt5W;Upy_IHfg4viTLge&t|w?1-N?QjxTF_R~d7S^l1avy1;(&5GhQr5t5zHdYW1T*wAP|&}uxx?olt8N%80NnVg{5 zLCgHA)&><5`_w(g=dw=HJrv%QteJAUOknZT@%9#l8poB&;iw)6G;1RgRsKDD6`l9tdB+ z!QucT&6f1JmhMwWdW)VLva*+!cg;#*WJGMeXaOj`Mxmhv=$X4(i`YsR)v|D>F^k5A zt+Bykmx@8}tAP#tk+Pta5fiD$cU@PmNnu;stR0xN$&gL0Y|(vfPcc^Hgip?=~)VW@A=5 z3S241haiYPDG?V`5v(nel8QQ}My$9m(S`^iG|2;wu%60Cho#(lM_yCm_L(-E_BA5f zE{~W{8fw}0-gz$Jq+K7r@M0&XSk!#n<+;mzm4g}0@g!G z;B-Vk{Z(9COyx~Hy??nKy3}*Yq&13f8||kk7$1J`XS5@95`q~wXiFXj|IEq{C*#jn zaqp7>2PGwJ#m)y)Tnt@dHI zEoLQlQh`#VdWK#$_N>h10g_U%RfpyQ5FKoWH6n{9#kz1ZwAZnR0w*Bj2?28)GLEOS zV14K69JvK$P4sFGZ;`66dP$cid)+fRrJCKWMV|{|C~|}Q%W?Sv)U7sO6^I|(WbB>;1Irm6<7`)KKt}cy(^Vne+3=5Le$PNR zzK-wUDTN<@O?J`xnjO{Si3$9+6@0t4NgUdW zGPK*e6)nL>Ha@BNh}SwP{}3*#_D^z)BS+F7ck>~x^Pw86H=T^Tiq+~{_B?qQAmTr7 zx56K?lB@q_7$$93v@Gk%nA1S+%X1XdTBN%*Aty<`5uXz-{w-+MH5KVsy1D)I-XmrW zzPqSxKY>pWD6mle7YvcpMa!vXWh!vJ?0BkKjw-d@xDs}jEY>vP5CK(aH{!L=-nk8S;!lm-qz^6B3+@?E#B>xaAM& zStg}sptok3?;Q^L%5;!m=C6kwWIE-jibwN)OwWe~XRe-_SZ;3yZP3b^j5)jNr+QTk z+%dyewY~p3_*x0HpMF#ISM+EAPa7LxxT&N4a<~JZKX%al6!}>+CC!HcACgp+WFk~V zD%1`4z#MiJNeoh*dTcS$G zvV1h7-2)3qx^;7L8rGY<>33?SnN;FTyyyl}bzzih6!7S1AGlb#osrc#9enYy5#?IK z**oj?L*pv7_^(Fst>ZoU?iam$Jl$K$kz7_i0%a8(#)5~pPHcJ|F48#CKNCmDmi~Ue zw(i+*^rE9exlC@)frPS@f@NoVW%~paavw61^;WyTU}ejmf7Z(Tq`dlBmk|5aLoDq2 z@rhU5te}DQQdx}@KsiC`h9zzI+-4(|R0uJ++`R^w}aL3iZMM*x!^uI~J5A^8Dx_J|u$iIJu9-LrzlhEL+ zDyxaESv{r9iE?TxvCPfehsMK--?T=WsSzX32@O3Xr=g9Nr&Xo{9?X?GHj~(^1?Q1{ z7z0sm@V?q|Dn6D&$RIn_e*p8ufwc^5$S25;D_2fzy`cOL^8e)K`zn+(}l*2 zu_jD#2q*W+4^S59J&`=Nfo~>jqRiL9QQRyuj_p@k3EnD3(<+PlGyw`_&v6p>4^`=l ze;*#dZC05v(}r#CwYLG`>&y{UG;f@oF7}rc4&YZ$K8u`Wl69=113KPQ;jF=`k0f4} zfWW9pQse<;U8wm}Ol%JIBL265Tau*xnuC}pBEXj?BE)5E_H$>K?5cE2Ud~B8r*N2` zYN~r7n6ukHz&J`|=^ge~}o<@hJBdn+mGf{gk;7EL>2KMNT?pj}ITdVCo$ zR_Fi{?CR1@D2BCqF2jZNtxy&uuh-pWo@W;1{R!|OZs={qgA#a3qY=+zEYa90vhXNNd?Y{aZzn~iUxkBE)7i^vkumMRjLzT0+OJ1CO}Vg2z#yAVOc7xrtpcL+ zDFD%4q`Yprzr8x9YHbq?TfC7DhC9;pRYkkbYr`rKms0}3^^y$}U`Av->Ebv3N1Kt+ zUe#8P;0TXqnb6?)o%F+lHF$NaVRR9I+PXNggNW@a@cQJZ1mOXihJO;YwZxX6r zm;jWe_g3h$0hqs~>R9Aw4fHm0MI`_YjiePU_J(AfM%s#<4fBi%vpXW(8mO>iUYeb= zznq7E7CxbqBNYJvoKXpuxElZ=5%?BKn4i$c#Ky`MF8C|YXl?gEXlw0tS@w|CrJVX3 zq_U}R`qS;voxfO`#yT>bCimkgDU&V9A)zynF{(x>wwj>NEk&mLwL`skV&u8C6?*>0 zOxgVTK}lmQg%*}lQVr@emIkV{Nn*$=1n-?-v-;m*-~a2~oUr${#(So=!q-R6@we%# z^XEF7{#MRX2xVs{imL6cnk#vhDdeh<+Wa*|O5GJ9cVA6Tg4bty)`W%JGr9{?A;tYf z`C(yjsb?YhY6C=a%RJb6*xJBR@N=Do0NpDB)gP)ooiZ?W6nO$u&r*jbNyBXCO&@cS zbzcbAEo1m_BD#lxo%R4mi~cK=Q;ui{fu6ce>P)Vmd(eF8ooic%d9F@<)8kHpI6J3B z-2*(r_!z~r@+$aITEo-ZbW70Yo}27F-~WtKr&bnuGRyc}o&rl#pV`trR98B^$V+I? zmB_uR#$PYRVAaD{!txCJ$G(NRVVTK8jPLN&q2P^(kX4IogQymp!t$q@J zp2IQ$wZkCbZrjv}*e9=qV2GWC(eFcdYGSK)S2G^+yN$G}v#&RSaXRh>M&$0`?5v!;H*ChESWB>JSQM=_$=~R+Tot zgc^<1Pxxf8Q9wBR%x<(}O?9s?g>kmnm5h=3>2EE8QUES?YQs zI+OagamiTh*&AtfEla(AaKdMA;!4`Ip^<7`^N$r3DOjT}K>%Y2Ub?O6o$wE145iYA z5#46a+*4larIY?TEPO|C(rcyY4Wg*!Xkp>yFthyuw&{7m$Ku=t-~H`#-*#NzDio8L z4QI3_#^y`-2#=R4QJNyN=|6y*ZR!up8uc#NE?Uwb6-6JWgzj2#wNK2q`VfPgYi35sbU#~uQML?AI$vAm# z@O#p#Q+!V^-&{!nLwbf#$tW)bN%ns59MTgm`-}EUG3e5n^Yqk#`3GJm3e}@a9{P6* zd@W61cv2@^k#G>>$J}~Y;m+%W(cI*PU|?a|^ix20qc=1&m~;F2y3 zsQVQq=G*yuRMQ9C>NDSszwobvv+0u+ham`xmLsuivF;S8`uhdXbrsSW&pHqab7|d# zauo$BJb6C)^4f1}e6b8k;oYMy{s%bH4R^mJC^^^=j&V8e9+eZ19TvlAi`UFMMU+?ji03G0WBUNEXfgFQv?^-`* za|x9uLs-2!wo6d)X@2}83iSO0Nby81HFxH z{2sEdj-G}4&%Y*SZxsE;#u2aMqUD0!3U*?6U(9|WjcWP8Soc?EZg~h!nmf1&VrtcA zB1?TC%%2ZN|JH{KJKpd*H;8S$2}R=j7PP${)eO^@|J+}>bMv@e>D$8M>_`f|>g1^O ziMWWY`D8QXBl!MExOrPoMMT6~s|FR~e_rE+f#cp9ep~CD5}d(F}&h7C1mAW34q0-IG&cza zwK_0X@mJhs7y6nU(J5MfC1&7B?SZ}43fFxom5g7;!p}?CD(gQbC`W<6q6Yc1tbU(- zkHjo6<8pczB_nR2_y56|N>5Mdc}7!xR0#L`TE9g*?j@ue<}Jxh*vjsH%x1HCoSuMPq@iwpb#+y4 z=BD19T&or)L~cm-jl2H;!O#CckUH-;AM<}bS^Rf)mDT7HoZKS~p~AXNSw9izsnlzG zAMm~vY~t@TOp3LUzH0{bdSsImMP*ylr3;yn-9q&BcX8U z^kwcRgZ&uQ)Sn?_rjK3iSRCMi_}5g33HlFl4ocR(atvJQl91?+pZAa?m1lSLm+!6x z_k5y*-bTGj!_U*EQxIK*m==%r$otQfp4WnR=YIgWM&!sS=tF@movgEN912A&Uxd)J zn!UTC<|W5@3w;8l{)}vmdkVFX&KVPw4Xd9U0e?}u9O^~u9~*WLm|7R^60!^`){3(O zxBZzJf#nyya9CYyy848hd{A|F$y2O0D}v4YGOb7O>`txi%XDI+XMK z)|lw&hidpZ#-L;sL?WmZIF=4^C`58t+OHYCC@CX?Qj^BfSLft1ZJ`u3Eo~hPm3BYb zI-@fR8Jk zK9{Ufx=U7$MIL)H>A6Ota#EX@ecJZT$-eTHAW7$~FrGaqh;tD6@j$2i;1$W#3{$pw z_bpsP!pp{1P;Ga7U8WIDG@0`wj1@ATELV3f|csEJ9>Yn}Y-sA(gx_C{yv;yQ8G0w%3M7v+# zkoYavpz*Ny&B=9|05|!r4jtqm1P?qF@du#2gdhj);q?VQ?5#DBq zGwHOVWwT3D$LdK#XMd2tsq(OEo>|T6cDc=Se}e2zVI8%M(L@}1MebN?uRgz?VSIch^ zKGIsfelk3noDSM*C#x)kOkD_Iiv+#2#7VWGAGFTN|V7(t>6?^%Gv| zk8jnQk*8mUD>ni)l?+E8S=CF~&knj9-b)FwR-lXt!~bN+7vjqzyZiX8=GZCLPY|hd z3|p(<3ftp|Y_fJlkE?oviFST)iy?DcNUW;);$DvIl&G{|KUvhZd|L3u=9bC~E_q5o zdHv-HhwK~`IYgd?c*~!6x82|(7NkpFsbDa9!XAv z(JE@!@H&I}T^eMt)U|L_Pyg%%_!y%6RSzZ*>=9t2F`ID`UPhhV$Fo>z{{kAYf3^ur1^>Q4FKE>QKOmqHI2)np+R4rw{%Bcw?vUEjms84)$;Gc034fSB z?u?S`B?6>0QkVhH6}kfc;;Lu&NH}`tD{y6wT_!r#W`yvHJ#oGM0&_&dj!V z8gkO=E@Xb14YEc^UK5~Lgk^s*6#TZun(Fb$bbfLb4e#cjRHFEGFEGU9u%vgb>9?u` zT1*pT>x(;H`K@FqP5RdiRnmk)Q^V%lSnE!o&?61?7RM?vHUF=}p?FCTD|4RgDoRS) z0H>;0*{UAJiv~Pisp(dWk|muZDI+!6lK9yiAdrp|vspz+(J_Csh=***{t~q0=@*b# zKF?w@)G4`wu1X8aYz2bN?VB}+Wk&-P`^;Lr?G1eE7UC!M1vgV$|NhrPm5TY-N*1~EZrGE5}Ex@ zI(Ut}NaOOhYZ=1-@)^2h?!+E#gAl71`boU6Xl4|_{r z^JKU$g@*HB5?ncQ^*zQhRvW`Z+@7K1>l|GJo!U#GvV3(}O7nQh*Y5gXa@s#CGzpqy zruc)oF#x+Y^Px^OTS}Giuo;}BU?+j(L$BupPrrVzL%z4k<-YIj%O3e8nnt*%Ox&(> z>hp(-(Q$naYuVZf>v%KZm?`N#XW~>Ye!Sv1a^`(lmHO0~0QW;_QXa$6IOV9EH;WC0 z?&f-`OU`;ID#>NX2F$aX%vyoGnZOUx+h0%SPpfIb$xn+H6y@a9b|)iUn)8JChE@+! z!C$^<5A1SgZtdR{{0uoz7^|-Oc_TDkb{X%vp|#YSi7&_?Zy(1u!ZIxPYF=hT$4kGU zBCE`16?^LYi;Kq5)ZO3rvyZvUjp)+KsWf8Gv0aS%8b|+;z2H_QdGFAiK~d6UvG}Xu z)zt65#^T&>VXiHe-}v}{f)mN6ya*D!tJV{>!0Xk$Mot`ecGr!_NHd-t^b6~v%E{ll zxkNqH)=~>ET$)mci_bRJm+;jyz`ZdW9!C`)U!XvJVe4$YI4(B$^*7r3BW#U1qxz-t z6ZSg#s^x>_`hD$sMcJ_kBl&rbbR+!H3!pmY;lkld@%VYd$hM0oB9W=lDLQa?dy@3& z1l5MEqP1>$TT`WB`7oI|`RN=VS-qQ`PC>(}`G%lm7n_<$48Gz)+^L~#1BX^$-D$q8 zT0-gBsXqlvqt3(Ea1fz%Ygo+}c5mjg>IE~%N& zg2X;{aWBt=D@ySVR!UpAB@Wmxhlu3*>}@p*u>S4}`oO|bgEw~&>-}`H6Gv|WT2anD z6N#>^cMcN!&vn_SmBfJ>pkY9==B}P0Bj+gn-N*|4=u(~nCJdGl zT^^DhHgzu?u_pWwJ_2u^ggQE7OQI$P&+(mptAnNiW6LQPrVN~}CKk(=CDy3SF}5d& z0OCI`A^_Y^07?kp6>+{r=B9U=p)XbDf-+TRbW7SzcXKnw%F9eQJBCq~GSxL663F~N z%*}boaPVp)sF=QOJ5TaNAosq418JTHh8iM?gsr*{+Iwm{{t+Z zS4GOqQ^NF2{2@(IH6CMsvn%SsvVKzgSva|$@39{%k0wuqlq#&e!T~u}D5QSUzB1q7hi;j_8q*mFrz!K=gSBL#|ndwSKN!vcU2G|)j)4k7ho5zlf6>~gE~ zWyF6F2ma<1Wkd|!PHH8Pvs42a>x%K950JZS5)K}wO4vHvDAaJ1oU0btchfIUW*GPVNf7!Mt$TxxaCb1yX!WPHFn?rf0rP!43nMj)+ zYMD+v>%egvyJ3>D0emJR8%IL;2S^5D+O-<~y;VK~>1VgpnaFEd)CLyydpvq*SnJT) zCn)9ZC~U!$N6W|(12))aWm-*?Fag8Wlxer90WhH~WJ!&08b)x#PyR@6U+1Z7@}=qz z_9ucp5e7TpC6Rdmkw) zAE*O}22l~9CHjt^nMXL0`DtEPG%nW)S6m2TN}6n<#a>cCm(^A`NJuH6nCOz;dd2eh zB8^h=n)}AEU*k>jNQ1S0<9drmMwE8=4@sKIYl~-k59%+QN}rGphuXRmY!P>-eLV4q zm;EhXt`Tu1zp)GXe!()=E2TD?teBramw7&JQ0WMn)LDr*@c=)b=-afd%*GbE5h;GXkg^)jzDEF6 zS9=}PYmndS3U+^OJ(rQur9Fotvzf5mo|Gs0oQ1a29r&&c@7r>B_f+Owk{Hn{Z(-bH z^hG!CmX!U5#OsOyZl9R}_VSZjY;Kp6puewwXd7jHQ`0A3^obbRbpOh!59%}C>qqakD3-OW#r(`I zXRp`C_|cf1*{nQ$=37-IH;v8KMyIpBc~TR6R`~QcMErsq35pg&Ru@ zWccGs?7)W3#*5~L@&bBNsxyIRl>}(;z>)N@D3mg6r%_H~0Yhsg#FEpz!wFwe3g3yV zH6aDydNA5~+U-qHaN*>~TaQ>IPf2{lX9@|j;BcQRHkAM{fRy z{VCoYuS$Ad4vOS!JuT@cQo;?;CkoJnuxr8#QPROFDe<7{8AtA4D;C&^&EjpT*9b#Y z!xQhhKOs97N%uTKl!_B~Oo=#ci%PZp#F=iE zC7nocsL8km9qIYrZ%SZkgaWA=!C<~}_~DSX>i%#}U05i$xaEQsL)~X_Us2uFO2qS& z3Ao=%J9P%R9&+TLJTn!-p$SK6FN7r;eu*y|VF_lTjl7zxu%p8DH&xn2cv2?A<;Sto zSl>G=Z?&sK#Kq-#vk1o)DW38UHKEF_jon)Bk;h)j5q=BZAF*z8&+I$pm7S$)Up-la zH*!q}_!^7`B9j!CV8er8HOZr&m29%hO)Jt=Mvo=Qo3u;e)1y=nsDWkL9$_XInt)P} ziO4q+=AKJ86;rsdbup63dFX3%#r`tlYclHD9idAK$l{9;P zJeuZltH|nB24b*0W<@9vg`2W3wcLj~JI0qP>gHe@#m@aeglN&U&hJe z--`99h~UpQBmFwxPyx-OR53dd8kDN!$gOHvPv%o&QwZ`l-+rh^&3x7ODhe`+Qa~1m zJEIGSJLcVaKO(IB_?^rB+yoK1vvbX${pUrZibgyleTzm?AT5|Ott4Q_pk5<2x`xD{ zm8pm;(Z>8Qy!FcyG7)7TBOiq zlvLQP$bjGL`#`(z*wg&V?H5|A*m5(uRlXCgD-BMGW3s8CX%!_q37*r^pHf4p9uf?g zVn&3+RDPYMg9M@OwvE;5U*B$k_&DK?au>kJ$aZ;qMx#4Lt(kdBE|}zx2X>4upFyAg z%2|!2``abMh+Ym_7deo#8dE2o2I$IRy=q?mT&BZboB;@x=)BRDfm$}$>r}YM3I4CY z3`yT!I;6A{1Ja(wMG|~y1!8HrUZM4gdD13*A@^ewvZC5i*G2D3$gqh!ew36QvSmu< zwcEk^&bc6K2KBS1Li~FynnB<7uIau!y5Y|e3&bZ1x%JETqZww&@t#m(*Sc4sQP+o{ z-^%BMjknLj*nxvj!FNX*85UsoUcIFr+y(zvBrJ{&OevjZdo(G=&lnQ=VCLVMY<|f7 zZ^dUO%IRjs{E$(9DV#FeE_B5C*G_ke%T5!K|s70WM->^==SrXLyLz*M#AdW$5 z;D>|IKfuiR70-e2L-^VtFlzfbyM5$*#?cDj>KD&(9ogA+Dmy!hLe4Z+x`n)Cp$s3J zVw$dJ>{_j7Cgyrs%@h<&HFfbwIqs&)VIwYcrVqWNyj|;$mbEhd5z)~~{qA=D6CA4> zZU0<2Yj%ihX8__Q4uFOu8?PS*7M48z<=n@mr$W6 z4XJm@)=N~Mf1IayyjXk~SEI#g?A_7c2|7Z@4`{uy{aroKZtdCEGFST&VF}Vkng77{ zEV{&ePx>zPp};n2ea$>$5tG`Ho4Atl{gYLksYzw<0X^r_@1}Qw;l^9_hpG0xqlkx2 zP!jIiBTNgw(%A2lE=NPjk~$j)gS1kp{0W2Y{89AvJc!dUYGJai0H4DBQXTRv5cx|dl9Zzs*gB< z5_@@tnTBgl*b!@5eC_5TKO&|UmlBCQp{V3sadLdZzau)+8q?TX0yxHAkwS#7cGaAs zrWjmB0GlXcq)Ot^QNc_GG-;K8)tz;!>-;5h2p!@8?(vb98#0T zLfySdqMl0#OF$161{-XmTu|EizB=RH9WF;Xv~~eS+YLL~GthB&NRV1clz?G%gc2&quVE)@a(Usr2OC~cI?8X@%jNDx zhaKfQE4uOb^l+J9n^Nic3zKBZ%$sMR7@|y)^Lf4tXZoU?;b8R-^{XFk*u5ze_IyAD zKIf;}r<|Z~vi{nx{IBEQhF0}m6IVA1P?Vucy~JD_N!QB1uQm3cN;P16jHWdy{8vCr zce?VI^EF%Ft-r_)H{_<5$0*efSa>NhWO{kF8#C@3u^BmiJ5@|`M+=&3#NxH;B=vga z@nt7!HOJHStbKRaDcqRSk@^Q{uBhwK`En97g4U6Hg=f#=$WYaxB)QADI+&97fcB+s zOK`5&afFlt)MzZcch%7E4}}~K{Saj$EO6}4Z?eou+~0lib)(lu&l9$r*`Y-zE|&H!I`9Dikfr&9 z2y)Rb*!Zhai`e0)mqUMF`!j*@b~Ss2$25}jZ9$$fz8atT(AuPQKmK>x*r{*)V@xpV z%)}_KDcBzWwv-0+?h>=2sn$oI??r4zKiJ9}wWRPPYjOHVxtD9;ya`RB9Af(fdK=b6Vi5Cw znWWl~mWWO=p^A#bR+WW)5O%UL|{oas?jPYc*<_g?smc}8tliP~2Wng=ivJ)V?UkPoZ03U_FzEHh?|6qIvJ_!xq&CPB7=UO6}DCce-XCM(LC!g$}St;Uj(Yz_8 zwPHB4ykhz3OWegSo#w+rrZ-Sh<$;1U-FP@fMO$`QStk&X_v%8jSd=X+iC_kQ1^7k`F&pUBZ6Rg)4|o0~(d4Z6?J z{gp$XyM@Q)Bfb=}l9hy^gZrO{DiygdGFYde?Y~q>%1Em5Vk(MZNh~S+bfXmy!HpuD zB3DNpMP*e`MP-49hYvZJ)9zVvCgt*Y<>TjpLby?DMT$s>KBp|9F~_*S-67RJJE|Mv zJ*qG&@iS~!q^WwNNdFsHSG52tpS;UO;>g^QLRg_~UnNVtHyL4GTJ-&MBlv~?Y3>Yn z%-|OGKV8NXag$qauDvmgV2TcAn}RFOeW~JVTOdy7g@0LG$ft4XpK7L}BiTaKeS8i$T21ml+lW_Og|~!&42l(`&s;#u9j4UPSTv|G^OSe z^ug;1+J^T9Wx{p#R^uY@ev{$GF)y8`6OU!~?lCXNw*CH*T_hahwy4DN*LM=PlLbU1 z78<*i^Wy1S+r<;BGrsjXy<0XggVS_2>ZGH4uITJJs9WN2Z9xg==$i1%ed@rhY*YMG zbi|8N#FU)yw|JAOZbL3r(&yjwsV=3NOVLIO&USD(z*&3bEVGw5^Y;J4+gk+1^@iWN zkPtMuySux)yEodnYjB4M?(Xi^c;k}b?ykYDf#A;X_Bq2-|9b{^a3{N}tGc>s?;h;; z{nlE~f|&3-=>9e5>zxd@J1im?XKsi@W8rx@Y4*PtWICH7X#>mi>Mk(cW5uT?T3Xwv za+5?8gmNz225@JVVOJcZGrommKzhyY_*11P$$qU`HeW5TB%{8Oe-EhTR3>s1yQ!$viP_tL*8aM_W_n! zIooj4qS#?)bb)esdmNUgr^F;h{7ag6wHU<|e?j*=S<>bh|k&fe8??-!8V!<(V% zbc;vKHH3O^o+w9EB&xhfWd592Zk_j{yw5JgMPn7}-b5CBxbF64-_@%lIKR-WQ)RYE zNluP;u4us#W?tTDnp*j5q%x`Igutv6Xw6e>u`Mf--C$g%o9IYRH>W?$KKrSa#`f^? zZ8`9Gm#pXDKET7k>lm>LP;o2Ly#i8X|J-&p6qj5pq36j7-&B(h%2!*hg)_V71u+0j z$o$L95bCn|oN0;ia90gy;@=ooYNg$VH{>SBdlfFSC7skgvy$A1Qw3ev>P(iYpc>h!LB%z| zuxjVdzln{E6v^6_qlL#)z7h)BaKS01@QLwh@JVj0Df)XbQ^4W z>c0aALvSus#!V0u9AA41T&LWIU503$vbknhnIOsNrW=|*CeAE3lI^4Yb+#w%?(~r* z!cq1Xvt-b&?Vefi2$mrG_>{HlE?s$>_3|{u3ourpNDB1qsh?y**z~8WvFLhRmPJT zeZ5w@@XJh!d4PnSrBUvy{4wtR=WEu6wodMU49PSyB|IA+k`*gkeXhw4XNon;w?I+S zmhNb1?C=20qYnSmxjQ$-t8r6z+0i=($$Wj-kdHHV{5IwKe;7uguNT6)h-eqcQF_TW z(H`lqXucThcm%C$)5OjA%|Jt2Q6Z%^+WWfpRiSEh3vK;nqEULd-W~gT)@8*hVe=q# zw)eOrJR;I&Jyn~$CXdEoiSrSB*9TY3E!c?%Y@9o<^6I^#$9Vt&zdN?#wu#|G*twp; zUmD61%=-54ZYDPUDNL~gZOeA2bXO$u<>PdcxW?`F+FCNv03XD0s!ZSZ3;oPYrlh$K zDt|anNztE(aGKlEiiMcN)3LU-fzUJUFZq17 z6Rukf##`@Z_H&&eW^wWgcP26pCB+*lXZhg*o+VZYmC86nb#@eCF2DVXZc{mi8s1cu zDS||oRp3BIl{3X7uoAd!EEYNcBAf+KIKwBe`*Ogs)vD`g?v$=Z-+p0yNLQt-v|M~Q z;XGw()y2={KVf}C8|2ntx?-_S_)0}JmNhkp%+Il znzt=xt~HqTN%M^1gJ+95{Z*Zjhn)PxJ74}rVZCgRb_Fp#s>v6Ojy^PYUVLHUY6P7P zm9}%D-%VQv7;$S@bnk7nJAW@X6lw~68?qpMh6iW_t$YT1-lP$xk(Z`o;Z(m`XBs87 zTIgN!N!$iL`F3(MK$~A~<3_`lXnbFjKf!*xx(w6){SRRfJ!RJOLPG>p2&lbhQ}j)9 zKaNp(R1v3uJXYmddO0@u9He)YiWI8Z2?2{3@0h?CHC%So52cd+4`sI>rM)pRtC-#Gt+(W%8(`w0>l5(0T8Ad@ zcu??_%L2~g*X5-jS~)bRY*u%|E{BFwu*~-ETXtWtY{sQ4bVW${Q1yI$ZH;muN?b2( zu`fRQQXY5&)5kv-dfNC&SGt|vF+FOj{F58z=iD~a)_s6w<^gs-MtKf$xVw?EexFG! z#rhzRe!!oMw-(WH6aa25qe*_XO|Yhe z4~0$3sl+Z@*fh3MRPO5JZ_o{{xwviI*dyCE4nKQAY;x{qjpE1mX%5hv90ce&A{M&KvdcG z{dUPx;I~bDGU>HP$U~P)UDe?iEwwp=hVyJ5n}}`&{VPtdCnK6SS-AnbB3X6tFG`Z_ z8Z7i=n|PwMzx><`>pmH8OmhG+e*Bp3_En?d5%l)@hq&Y!Pq)^j@$;|Ut&gRWc9lWq z;&R(4E0`_Ds+BC*#E&4jyHwYib%7Dj@F^pG{P{#V_ zBjRo9^QZgo_AqYy6oA~PheBM7u|15e6K_-+CPQ7R-}<3z0dui*nJsh$Q_|!}_+rBaHBEk}G2FD+mNIWGt)u_fpdY z5q3=Sp;O&akvKCI;VO?b^K*RYFXr$eIJ_&lo>_fG*L>3Optf{~Ih@glF!j*oUxEWx zTBF8+U5_-}XfJhfzRe&z;fDo`==pTqxDj!)(+~a*%lJWnWIa zd6uU`{MO3#)NaRX^s>UEA%qG+y$Yu~(p9=E21TBwCal(=o!ZN7#k>GfuVTse_9aM$ zs-FWGaNeXE8~f{+J`68=Z4>*@mgq^k&^KckST!2$ECqTj2UnkUTC_1hl|KNR0$=yE zgQyp!WdOlkw@T(P^*_d@A{xj~xr>EwyYp_%+W5O^B#6Ofq+O;I5{;YXCYwwZ2}cPV zQsq?DTkYN)a&6PCc2-ihFYcKmFzOV6!Ij48Aa(H9!K3C-{Z=KRQFFn5N9Xp1J#Z9k;MgB4H z23zgg(PVzN#ELGxQ%=?X)5SM%XY+_qee*ACdmvPACZ;#;o9_Md&iZr+Z}A2QM$31zIHPf8J3*kAXS9g09qhH}}> zG@;>9u6%BsC~&R-?t>Zv&#*wFag%lV5>Ahg=UJ;JYF!5Wp`86Y<_D`Tc7-Wsxd;8u z&``K&);vuNgpG@&)2zIKj9ZYV4#{98v?#rGTHV zj;KxuSjDE_D|H8CqtK`%z+2 zfLybvvDOYHw@Z~^d0yyKf)+O%^E>sioPQ{ZTka6-++Hr~s z&+>2*a;bHDs?ohrFjGons$7Cl3WCD~%{Kf#+7?IJhg~8`mf#nK?j$j zy<@67x~l!wTzM-eQA?=~XJz1L%OR&Mn)CITXay5XwnqlVBdEYmf>-9H;xH^Uf$O}c z4OnZ%ed?d3vyd^DNvSncWJ-+MGZ$^{aP=uC$83N}Sv89`zg-Kf6;ADv)-Asz&<|+x zLqXQHjMH1Y(ErSZB~|&gcfU4&CAakmZD|oengks(_}i=21)zEYRNeBn`|y;%3Szt2 z$B2rI!#7*qx~}_W_ba$4_HYuIpmz>@R?)ri_9q*oHU$baWdAf4y2d{2CdYfDxevXJ zt-L`=GCo_tU#l*=+#S#HBq7cOao2n0y{KDUG1px3Z8+Vpou|1kx%kkURxR<_Q?Sh9 z`a`^aE{-3(xTj@$u7tM^B^;_cCQjIiVg2J{BbL2XHE66cCTZVxfjijT-moTH7k$|J zxipZF!VcjH<2G=;X z|J8=n&ChJ_oG4x2KV}1u9w{0Z{GRnCMoF)UeKH{d=Q$T?&IVD zLl;V%tF8&WU~1ftDaO>|f7~dFeDO+)rB-e`M6DA=3xRTc@lgBasffY8th}XjO#ymK z2InIjVE%w4yl5#~t7;Tcmi!#(2~0AcGm2gcT=Uku_Wm7Xv7@!jYz5K<>O=UH_M;RO z@ZUe%{cFqOor>7w*@=ty9b*M`%ltK?-8S|?ow3!a_y25}AsZgrQ95Fz1r}Xz?s7=c z@X8Kr>Y}=}weN_254V{ecVPS5PscmBb6qANJ%L7{-?F?odvd++Y)tY^ImTG}AiWOS zsAY9Vl#}CwSJT9Kw^d*HaBnH=(lNB3!P|6dl2x*HcR)Wvt!~gteF6 zB$=TmCW!kRHcyYKPo5y_iEU$-8SD>^-xU?*Ek~KHzCl+x?;FxCpcL;F{Pm!G^5jl* zpcBeajzQDB`~7R)ON>?cYf;%(@SH#JTyqPup_S8giurI~gWo-&cCGfhw)-E7 zsaX4-9#2(Z-QEggD`0M6Gp0k@&DHC=FU39CQPHlkuE5DPPQ7avB18mIS;DW(x$rP; zDpfdpa>yS@UtU(!7g)dOooG6OxZh4?%lP)82K)58<-~LoMWyXAJEIP68`y)!5ZYAz zHb&NoT{Z1LRQNU;ypTj?(zB$BDqWq=lyYavE%}yL>Q-yP%iyC%omC^l2Zz`o9S?FF zTpf<^Yd;uHgyyRdOf*G0EF@ibM6*xNNi4ii@AG0su`!&mdr_GxWAdvXU#v8$S;Ar0 zDSp>*niFuDpbx3d+PTEB&COBnI3O(lJOjA2u_vzi-M&Dlwe7shUmGb0H zaVH{dok>DEFFwiJPn?S0l2SwIQ9!rGDTVNSLqbE6<)fl01EvS238O}mpj9vX{z(zG z^7?MMYo@*M9YQ11w5cQC`&v%RXl)9r4GvI0w&`*4L`4q**tX{i4gNW(stK7YdH zY)WCb&bHY7t%&nQeF7^zFv`e^2%VZ5{$b)nLH>vjF^_~rl!^9R95JDVg`pIYEfN{< zk~6l=`hRl5{~vaTLFoC=+%s*-!w&g_5lnL7rL&LAa_e%w7NKTnyOc<%?`~lwJd^qw z=5gZz&)&4d5W5r7NX?&({E{{x7EV=?5?9sZ%^gtin8S`O@tEk;jXKy0x?a zo=(ykw$V{WbMVJK*{J6hF9|iq;makNjx$V51wb3gm8p!;q6?(VQYloFY=jsk~Oki6#@IPEzW2iA8P_O0KO% zw5Gw3oDvb}8_Q0h1K%q1D2GqhamH=%_3Fre<31sDqrjDSo)_$Cj(*E76S~HN(WXDd zZv18;>eOjY%dLYN2lCV2eeOE~e~i_b`abu7_ZPsap;->T$K_5%u}B>*A*Y$j&T`H) z@7;kpxHimq@KQPDY9_5*4hR3iEN!!Ku@dr|x8Fz60jZ>tjA+p$8Ngde()A8U9W2OA zUuIsE2veK+_FUdmc%msZE`nj7!e@7iOcMCA?uC7+6-w8UZ`JG8aA9R5a4pjf0aoYZ zp1#2;Gvf-!amIQvF@jgSw*gY`F`G;{8xHh7X}sZs98O+;qAY=^RaDUzcCTj$2E8={ z!-AAaiL2@VxYD1S`$^xsAMYLpR%Vx0z*&eyr2)2BfOg*uIS*{awO{jjDMO=w!>B{m z-~^+;XylRnq!7!>630^$BnZQG2=L;L45q?^udKugp%CApdE03lC4>eyWni?Sa=b+unK z4qSdYI@>By7PSst@UwxK@+aFR*MqQ=L4WY4RJ<=?4EkIw38@h=r3pF7IZ@MSM_tif zl%0YO!S!jrM9t9`t=FQ$$X#8z*!axy3Zk0c<1AAHKkL?{>CA4a8kOA9&CI@Lh|gK< z`@8}+{)3rXuXw&lIB9h2dar@D793q@zdcN-Q+J$HFzm0haW@?`)^#PwYcZkgnUesr z?B|G{g3AqfZ{;aDV2n#S{S-G~3UMdeNUP4(2@Zs(l|j2&ts{wJ4$9|_KpL=aoe42g zZ$85VMz@)ozr@WrfI}ypdUTbq;a6hyd7g(sCY7Sna^>O)q0X#+Jf@l)ULP^ZTV!2g zv}38fsxFfw9hIyCj5}iLZ$XJFU&oum44Dd4U{#<@ihGd z?9oGz-(U#3iK|L}!TIQ=)mNxX5^c3vJ%GQnl76{3SCjYHImdx>i2abQ&cw?l|CfWO6VNBYJ zJN@>pkEPcCU~avuJ_0OXSd3ku7>JFK=PsT9U__fj7&rX6Cmvozw>PpSG6deLcyTL& zD1YR!N;{z-u@Y`eUiN>?TQ0f%Ep6zXs|*{e_`|o)B|<_lH?I3xg$}=<5wX@0%%_I50xj4r?tOyOH*-8T&gdQgI)uPAdX!=NU=vqA{THULiJhMTPgK#ELoRN zasbk*MgSGZr9Y)+g2cMo=@t$UMJja_e~pSK!74jScBs5K1g}{oT25GjL2iVDaA1TU z=Ars~Ko@*r&2cr&8g>Dra0JQ6@seXc4r$2{5mty-dBI%7rzx%>yzO8d71c}JF4R5w>ti+^P!~S1F zIXT<)OW*uIp7lU%>o9RUv(F4Ucs4+bQnrG+#uUwOFY@nsutc_d~uQ3$(($Jd*x-) z1i>y`XUUF={kx!R6Ij9M!^cLH<^18_D=EL3my->z7Yu0Q1#B8a7-M!s~>lasmR8sO*tOL>ZF? zU8}+VW+4X-)j0^J?p+o#3Zrted$NZX+Tl^@fsJ)39zOb^^-fnxYH)jGWZi@8%`};? zzRWPDZvR=;TD+Lcq&cblgwG3T1dOXRKgMfAC43mlWa*lbu*Nj6icLNlE{!5jVI!f_ z)K|X~>MGG=c;^f87HLj8^LkN}2GaHXrigmPGhd}K(_K|=4PWvn0_7sh@Fo9rsotsD z|B@veeRots{S+~QS}=gRYp_k!IEI@T$<&zcFmR|xLwc4+Q7xBKrH0w(@Y+19NUu4g z#ke)7431B<$gJBu@aSbn@7C~*n?&w5$_^e2EpwvHp|RhRZaAW5UWwE@J|W>X%Q;3} z-LM>OE7-C=XYO<93ZdMj8gkPt78l%k%P)F~xP33WBd=HxPf3jS3p`|eD~4yth1t`_ zkx;UTdh6HDsEhuFApjEz+c{y9kOG{09wI8sPUg=6B&I=a>@eM0FjK@FFdR%LTc0%e zkBGHbTnESz?`KZEeIV=mfvsU7B{gGSiPF{(Er3mQ`i?1ce-6>o*4A0mT9rdzjx27H zaVGZ}YqKC`am$q3VVA?jmY-Bzlf)%na+48d$#{{1sX+NqQ~VGlrzGPgMqqh*tBwlV zwD*IV)aEYXsX zCW)r}V9t_~V=TpHk{~~H@xn4qHWZ-oot7#(veF$#Mwk&Tcv=DjEfkR!B8t$BUil!J zVDe)X%D7ELd=T|V*u5GjMUWr_wjb%Wre&9Elo8$3$L`W_D?{t|V#l>88ry(EwPx*a zW!)%@e|qrW@V~h#b)dQc+qR63jUx;waugoD63@JdawI-fL;YJingWCg5JD6!rjDaa zOAYG{g%ekr(V3BuSgo@o>wa?@s<{Mfrtc z3lkYWb(T@0ecSQqmmf&y{`umz75%qG_E(~?bE?OCgdk26`(6!3+;5=NdG%sR@InwN z!LFrvewqWtc5sj^uEhB8una*qd?d{GR0+6}RU{c0iQklmoGPDJkyOaS86LC|%qT<; zCimGR@mZf@Xr_X=+nr+1QF; zxe-7JMC-E)+b>;U+J--Yl69%3LXM!qfJubx(K=H-24Pg>Mgo7k2RYx5$ZyWI6j)6^#0`Sd|=FFA36 z9hc*mAt+6%11OEzqSC$b3zxD7XNmFG;^D1dXfc_^13WCoO$5+etbo1XIHx-9C4gyf zigDgI3MLK0#Yy_45c`?>$0GpdqohGnjK-r+-7ld$XRUpQZ_aoQviD`*2sv4&$8@xK zV|nLCX+>it1UUxhD4i#fppYhp?X4urWC|W1Z7w3xMsPtiF2g zpUG77rSlqaEmj=0$s7t^t)V>=SgI0R1MAPdC_O4U0L*+9?PTjrv#F4 zQmb&%x=TOC<%T|VtrpIRE(hutwPFQ|sNQREf}etKM(@slFz_q8ISC(>J+`Y(f>Si> z-_VusQ# zATd_=+vm2yExGsEQw*0THkxO9pS+BF{Htq75H+Y6sNms@_*Lnq78K!9RC>husQ;mC z6z5H|+RSOC$T~zM+ufn8I2^wPf|NGi$%2wI;nA9JMgGGr*8FXKRuA zX|Nk8D0kmN`Vj2-UU0FZdElj)fljg9adI(cCrk&Q794!X432Jo#`Ecr?P)HnR3Rva zDoxW!-6=r6gPK0cizEdvNOuQ0?B>POmYQ~XgW%V67ezhC`pTxMmgSA)Kk=Wf30l&F zE5>M(bu}!psSDhxZt1)6#qmCJ{Qb@W|G~_fYI)wgh-)hjpSnCDa2{xDEdNt;9yvY3 z+MX7rtxSdnTuL9D&d=u3?Xe~totC84ZkCrlRNvenAo?Wr$ZYIcRzVr2*2n}KS z@&0_dZHyHF;^FehM%Vv?%N zj>@c1m6_JyM3YXHsh}LEu*fW?g;KxZBs^Zn%l_#du=G)jh_-BQWt}zgO}W^|@md6T z4u9(!n8lOqahpg>z0d{L$cN~1FQs!X0k68*ywI%S26+9H>wWN6=kZmYOIl^vO1if6 z8G+gs%Kc;N0wBGEBw+V>_ASGhK$>P#yIqKTbc*J#A_f~EMV7nQVfJ$yuaR#Xkq~ib zl1P#h@6y!(Q0cX=?}s(+TV`=U4`i!V=g9AP0#eO^{NKIij7{o)LQl zh@^-0Rn)VK4XnMwrWmr)S1J!w%Ie_Xk7y~ZIyzZT%3vktRII^9k;wDeQoOdGsm8Il zG4n;Cpw+Iv{1{Z-K9*s@`z_nTb1)g?E^!U2OGGOyBmHsiErWUme)e`v(bU4ZB&e%# zZwcNj=oaXvm z>-4U#H$g^geElOs}sWBYU% zh!o!?Nil*Y5iSwmB`36mhfir-=EjJbN2oaE<)sLLgbLQyX2=Z`KVji86ZfNXNf$)K zmK4s2C?Oe4&8%UR&AS6OJqh6U+6}VQ$l}X#?IEx$ki}6aG6mOij(V@IWbMm#JvA-G z>EOsPmkx%sAx${qJVS{_WTX&swGd2j59|XZx6_q>BVM_st8>T6+1WdXm}|4kdox_I z)*!FDJZq*uBI&y=Q#BH464dh|%qsA|{e1u9g-g)sQeDGK?qeUHq*fE}u`O7ydy@sc zS<8&5$E&Xk?Z0`SXO-&|3lb+~C&>*Zzbo@K`wOx0VSR&3qB8goM%^lIT>hG@Lce~S zIvCz`lyQuhTx5E|%8}s0h}H8aGaDy3@Q|TgILGi}%Dc(^A_s&{#huESrWGH2 zp`T`PI6ADGdv;yhgzGW;P!T*6^qB-pq4X)-tVSshM!v(m)R7>cCUanA92j_=~5!R&6?e_(ynS4F_eepMjy6@5Lu8aZ+ajZ7zD zcYa2~01=i{!=`^XtZTaARAfQ;?!Sw^iowV`RW4|N^hdC|Xa(_joTAkjK;uD)|AkQIzJy5m23dpM*D;&XXNX+ z<||^kfc7jD2KiNeVlfo8r^ts0_JskRB2Z-eFW`L2_v=PlsdaD>jWRYFN0fA)qW0K8 z!dE7>)*VnF-P6^CP>`$5^`R;9gxtpdQQ^iM=Q1m8qoAPi)(tPPUW7+j5UBOwvbL1X zH)CwlFm6KTZfd%~zA_<#0$?1QP->}t5tu|`Nc5z_5~ku#e?R;kh`Y`nW_U(`OK$V+ zk4|_YF_LVRnO#Egb2P1w45BE={1ZSn=P7@qiL3Fo)*6L_vB{+Tup8}PYLEQ6sCpX< zDz6Vis~)bm&fbq|%Dq$XAS1kGsQ_~^Iafz{RaHm+%L7YFO5MtV)d#GbWCm8sdTL6I z5VmOpn_MA0W`Lx#31h!KW2x=E2>&|I;h-*-Vp-HytMFgWO`W!8S8{agz|+^Pb_Q!q z0MVD{1DeQgZg{HL)SoapOHZn%h2Ssjf5d)FIc#B}38&w)d5$Q|KNIC>@a>m!dhLC* z#)ha>I(e|H;PN;Z^Sbd?gPIg^v5Ns{?KwBe_6 z%k-KzE+WD4uuYLjTu4yw3@0q8#Gk56O~XAyjr6lV%(MEE>N@lp4=;p02_}`MDIAtx zaGGp@XBiADXc3qbW*{LwHYK81gsnLbvdCh4?stxCs-*Hkko}y7#nj1|CCNalGfw4x zw$OI3hu`KyCgST;&rMn7E|NB9WSg=`6h6C(zS_1S;=OnmXHLrA-=0UxaX8 zB2H>sE2|ZQv*NdX+1mcRy3qmA;y~WUC+u5$GqB7@c$yRQ1w1N=xvpM*)UPLf$r2 z@S3vQsj@;}EhFF(W#>`0vp+YoST?ie%AM$qcD z0&ehiHuj9A4F49kq5jHpz3=DmAgUR&^TuBZ^zp$*yMFOdJ&A6&`1$$D!Gz?*CZBOL zbJ_WBirjA4jeTHXV2?cZp0tLT)HSTiz$>6<3bO{n8e=94aAIpvT-Yrxah)0+A3-Ii zwYDc`7>kQ{Mo2lVHwK3p;1YEyD8yNRvox@Xl71b638882O^a#6@i}C?lE}+)uwg(~zmgONi)Ma%2T|tp`9kL!s*U zert8=I2F<0u0)bxrv%EOCdu)hj7j1)s-lzEk_7(e<+zy!b_`@KQ^*-_PP{jIK>6^w zQonuBSZqwCEHm~Q=UZHeO;vdTc^03b1#(8e(NEmOfJ>iIk)QI-q&L$$XPYa+1VuGqGyI zWIqu9I!S=5RnksuPl4Ij^y4el#1Hl?PDMk%5_NWGT^dxRNBQyUR5J*{eS12$e!d-m z@LyZvrK1Th&U$!R^JX_w$04|ltzaMQK!=sunZ4YjCyvTrl4q}MH(Z!Llf2d}ELNkq z&MZ%~(y-buTFTC77GEzv*f!4jQV>prFX={~m@AY`&HmM%}4b)nz#HoLD|D3irzm%Y~75Sm3T%%U1%(5;f6)) zCy^trwm(TGRk3MvTJ@C zT09!;Aa3s(XF_1L1AwCHC@(P@z^FrQcd02xErBdf#ScBq0hueUS?~;!`Yds{_2Su~ zo@c!m14r{}#fvU2u`1flm1C?P4xT}<^#baDA1B0US&e+A>LjkFNn}wVC9Rww&LWI)b0t-8DSEH$-qwm+f|Alxd zc>UNreZvUXxH{++#bx*t=^9(#{H7ytQOj<;TU?{Rkzw5}>M85v52eFM|0o;RrPOL2 z9#_}%(jkfM{r$s_vh|Sp+dP1#h{n>q264FAJ*MlIAE2&8b7b(kX!rFB6$K$W%`1Ny zeEm>-iAJ`e@V$OPXKN`&WO=UI!E&*JDcR>~JcSrec4$g;KL7{&Iei|J zadbAnlDk6;>Afa^wXsX5)$#-20YICjIG8r&uLqdX6E9GXd!aFt^&rbH)Sk0_l~DAy z*k5I8#3rZZaKBZ%WJj+@5yA;?vZS@x6_44$^3`K+EHUZ!-V;~6Ro4+-%E@|zC~n3y z*r|@F7jGO$COh(pMr~Bx=`nGsj)iDcNA>b<%P4rA^Zl4humhi)mY5L}4IPV@`TUEyoFHCdDkMFcy2rmK| zlP7JcD`n_B&R^X6wgO%pdf z4qPpgJjJTH*uID_yK68ZrpklsR(}gp9Rp45+m|rqY8=*IajwO^Vcp3ryf?r8a{Q1D zlq;TI0@^bwzD6}!75^m)v`~CwY1@`D&Q=ruOSZQ~&7bCNA#<@)&tG1jn#JmZD_xexqzZp^+EYK4q?)g+fLs5~D@u0OxH2^k} zLe&hH9R4=<>yLc^i#ehW$1UW$>x1wGfm>V*sinuJ2=6t|zF5rq{E|ZFF?|QZ5FXF8 zFh$s&prU{3J}3&c8AOipqd~TuE6MfjnvYsE>UOeCQo;LjrwyE^I_YfC=EpiVO(!S2 z#gvl~z0*+|woGk-j9KNx0+>~|jCFrOA9M2RGhNw&M` z+r82y=_`J-kt;&6t4f{G%cRGe_GfL1cQ`2fJhCO2)_zKyjaL8!G|64*{4+wyv@EY@ zU{~!c9FY*hFAPlev0-7Piyx+1`j_=2$ZEr|{IT#+X)R6PN$v12IZfVaWQazq@rg$4 zsS~gIMiWOt$A~R8msO0nA+z7pkS|h_2SavE$AixBE^|DQ-(4Oxiug~N-D3Y-Dr5>r z4LGY(2Lt7T>Lwf!ilGGHVklbshdbg@tMi0en_CD1q`vr-OA;xV`L0Ee>L}F{d{J1f zAs9AvfB&Bi^#6ypL5T8Pw0k@dg5kjAiDqCA3IMOyBF{_NJ@1+V#S>Roh(uz;|e} z)6P`+x?#k$AhfNCSLF>Sb5(d`0*mq{oWX=xz@IzJSs?JGcTk)ex#~|Jzwc8ug*n`! z;g7~youL<`Im%p2Zp6TG-Bg%ozlh^}_B%|HrjLs{VJHc>Rqq`yh>|nbcIxUKPM)Q& z%MnV-oODiuO5F+nKYZ=3z=Aq$&*Eq9#{QTB6`3VgRFj$+`=XLGE(gc=z-W33^odDw zk#s|Hh?EwAVsqlbjF3~SZ|RDnJlL7Cn!0K_w^$lyyfAP5+NvXs+yNTGE0V`fEjePB z$H2NOinU}8`4Nn@iTH0lT-b!!&KJ3-Kdw8k_jv|2p9l^(^9t1a(2jlj|Hmg#6l)&?KKa@TvG8 zy=;9*rqlXZBZyg~{!A3wS{em;(Bfm77#+{!;DSym>1Xux7Ktjoi(`4IM&ftlnnfN; zQzOc&IXBA-LAMc^*~+R;L0!n>$NDwSZ2@d9XTSg^CV}cM+j_9*rzfHQ@aOEGX9>9G zBHU4Szu*?^?&pFH@ZAwc`kcoht{BWcyo1T{=l&KcN`-&qe)N?Qh^GCp^=PShqF-i86#}R4v09UvxhPSEANu%0XaRw{{E8>l?#bu+kQA!Pyc8(969E#1n?FSoi{t(**xAA+=E>c&r1--12=qCO8&JwYC zTSe8FZxcs!3in6hl4QcyeSPX!Vzd!w&?V*1e=r{*BUe8A5wE4W${#j2&HusZz16ym z+>#%Xc#CKL2g7ja^MIZZasc`dX8z!#VBv)v3c6N-(yvEyu3`U!A-TSKCtQLq=x-~J z(Ef_`>5zav67emXJ=0tMw1Stu{l~8Bf%kbeXq6+kA9Rtg`2g@+J}2D7iwr=o`>)Wa zdjmZeJ#`OJKYd4k2`Lx<|NOfgnbIp$r_bLX$SXzRf}mTBi!hX0o$B`fYk%jNIpnTG zyyEU7;$3`!d>@)O{SPMI_wgeZswq@_I6?=ol?z+(o}GB|%Van9=bZ7Gchl?Ft*70O zQ+g~Y^`aZknj7{*$n&!J=1i!KC4A^Qqe_QbLe=S*RREqIsg<}}KRsl)!@^uI z;EHQ=Yg#7>6TjFp7iWEug81!f?umlI+v|?IhtqoJ@2_U1fnsTEx7c5g!krSRbCh&X zoAHinIuqIk4GV!hX-j%X^*~xnvo3)Ov|Of3N?o1^OiZ-UAYruEd$g{r-q7IuUw2n^ zUH20ThsL?F&LKbe6e{BN*NFZJODS<>yHt(Q#Dankn+<=9QWr<*K4yASl^8YZs~=0^ zp=zs->O_74UwC=>hUz}Nq&I~cM)!2iPg;jB`F-Z5hKH%ClG6MmM%x90dD|??eovkB z!REbDpdf1aOWGer#MZfMuRA-u7}fhc%AM6?PJwMPyO~K{u3z8xL5Ga&QYH#BO{24* zbmM2!arMG>ck3&sPs4;<3PPhC+3NK;j_TzZmDAiif%BF79;&< zUY4u8}x_t$rh?rERfH zo5RZ?H*7*)D<6PYe&{)lNb%12=x9K|kD*X4rQWRC)~fmITHfG;0?fxpgbM#s-3Oi{$|iFr7V@ls&E6==y>JY;l0z4)!jiV%p^(HrDH3?(Vm4%bvZ7_3XUPImUIs zF$QM79~FQ246w$GKw4uoRpx)q$E$4(M$_cg@)(x6Sew^uCk+H%xaYjlz`OZf`{X3g zm}BMMdG(G~14cT|U6il-uYkoCxfY@78b~tZ`&zafw?4s`;IRYCX@3JIR?013M`(J= zd{=+{kVWI}koI;%(>jf})8(WH3D{)}Uud|8YFe$gUp7bSFm0i7~9P zY{SbAcO9i7XIkJQP#S&g5=`5NN>=~DC2Cp_cI#W^Z~o+e*PoijzG@hyD&=A zW7AdaRH{_bD^MJM*vNj(XLUKu5<~`1#aB;y)3kxs)fx1vn@5SydW)etyFk8Ks26c& zX&82JFqXal(&=$|SAyz$z?@qTtGfJQMEtkQkg~4Iio&CAbfbDdhs(p|CEq>^Qc(t~ z=zCC@v!j7Lx=qt|MHAT4m%Z5zw9mo5W_Yr7wlREbt))9bsPS$Bcj31?1k24yu>xM^1n=_(e=m_L!=h3X6<{^JkH5VZshR=?ImKv9aO^E;XXxkV2DZiTZPkv;gks@mIE>&B4GD^m&`)A=o&k7G%ge8-e78<3ivgk=Kw5iwQ)3og0m2$pOyWVM zZ}>X)tw?le)-_1R6iG^W^SRWmGz~JPxtfG0{-?>@606`2BImTqh)1s9!_G zc0bI3sM&vnyd}-8hwPwyxQz01wOtb8!UNV)(}Hf#QgXr%7p3rceDk-zaT;vwyjyWsuiw|~^J-f(uXU(^*!z-F)r z`w*#0YKT<)#{eU=!zmblxmOM194GF*Zfu?pg2-$wm9*jw{`(JRSuft@6jjnHjv&XR zcE68}nopMsIdPe@w&!rVtj*-<8O)mfVsiEZ7@};-u-dFPwB|Qiv@^V{s&-65q?9h# z`U{49{XBh;L#o|#o6%>J73_(vZ|hw%7ALq|MlfslBLCOUFzedG-p zR|oyO_?YI}sr(q^aqTr(rTttQdyI-+o&CC*yTdiv|6;9^w4mW6C;|wBpjSF~YB*nE zT6mrvWb#9{YPc<|M(dRKDI25)Mw=}LH1fV2V9R0rn*&8t0U*>_tqxH#l04Cb=M5{V zh+RFuY~(bnt~bawP!Np3PVl&y0G|L}?}nC`=*2HTm$#BV7C6AiST_@Yh7|hThiUB< zarG%SuZ*)yc4IRRwo=wEx^6`CH=5V3o*yLW`&N$Wee0D(LT_^JD?$?F*u?xMVJ+Ive-* ze~985aRdoWCwzh1HrU5IulvQ%zVNNt3ZP4)CdJ^MGrJ-J*oV*WU4N)6-4732>XLfM zZQ_qhs`LElDK&LbR9EG1oGx>02RJsS6JvP*@SN$(qS&eaHF2vNjf;FKph!NP5%`ld zli_ka3G?3g_B-fT;D?zIsn5=a7-BIjOgslQO(9|-rMP zq-#2C1QkVLtBsdFz1@W={Qs%$I)j>O*KH_@h*G3T2O)s;8af7$-i!2514s>BdKc+R zM+^u`@4a`C&_P6cF9C#rhF-(X_v8LKcjnBU^Y8rJd-lBZ&YszOt#_?wJx}gzV`Z_k z;S@_+XO07nPj)T(|+3A>UBFF zQ6iT#8TNXjSMkY>i){3o3oaA+YgqyghkbUR-t1ZQimX!ti|puIl9D}<3&T9H^@I!a z#fvQX8c7DndI&{OZVeM4B)2HocoG~%7GjJsz(ckjfdN6yF9$K5#F#$ruJCoFVu5Eo z9A3CJ2K!TRi8PpTfLZV@H)boQWb8n7tbu#NPrcMeHM^rTBInYd{;qA+1@1bDrG9b| zuG(2nw&{Py#k1tL**T@Juq*XG>gU-QB>;gdM5J!g=*k$VFOQgh816KQmfY4OoPHsZ z=uio#!pRr6HS42n!=Z;;sS5BpAQYz5`b~1$b;4C%00SLLqK{55(Jv6XOEgX)A)_&~ z>D0>+ea6b-utP9JxV1i72{H4we@dy!Wa>u>n}7Mcu^D;sIF_vVZ^kYCh<5Ms@me$S z)BK9F$MY7kC5MiSR7GDjH4fUcA3j=?n-TRcNW;r)UN{kU*gZoFG!-KAp-EO_?5@e0 zW%t-U5HGiH&$pLP2tt&*!tsf(uW@nkP!I5f5)uYz7^r`|AMrK_IASh^we8mxl!848 znV{Jq&sK|KqdX@NHMMD_RyomANQEJHvWwOJ^zaEC1?w{_D{CmJGaU&L3GH-45Cjrv zkAluM%jGMO!Qvb<$Q)N53(i9JkVev#iwv64wGsr{Gp3)TEO=!)?YWg46MZPYkMAZw zfm+q5npv#C65<0IC)zK_4S-X&!=fF%<;;>(i!`UUK2Pq!-j=UnO9V44K_TtT$%`y0 zuOeibQwk!{8;PTeX-syvgBX>E>$Cy^_;^3t0o0^~j{sH$f(f=X!v6-E|5r}keZE*k?zec5~KLf*&tOz8rjkaQUKZgU;^lmnA24ohHoe` zn#FZp6YQaxIlnG+GIif5WBJo5v)=K-XWAcm44I$&sh%g{obw!(5gbb#yYIky_ z+;@PMbow5WE&36@Bi-K#`SZ%eTc4j>lTk9NaODrE5x!N>fR?pCJ0UrjX$o?DwP$3rG%w#7xOxm(z=^YF~ zWKQ&5vkpg*X`UJO0TC9aN@6C?0r|&9NKsq?e#3;!rg@@843#8 zP?lf|J()O7z2HjS02~}rvR&C=sT*v<1V0$BJM-nLx$hNgi>sUG@!`vF@qJ(TANGkh zX->1OPPX13Pi9c8wVKazNde_1WMPN%&7hBlemvpc zN&Lqlid5t7@IGtv+H?mbcrCl$q`aUTcLRTg*eeOc9Y_c7uuhqbo8%3WQca{S9cU(5JzHOQkB1^4_`?|+y{)^Y9(=t1d{<1V-{#xJI#%?ez(ud0BMkW6(rLJ%| zf`WH-2o*Yib_W1o1>A;a2zAva*p5PZ&NHCX+~FZ%GVV_`gRXZ&_x52|B$nFfprab) zEwH6V{ff!?Id^z)&>g^!FKhqo_Ik0C1WjTR<%KN*B*VVc;u%ctmgd!tJqEA)A~60A z@M~Q4j3M`Y*>WzVdl_Eh$6^^D{CDApozS-VGBw`iKTvAn& zyX4q<5}l^TD&a4N(3Bg=k+c07Sl6U}PrgTw2cFd|NNR&D3~-1>40iIdd<_QFV(MKC1U9 zM^9s$v7>A9rOzHSO`Q&j72ajEzge-`HB3y6E~($CvC?z85r4O?Uxh6&+;+t`98Q&~9_YtppUloDa`^W@0sqMy7_c--pOe_=7#DAI=C}!C2Y0U$rsq>0O z|G&J1{}d4Zt!Vw9FPh%Iv00;R=J&?4%7ZN~a>&&wK$txCE%9qJVi~Hp#7@$BS_ZrrIO((`;Gnt+$?_M%kaS z(Ke>M_XHXUwZasZ#60H>7E9FwIA0gSsA&ux%jV+PJ>?16qBiCGLj`n337MZr{>eX+ zFuJ$s)F8bY?IxBqS6evc`5D}}C}+T$F?zN9W}$GTrk8$#UQeCP&sJsApVi2Qbnvsq zOXNngtQ_Em`5r0f%Pk$;umGR^-?M0f5g7|qQ9BRz&;_W88D(?VGoIjhj<4>LLk5SMWaPzWZ6Miq_h_?2Xv9<0RC*@J`=D@)ygUpKV&&+w^Zk$ffO4Dku~Rc$5#jHk^?Z-X{q`K8 z{a*%`4ExkOwz9z?sYB|?^3>ODz%xl`#4@?qv6v!pLB z#Dei@$UGaAgR;srio8q|hUpoqpMUV1JvkB`&}v0H$11NVaWvSPqzwXXG;M$BM>scSsmbj7s))O!M9qOe zV`Sbt!>I-g{*GIhb2bEOXt*3qg*?@!;Ol<1!AaV5q%J`Not*fA zXV0U8!r@y-mZ{98JsTBFUg!c3_r-Fk)*T@467%|$X$PS*E|~Cv8uOyt5{cy&@mLrQ zy&hh(yzcd$D8|nGH1oZ|JEE`PX|5bAZzA5+@5?oDYD??ixOH7C%1o%9$xGt;lPdw* zhcPIo3q`BeQ=dJ@$x&5(VO|mB1)P3!I{bj$2ajkcW+Gofk>?C>AAsC{Wy90y=f=UCn&iRZZ3e~dd(&ihTMki;hO&cCpWCW5=2m^Kc9;sowg;pgG z(AKwem9qSNF=o+oVf4(OyduLmFKR@`i0`qk&NtlhJ%W?WeS>2YA<8iH})S7J{{ zjylpmvy_K`lmJKR%4WE%Q{eb)1zD}zYOZ*jx zFN*ypzZ6&UlWKmS%1{ONH`tmyjF{zOV*WGrLk7%KzHw5ye==PT!Lc*UkfWCQm|{Y! zn21>u=jo65oc6hEZM*A6-z$V|kEv2RGxcx#ljW%iOMSUBew+w~oMo-HuBO0W2H!@1 z*~K;b?T<)%bZk&%=_sJXv15#d=y$UJCAt3Jb}4y(a=Psf;62F`FySz5eb`{;;)E7` zxU?@X{UOPrg`gy9`T6pq-9u#_Ano(Wi=9{&bbQ94uBP6u<|fYi=7MKpamqGpO1T`Y z<8mM*%sP`e#&}t_7p$m*{8sYDKpw+7SXRqba5`_m^PN)$cQiywWhyda zbCalL_)zf|B;43>ach$#(7rUq*mz7%Zb*JaSTKIajrA!rIpMw24#@wp!0DM^H zz9mC)>T!y*+dKE*LG;UA)|8p(P2r7$YRA76C6!Sw+3&0B&hMwp<^WgzxCUi5n+!DN zG#OhljE#5T@!1X^sSY0oFU929X}nSsXAB(!j~ij!urO^gam-NHaR=}>66$W{NCl%Q z>$}IYG1wbmp(~u*-;j^HA>A$i?38I4RyTGB$j{t-j9J7wt@Vn5H*rq)Mai;WyB@%S6<6a?eN=cNM_Si6Nl+bc65s}(Jm+Q3<-`ri zN%hU@KBgNy`eu~idgwBZvAdHyl`$85`|VBi$i?0|1`J95G|_wg9qu}v((=o%FxdHF z`)q8sRECwL{Gnz@3Y%QUs)~Fm%f;a z1lX;z+b0;f|9-+%rl8TgbCte--HWlz1J7c*ku$>77B_;@a*fN&MIAM065oz`6_(yN zY$f_REBlAB>^^!<@=K)%cnNcLqnzz>^3tN0(&ar9X8V|;vi7SBKlc^>L`Wc(7_Bb& zcr>$?(+AC772UcxqmXvgh}monVY{?=lRE-&Xf zKdV3F>QuATeIT=oldiTiHWscbJg+PDFw^mRp&gB_e>Q(tI`5*QKF|t9Epc7`9Av2L z@gCb&`1-{+@9)j*b+^&qRrx6iw%57Mf7mG|L+jXi$;Wxl@OMy8ej4ILW#)P#7g9cy zyA;wIWlM6WCkfTQyFbj(0)(n3ar^n>+axeZ>8Lfw;-n=78RN>b76ER2=7;{8Hk!Eb zIt$O5r7sjVMmVyV888|b1vKHie04eyAyxY^grrk_r1h%7NnrpXn6&lZNZ$W-o zG**QuWVLrlnRJd%XW`YE@VtLgvlT~B>IqWjuz(0oK$y>JJ%4bB`RS@ZHoT0TGSXr!lYl2-c0ewx;J(qe12(vtb&J|+5=icCA z{R-)i2;l*g-W|Y38-o)%^uZ=G_!@Y9(-Vb*v8exNJ*yO1W~*niy+_!%D)>d)eii2B j?5GSu%>=5D^WnYc0E!o~Ow1EY|84mAe~w$Bck}-P@>Qf> literal 122781 zcmdp-^-~Ap=lQ@zC&T2?&XJq|u3i+9bSIr0?hqJijDoLh1QrbPTOC zikBHgbp4x}JHG!WW8@bQ2I+f!NK2nz5|j;%Y-jTIYxyN)6A)3+ISjk{r-O&b0RBr63Mv{L`oDfdJOKPZfkS{tK!Qg>L&rq<4+sDW84n+YfR>O46(~(a$E$5c zEQ3a`^AF=U2`QhxwQa`y62Gn<$SbY5Y55leqmZmzXi9p?cj%R%e0XYG`;WhC0L*_+ z508g{2ap78?~;!2#M%7+dYaO0xz1s18FS zrl~j1dFGrWU_gN@})c5dZ~?L8f4fjpLt`!VBJ{W$yF{94g52! z?0CmXz;n}1={5WTFH3~s05hHjgjvOF)RfE>vP?Fp={akDO#o6;YS|bUU)H%Ie@D(f z)p{_S+phMbwMkl&rZ+a?UjIXKv#zRG1fNYdvO}TFiuycg`FmV7CY|w~#A!wj zeV&ekNY|0;y;>~gc*l-FIR{N}?Oo06gVksZix1|6<+K7{x`gxH+F zZid($-WLp8a3#&Fnv|{xM0}s)Tf0fTyj8h2L2ol{T|4^}yX=dctDkPe%-hVH93j5x zC!{KpQ)@y`^3A9_g$+6pC+E2giV`?*Hf}M!m>^;Cg>HIWnN^$jUpVTWsjf2Z+6uf^ z7eV2G%xj&ItI(vWefl6cO#Gvn0nv$(cNElz%H!;JLKAQKIF}v<}ctC?|SoURYu`jGyCrFP`!3C zw!N=aFj3n!=+_crIS02B^D1wZ4d>zvz5I{rFER5I)otF)-P|Sb)Ui#*7+`PIwJR&W z0pDtp9IEdXBh|bh7|CGhs=@l_f z3>>ZNr<*S?;e48i$$0JJ_;#^s23o(4?u2JBKDE14? zHT?_7aVpVKn9PK45gd)+W#ChPc5k{Y#Xkq0*5tvL`vNX zxO@e>zu=|NyL~k-E4%l> zgOJ97((dCW?!~J%5K`WId0+HV*9brJ4<;^hj2p`RwsK`@+5&mmgF0;IoRXUl&n3=- zPz3*aD0C+Qhryat`=kn0^Q$vHff5zad%j$XIpAdxMX_8T-pqYUfn(coLt zf}Y$&{f)5jux-8ZEoWdRiJyqyfP4qb%T$P-k$eI>0( zPaW5{jgTSW`sc;2i+KJ|^kpZE&sFQrRLb@lx4s*xOeZIo+LtD$q(zAxuu?>Vs>Wpc z5>llZ`m&X}Ox`Q57uk{5GD(AUB?X8`s8LABG4NO7N`9^I#m3tw<>@+6Q*8>ytuwNc zo}l5n#W>+=e8^LgA|M?(Q{1{*H@r_M?Dt63SIgx*-z}d(D_X6wjcbX-V77u!rq`ie z(mKF}Pb#sZ3gfOX>=5DUv)Qol9(LDU^s(t^Sl6ZZU3L3FoZCZsIFm*7!>~K|PsDOm z9NiS@=fiVrS&zh>4W|u5bKfmpw&QI>B3B^QOb0h zVYn-2^T8Hpp_Ol+z(8vPdWmX>oR^OJdv2Bdkp-h{Qr1C|ylG4|3}P!-oOW-`^#z1V zilp5we%)s{9`!z@zT2lEmqSx$>;6xi(V?rv8t*!d6<=2ri$@+>_jOEk;=VHy9mOy% z$U_=p+5IipJbu)Sr><~peBo&7SK$;iQ9Ik)N#t07u?Upp@tKZ zZ?eSd3Ks0jnf5D(2f}b@9(FCC^0VQY$Hr-H?!3VZBiR-`I78AEuu=kfFWRAy4I%h&Z`D> zN>?mGdwP?z`(y*&nU#lgah=c-Pk-B?mcK$%xzi7L+?#Kga?(=Jlq+tS@-G%;E30;WBrnqO1En~mqTv+=UBG%nBoODUi^AvexzlfNC3JFx7%Xhp)Qe7JoXaC>kJfcq=+red zSldN7`b>ZoP7O(imSWPZ(&-?v7;M6F;c^<)=QZ2_L@Vk&oj_ViW(mo6cFymWcl#vf z$vqpKg%5PKno%;sSZ|1(goWSnWsS0bMbgoCJvYYMLC;-p@g%~W*5_1FWSt|)ff zV?Zu9ZQHE>Juh+Surg_o*`@salA9P;1BztFM0*`y9Nyi1{Xrk@v>)R*RNsAnDLt4> z6fqCZUumD(Fqz4wxTxe&fNAGM$mHA9)(0Rljt75k99L()H$!vyeXYLM7paW8I4od| z%5=#hCN}&D!Z3SH;5dF_=5i9;Ivm%x1NQAufz9b~Y>PSwdACosMMc~8_%E;Zm?07v zZRDom1&)K(M(aa4Q#?w{R`~D5ITo)tBDv>0-^3xiy?)LU?Hm$?iOwwP8&@C6XDB;X zooR~A#9!m9PF#HmIYAd&vlbqD;aeCZB&h_>JGJ*#5u`suRq_1@c^Y(JywD7#AI#?~ z?8&8E2g&3^_|&C}Dju)|J}ep|iK4!Tz`;}YJXGERm#nr@3zO|n3M2a@+8Ot5aREXh z@lr;1=%Hrqj(TKKrRjD|@!ihm;h)nXHQQF;2>k&|JL}FZ&ZcIM$t>(1q*BfdRm1>% ziw4#a`DPVJQZ^AGuL2LsLqd<)+s^X5??(h;tp~$Zk%@@!pA(hWuq@r~jD+xXlgEl4 z{WOxKMwHQzt2nQA##(|m88%tFh$wdcthU#Fj45<&G|HCY`H0YZxfJ0fEf~BENft2D zX-f3iOTpKPDUi37Q@hj4kZ+C&ESm2MK{mNH{tHm3-Tu|XL5;e@?b4MIGjo{e0{MN; zp;~GLSw3-^#){RRPgq7fIThsh36ZB`8${G`&bCn*!Q&)cZdpztOAlKMFAtTk!5`?L z@T|uCjzGummi&h*3NR9Qb^6}PRCD*DuUWwaoO9kHawM&1X{I#0&aPf_V8lo7!*=DX zeC(LTAkP<#UaLwB#_iXloj~F;Ur!|R{|g9d?d>+c>vc(wP&;4F@`@{uVTrq*M%NMW zwEh~Il^ELCDOE;8zvCwGw1jT3!kL_ZtTXgcWo7A@npp08!IIE!+? z8(WL1(!uX#N?TmKC@JhszJZ>FL4t*5MWCW;AJWUOP-pEixgQG8>xXaqR4a&8LJ#9Y znzj^=06FoR4%J%s-%H&4-K+0?7frm3;zJ)*WHbgT=BCIDZ5UlZs&IyAQy!MB`wHgh zpmltT6G}$6&H7aW)}~~o(B_iB2qCW%v`Wh#)XvUM4uhOCfOjKX;LFXpv*=|N30(5F zG>}#1rxG^C8Gf|OgoKnbX@YFN&p}YL^4e-ImtSsT#L>Fh$w08;(5mb59~Pl;NO7{# z*@}vifcH@ht1f+ZlG46tI1f6|5_bx666n*mTV21(gud!2YM-ujWM)P=BL;#bV|O=$ z@|5d7LmlPxiuH8SqUh1f0Yum=$^bf-msK9pJG zss`HE6S4lMe_2hcCCIh-om5 zQBM^uFDbZq)lWxreUaL@++^vmAN@E9 zv*bqJUIZnrW(qATs9!AJyG=^q_Y1i=c{WDfPX zIt5`wRyJet;NxqQSo8iB|LQO!qY^9%@o!bc`aGdxam>Gy(h!Pww#WAA{C6t8tU#49 zTzf2No`Nl-Dh014zPr?yzt=wwWkGxiatj0sdQ0P{6XY1>4zfnUt3)s2aGKIAJza_9 z`@G+(A5TlDh%bnQ*--QxK?R~F`JG9lE7XCcqOQ36D4z4Rxwy^j<`~?vYdpl0%#awZ z99Rn3$ZJ)R5Mq3LrbcKQBAIH2{iOx6k2Cyq)F1HT2aHb3>GE)7HbLKBlM;cz9BcxE z&0&Iy>PsZIWrHsHauKa&skLAFA`1%E9X!+`#E|GOY9&re@}1uEvPsy|BB+g7MP5;# z;ljE;1!tC)kV-w9cIi@eBuI9aIMR@)&c(M?=na`e*8TnqK8O zYL)Gb$>$>ESnAWFEfY!wzECF8C(zOtiB410zL#w>f*-3L9Jht*r|{(<{=SPHx27*& z_h8Ip%U+*NOYvsSJL+1~lWw^buH2)X44IW-;typ`ieJsN5(eht$dQ5YVa5K<9D=83ALxEktt;LuL>;cv+90Z}WLaPDIw zn$YrOs+t#i)bP5Th1lH+xLuqrwsoz{FP$E{+_&hgfi~pUvEl>Ay;jB0ea^(D`BX28 zazyCzb@bw^^=#;Z-m_jew>Hx&H7n`Jrv-FsO|O@vC^I#!(0rC99kCYy{ZEXRrv(o- zh_%mg2`FHs*PIGSOq<*8jq=*LT!4wroPDOeK4*o?JJ4%sXb}*i0|7w5yRXJ54h9=n z^#odM?N)zYy9CnYf`Ci$Uqp-9)6vjtOVGMM5%r7*6R`dm$DWdFwqD&OT+G(~fsID9 z6q*;Y59hp0)_#A^f-%xoWLj7x!x*-1CfH-;8{_oYmyQ2{i{i?5Op~WKoc3G!4fzDz z%0c`7i==1smhN7!?7D`RZmA`N$XIZKSuVQY}PlR z4eG*OzEQ1{jwYj1_d%piR+8GWWP0rq+izaY6m1zui95BtVypMQ01=Cx2(jKiZ#c^o zyd@l#V-WtHTl&HS!_uXTIqbye*=*#g;L^Q!ZnW|aA>~7k>yU45{1(j7wgCm0n5f&- zxjO0AYwDMHUf$%UQdd8Lv#MK2EwYncAe^FXuWXltM>Kw3Tu0wLPD`UftDhk=K@*`f zV=zcJpc#B<@!8AoK|bimD=;|2H}aV4^5NUt?d#Sqkh$1A7Nq-2F;b+30i0o;{wqa)~!&Ha?FzddUU6iYKJ zP~x~nSiUmo3`2Z;`pw!xSL><-qYvcO;ttOAo^CgKWaw#Fh+5OqK4exA(K4gkDO+24Dg=|IX4?p3O(nO7I(2{mWj?LPn+nXa?<ioXD|lMTV1p2q<(Kb$DG{pWGJ+~=(=%fA33w3_j83EQ`* z2t+WGV2sGy$#dmqQ6Z^oC^2q0zke(O?Uj`0W$^y%l#xXgV-^5cO8jH5FV*_q9ey+< zZ~ja0dzgCL8Pf{SJ&S0^w#nxjIL-J^6aDv$(#noeTv0~9GNhkeQ?<9Vzh{cVFY(#8 z$(1e)k1bZWsbuvzQw;xv*39F|oTn-FW2y?#5l>guL)mR@kwv=uy|X{w%=!Y&ZwCr5 z5^D8}_Z=L7Y;&HvzTrk(c3BD0mLvK@yTP?&Ch3j;l|hi?_dSdr}_ zcbeBzLE4$cm*Y$}^?V2Tb(YhpGfQ)uS<@!w`Oh`fkre89%YwC}e?ag(lBxE$YkFS-B?xqMHT%mrr zJww{cB&v##O+_^Nf1B|=TB-LxYd{k%2JAHge^hpvnz`(@_(Nl?aF;h)V+z(})F=IK z$;*0U?>-X+-sww3KKQ~NaJbwlh~J|f%)JrU{fgA-V28#AmHIMMMoxsdqWp5o6<3Zyx3xA>FH zQivMr#Q|LxXi@ja;fKTWW9$CxPWE$;u_tbuIga-&0Me3@Re6B9w%yq6qM@nDZTLIH96a!`s~Z*hl2Ebkc=!Zq&HeBK!2kC*eBRg=RqV= zJk~^dZ1s}@z0xkWm}P~%ywWC_JpmMD?yYe7b~d@?WL=u;UPPc8ZZYv;1^7TWjx3Qs zVg8liaUL_jyTyJ4$|cc>{37&IF?oQ$-V&yy-%-Sjy4$3uMT#5!ey-!I;@ffiGH%?K%inuYPPA#tlcNLOG%QnhjWzem z+Nql4<&{5s_8dc!M(B!rj;k$8*S9?@a{R`uuSV6F@Z>2y26sB z9bvLRc9Q8f1UkJR4410|)wijG-rxHyrzUR0 z%#__+IatB_4c2I}-w-`Vn!hSC>QV|oQ1LVHc&-e1e^|4}(0T{2DcoeYLY?brjSbm7 zv^36AoMa4)rzS^7gbT7w#bkg)B=xvDI_j2p%3=8R$5MAdnRojSIb9El7k*o)ntj`d z&(jYEJGBy5uNx140pYJd|4{dS()?LS@UK3gpY5Xm*X3WpM)1`o_4mWLY2y}aPxOoL zrlI+MCaEfJ-6!@y3H2e&3AhFP-!G)^UGnJK*c{+{)GXX|6D{wkr?QqIPw<#yccOWvJl$53()-2UqFTC zT8Q#p!H189vX?Vo|D08m?)KkGy zlIA^^4d&h7NK5x|%%>Xft^NYO>h_No z-QvRC!JRJ7&Y}E_@|Gx}u{!!eUE9?Em1$4v4o6d?=P2-objqP;ji89?6>&@F31^4u z=|!TT_*u5`wCS=4Z+4sKBe&nvK;6xeWLmJO9e+Rs3Lth^A$U3cOyJ}GW6548q2AN)|q=MKu(YI!$3m@?L z#=~|#e8YaPBKBoHuW7Mu5;GtnFCHv7`miud2C?VSh)V~@Y)y($b&^(aHGZTD{lS0> zk7E??Ss?y~?=>4sv6wlJ*2(joTSryL{m5Rz3Kx5ti3eghl9V6iTfLdijXk6RfTx8@ z0U4==Me+b9irRv(t-u~PA(tffJ9Lf-{6HN6p6grQxp>L~ zd-~0+@@r*ou!ry?V!tIW#@zu|kl!gRD+o~(XG*a?>=C7SCT~sr{<8KQ_aVr~?O#2Q zz=KnNSgT$|ne)v&=K?or0;$SyC-@GMAE`j7&y`m~FPRmApK!Z{A|bT!(v%**qshTQ z7a77t+MUzm0MEXowNY1`&3ydoH8l-!T@hHRr8D7RoIeZ1$}+LZkw7x$FR(^#;>lGA zn2@lrfWBHtpM|)a`N7T~{~6CyWJtkWKI+2}!am+nh{-jM=8$A#-_z5ln>o50YN0c2 zsmG{Sd?m@u14-#K#TL}4;K-m?z&FazA)mj9KIZ;2)ysy=8$v|SxTp8uS0Y1b&O&H# z)+A|OUKRWMf{p&5Fh2$bsZpkhQVk)T!puGg&mW1)-eBH7c>@4+EB7){PgU-J*Hie&ZNutY79{dtVi>T$hJ2ID_dC9Z6OOdt z(##AZ1YrHqg2R78CFvh4TnhR~q<0BhoKr!*gL?}23Lu>={hv7D{2%6bJ61;};$K2$ zsLjJpBr}6P^_+>FHsapSN}&XKQy=2-`K?9{fIyFl7Fuw3mxrrEMHT_yKjq0YAyoZPY>A9Y&(ZPk5sZo9lE_rZ^-rm!&(cGw@ zIs*t+YMAHG>ZxeUj^}OW+~4nX$4>MxD^vHk(`i`L-?-#)q^8BL{wpw-UeGV6oL%r@zy9)!%}x2v9#q!AAn9W+dfOaIS)-fYcJB#g|RUd=GP< zegJ{+;uOE0Muo=k)g;1kGAn0q&g542uc?NlN_74L9#B(@ZePNsaSi}?r;|q^vzdFk zgpv-)@IJ5bMUk()0}X$u`n3ROC|9^)H{377AUWB_yE_22`CF(JfQ=MzSs(VY!}xE_ z!Mg*QzXsxD0bWD+qNVz+Zs2YL(LN*o1%Pn2i&dy)P|nT}#qLh0tgfB{|6^KH|4gf2 zN+wtyCv&#`bFlP*U~pux$1PWuC>-@~e5Q~pi%bXZK-4Fn8(aW&@T)^da*t_TNv z{257l;?Po;->FeAl_n)2go3l63FR!Gm!zp4b4ET(R9X&c5ycMST@CbYab3VeCu@vT zZW(~bjI2n+tC-uJ6L+b);eRrj9#1=B3?y(D-@IKJY5`EA1FqhdZ+C4SL0h9lV>O!KAjPD*$?D&(C$P^hy_Hb+d)rgS8p0OY zXH`|Oi1BTtg}v~^T>9>EL8-I+v#1C|HA5Eod&iZae|-OkQfGpE_pjs}*o|0ug5@#q zLLA({6arbl{|vP31}BE=b0R+m zF87$j+FSyIIS+-TYNlme{A8Rt+sZ9U^BYqjb;wKaa;PjRgc3m4Iu)k%xW3t@pd5!7 zsQxjX{yJL-Bp*9%+S78 zPj}hR;UqHVWA3QF-3ki6I9oT)b^Y4IsmR}>E!bn^T94K9HfEeN_NY+805z*QQ?)$x z4_@dV^;!oFNQ3E#cmh9KX#X52EhnyrR$37E#1B$c7q6T_>iDV>?|V#E$A|A1+Go-W zgUNR7rUZPcRD9$iLIvyU;HHQxgwUb4#SKZd7F-Yr&E zCRGTOCEtv7vdC{%Q}vcUoqUKhN?tpWE_tj@%n&M&8(DZrw^7dl%o^7~E}jeRHVx82 zaltJ`pebKG-pNr09H7(gN@cE+0)|IY#CtF%ad6fIMbKFLXkuPKCKD2**KMQGHY_s< z>I;@{r@x?On#Jrref;Hi)zaC~>@j08lKd>t67+i0^XBc%M8;9Wl5iH_~oDctnVnvo~njH0YH{Wr4;qW1LNaJGU&Z=iFUyzOH;}mgTRhiG<3280&u(tF{yOJv>7zfpR;<1rP`{LGbM--v zRYPyec%~$5x4Xcp3>A)UuwtF}O4z3#GV3s70H7L)hpn_5st>5l>7$l0Wqc^wIx~1y zW5G|q*5i*Wzk0VWk9UmS{f-D9rO!Tlwu#&C-?UJ=y0qOY znLcPkJ_x?{R+PjV| zjbcpWMPE~yjf z9=$P_1lcinqQN#Q3z1(1vJOV9mb>R}s%Mmc;=TUA7_p$~NX5i!I32c(PrSC!GJ$#_)b-F#MT2wh~V`lKRDd3A=XJ9bBXv02b&s7w8P2TCD( zuI|6z0j&JAjH}x!2^rj>Om-uRi)Cj;WL+AL=j%j^zKa4(gp7h-YrrcpgZA;tHp^2E zdO90pz7K>4-CyI47FR#oj(vr_9<;f6uM|^KRBj2mG2z)S9yi@AL)!XzW>11-t=8PS zWb%*mHM&(Pe00FXqe{v-IK}ozw=QW$>gfqiMvQT%^K&T#^z_|!blRhRY%Py; zI%_Zc4ad{($h)jb_R8y}!^+zk%;O&<4(ZGzZCh&SOx~?_71SxU#D3BG+908$Uc6(6 zOI#h7>L6dqBrpQo*%*zm?=F{>KIbR|eVAbKO5dF-HI8Z#ZGoouneWg#>@6zyeu$W6 zWWudcQm)ucS->orW={3hprlueeP$TSv_eAj?hO`Wk=lkWQPlrRbvBk%7utwsFkE|V81CG|F}jQ)$8a5HiMrFby; z-+7-dRqPut3$iFUD+NphFjT9|A!P)V(+@=6I5)o6qysD9-D%Y)7xwUAe6s2 z*c5P^?-?!hF^Cfbs#+~1w@X)BRCNBHRE!hs!RKvTC9-UnOWXHv_Ha_*%h7&`i327j zeNxs}sxkAhFWO`&HnLR-6nq;qSlWhRCG;4kC_vq{m)!SS%-ctTh3ZxB?lKfcmY%`Z z^V#?$U2WCk#T@cECo*4`tM{RTOTLO`O{?$S(yO-CkLc>GXS%UfgN{~K^<9GueT1;I zF?z>!L16R>HhVHnzApw#BB`C6+RN&RM1z~3FJ(3>vzkBm%bC&EnqV$R8}Y=)_bNI0 zD+#5l(`aa+q4fXwap&t9iZ74Cb11*orty8R{Ut1amF0AX#+b7;-~88ZfOFk|jT|_n z_d5x3UTw>32$Gm#rl)JTTNEUgrQ*_fbV5|_e4Q0NU53e_$|c~^5E?icpOmvuC#(M% z98dJXw9q^6vfM$o5Vv2$UseQDj=gi%;%{zwt{2m(@d@d>N8wZP@<))b(tVWSE{u> zRpCd2UoqfYae{G zZ#AjhNkya@m2Ho#wR%!J23hG8b(>p!@U|}I+@BK)j#gVr(DvUP5a1Zve5C21KPNis zbYx3)vs-)=DP1?*|F!Y$OmImbLPVM^U%WlmThG87J377o$*$G8M2T@)=nKVnKm52$ z9oX$%jeL!ecX}JhZq-?Q;!}#D!`i6D(zryj5Qc@F(DG6cxlR}MgbD|~UX%T+NX)5~ z=qbCPxHPftS`gL640I{*ys*tLepnz#EhC68@|0QwD$w}K(7MI3_QBbvzqzk_xytmb z#DrDT_>()U`*iy;_rtk@i@F7O|jGFkxzm+Bnq8 zd?{38Dwph9{ct}DO+hGucXEX0Nm&8g3`xg0gsuy3fM5I&eC(TpVs^yB#xS`_c?OC2 z*1B1*i|g<;)`2w8Um`J~K_UA4;=UbR>_gSFcanPd1dZ>DM8)p?X6^6AjP4S*(hGyv zT($`&et+sjeTo-XtXMeuiJXua{v1yX@~cPRyLNjo;J6h+9v{qs=SoT8z;*fs=D0!`X~C^r%o35RoT;0>76&O zH!^5oXOD7$W2vd?_3P_9PbVKg{sqXF&ly2w1LNO>5JAfi`a*;!aMduwRf8`X0_i0Q zyBj^1y!7kqcV-AGV5znC*UD-eKT~Hmjfpxi>OopIOnv1$a7)7}{Oe*yW__ArJzJAn zx>*Vu-p@|6Y8a?q&WR)4YOPh_KGwdW^Y|2~v&j8H?;`}>;LLnbT)TKnek{y4Y8Fpy>J6+k^AC{P%a_S5VId00x_`!|Ho3t1*i8G& zI!j&1CeX(@J~FM6H5CYCKW%2_ENga1et5t#Zed$1)e+ms6Wnze*sh*AJJs|;`Wj?o zqIyBdWXJzjzp^+dpfYXhj*pij?U!7qk~b>@>|g%A7xC!;+#{FMN8DkDkG{pzQtN)Z5*C)NxCRYs$|^1YwZe|G^yFk%c-R8u}P-v zzWUR~XVxfbWfB@uHLPjCb3V|*B2X<3>qOAmTaUKo;+?I8)hRgIPSTc!_^JA1yqh;j_Qghd(ZyJWr2sEbS-U7*#5&4Dv_l3A9BpntGq(| z+z5rRp&E%`ahlU1iBvbgr-`rtFFl#=9SK@QEmtd~QZ)=V&Z(68m261D`F+(c)xy_( z5(>dHKcezBN}148%hBz9_THGpjc0r-Ro~7=eY#qFu&NpLNbBeLwBYDvE0D*9(f2(I zu|Gg1e#b?=T;n&C_V+EW*0b*l9Ac9M0wR`lJ2)>*hS}6H?^uNx=9!DT_m!~8G3mMK#j3XK`_kt0_1MH;l5Q!ulK!L2HG+B5X4P*EY$_x{pR~E28?Rjq#d$#Iuog-*hjw%f!UUWr$U7;f)oL zvC>^}ysNZwI2|Tj;3<3QGFZk2{*YefQYmz&k zIGC|~Qwc|SC>ah)*EC#|8(a7G7an{Hi|CmYT&fSUr@(POgetMcper509!`z|seap)8%vdUm3yQ^cGUnBr9(4V@iziH{-3 zR4l_IfMn(kH3f@|f4qlM5ox88VO7oF&PH&+N3cTNoyG#vU|)#W;H;1g&CG`43QT`9 z#PVM7Vqwf%DFutaPmWX$eC-g0Ns>Xozcx41t~k-GD>uyvEgCj_$e1}x+WH>DH_)H?^dtqFvM~LEsZiyUr;;kgErdln34VjXR z6yhoHP?LPh!TT57_Rn5xd`SH0Aqz~N5Dc}jyd(~U6uQRj!bW_(7mpb4Hx-|ZsuW)* zZC^o?LbMNelXM1WApmuLq6b6hI0xG$l|lqC z7AS!DZsHtEs_KX84Pq%_I56XfD!t?S7IdUfFxfugISVrG*`I09(py2gr<6?x=09VH z#wt~a@{shgTkXg63{xa@oW66luYJZ#m?~fXbr&+~Gqq=W+7q$(e2((&flNajGVw$1 zb+Cuq}nuTAVD;PB+6w(P2}kh&TX!n$A>LEnY)^=JU3 zU0HLHNsoSbQt|~ofz!aCysGLt@T0+`?F2^7>F|^VRb}ZI9H-|Csdh^ zfA>^&d!&bZgtGV;$dy)lDI7&8hl%tUOnY}EhCTWic-gQHo0ag2Jh|0=igC(4pxcK0 z%Pkz9o}RAU{maOa&eGr{!6_cTyh9l%`U?osQ-t-u22z{<1@I*n$%#Hjr47zS1viiU zCr^=LNqJ90L+N+A4~O@Hhdp2@hiM6i`)U{e#u7q5xPN>M3oZgM3SBnXG(IKX9V)n)MobC4NI1Tm^GCf>dT* zw5DIaZKk=vPwm#6X#=f~{ahF<{ugmy71egP_8AHkEe^%q-L-gdcPs8*+#L$R1Hs+h z-HSWLU5dLFw|6+R)|~Urnwhoc?z_l8`y#p6*;)IMpFF%jT#4%K#`V9a7!vu}^Huq( zw#kR~Yk+Ot>b34Ayv71aGa*#71+cUzdblEhW3FU8?J$^pQYoic74*N9M(~mU7Bvcd z@t@3LPT0yMcgfHB)f`&qM6W9Z@i@z5Y}fR5J6}jx&`#07ei5KED~xaG7q$yZvT?r# z|5jnQ>C$Pik9ZUD4`UO*_d@#+BA2S8{R61|de=n#LZiEB!ytdNYtQdc&+4HNRZSaT zjZHQZl9GPkWtNexg3b!1Ne{F9qYN<=olXN=jrA#!_467DD~kj=6gmc)za@`CxiP=Xyk&XT0O`~y7o@6M$-f&P00{VP#r;J7Nhnu^E&x5GhWrDE z!0HiI7Qgq`4~GC?qfvh!snDWYpmdg|)GW}Hh&iEzboZoOJ;@450HA2Sq^e)YgmQ_V z%X8yuGEM+OUGJ7}hG?h@M{p-}#g6{~WJ{mp{9b#=&`ujrOXA@_U=JY7uTKs=7{!-+ z2Hi4{fK(B+{$cV>8OEB7LT#|RJh*}x3#UY;B*>5u>%hP}{WjdqGr89KmfFMbxDej0fV~cBylE@MV&kHO&^q<)mvFW0z+smB> zRT9Gb@*q88xs81@L$2t*q+*Hd+cR-SL|#Fqguwn=ZMP)yCAXyv41dh63;r@&*;~9g zkX+LvVv96e)k@sez0#V*n6E6BL`t%CG)U*+l5OAS^3k`3Evc%0xhbV}>7uEPL6DD$ zt86l*jEQ=2T;q`4r%G4Bg$phyb>KFwygn5nj`nBE_ojsO>B1(82BMLZ$Xdiv2ZoCJ z$XOAJ`{W59Y`yELaw@s<=A_U+(zrwHQ4CJe=3lK=@Gs((tX)5P$q3Ky0use2fb8so z$D$lgmR#?+nvx~lu{k``2G#<@&J=GuC>y9DY{5fBaBQD5fSleaopc6|N8Un z?2~TO2oYlbxK@Kgr=N1Bq@q}r_GNb9Rb=~%zIh+Hxlcc!p{z5)eXqEN7>tU)RGWcuFGTYuMPGg-CH$W! z_kSAua18t*R{_xC`k(~*>jwq~#+}i=v;3Z$TN3<4HvJ5WH2%2jbX)==M4r(E#izZ| zKA`6bQy<9bh+trZH=M*%oC!(z+>!Au$uh;Jw^R@7!!$gW?=b2DFlPtzFK-|q;te{F zBo_(y4xM-a(0k+pcT#B3qa3nS_5lcs2=&xLe+xMR7_{G!!R;yki{5hoIslNWdwtzB zX88kWp#14>sSIBDPxvc+ch|!cAkOa}K-O}~a4p(p9UCy_ov=W0sPT9Tg*z z-x*EWmG!yMgEW)_`-9#T3Iih|o`)(5^%VFno;6M?2p<9RK?xFfdz2*+wh(!ah|_=b z6QAp$6R)Tl!VGiyMs`TNR6vE+!DL)ZP08Jy8V`daeW=b5o!BxMV$~8~h7<|xEiAi4 z!$b;X6xTY5FO}g`(PU??`+%p%XNIeV&lOc1@P(r0uv0XB$8FeE1wdA5BST z`y+HHk~o)~q-CjxFOay~VR9KYZ;FH?<0#$ubVhvtO{m+EEo4M0k3^Xk(p_-82h8&A zA>$4I>vsB_3$Wn0^0~YF6agnD{D)MrTl5w)!fosAW9T_MmQFg$+i;QOm+l%0o`b{+V9cb4TlO zQXVY4?faT5^zrSi<)rB6|3)Q59} zT!p{XOOi|w;Imqyt>JRIXP~}k(Ut79xQa-_Blr%XpfXLJs!Qw{k9D|K3-(?ZTHbd* zFR~sBlHCJ~n#8j=3+Nq``IwW_aXt=g=~k-=iIT+-=tU$rM_R&eV1FLu-<#FT%CQ%- zw@l>RLb(uNHN{U`=dkT)BSjL7_f*XsO&04YwW*&>A4c0}>16e?ZX2a_ohLK1iAkcH z`NHE~{pY|D6i2Sra#kTZxwrVz#mCM#tNmS$vF{r;W&(ZN=ZTopTW>R|CQKS4j46yd zTL}zUxK8^|Uh0{_RDdUfhy-p&AeiZd<6E zcfpx43qHeU?Y^XW#Tm1gnuGeFE|CKW{9#{fMjZ)TCPDXr&*XIz35sXdu=Z_Sl^FnJ(e|7lj~tc&rMfjP1@Cm0&loD6^nrPZ|0LTISJ?dEFnvVgJn z>DS{-ylaHOxxbCS=o7k5Z#s8$g#VpbC6J)f1zW5T7G^>Pjn~V?ZSGZ2T%Yt?RO(#G zw+nEQja%Z7jDB#X@@khwhy2+Dx`y>n3sQg&(O-k%YkQ0JWUYv2uiE9M$^-?buCP(T zk=z)$&P6&~x^>y>e1>naYZwuM$wp8VV#ApX2Qc2BjxWFReOhUgrN&O0=jn?_gj$Zv z_+!Z26_6-|-#ocrgL9xKP;A(SIt)4}53Wk8Ubz=4OO#QCM>Tu&S*9U+n8wZjqy_*f zs?bKDn$!~h5e$lk{(FW@D)`Zh+p#qIbB_EqvY~H4$7DTzv^Azyk}V_d`%f0gfDR-b zC4*k=>s1611t2{4*?ebdyFEnGKMJxQY0xcHp@)2(_~uuku?+n>oMJe#9~`$!U{fEr z`kln^8_c_7-ug-fecXIpX@L`N+>MNg|EAoQsb)9TTiNATV)kz_<__!1z9j{mDj02L zH{`9WgUk(L0BlvR6|VlpdolyUK%vq3$>3ibTyRqraImN!W(SXMZYP|v4Qc>W~xW9e%e zG3t8a&bW?Vl`-W*Y*#@PXGZSFVw_V|#Mgw2!ch)!T%wc)l^G^rIg~Y}^g#`Nu)z=h$){dnw9RZ6 z(4VEKhU<-qv%0~mEk=#xiAu4EV>^muU5<`ABxH64gY^lK*fPOGS4Q6u1PkOMlN^r3 z=me{cS67G+#GuxHa22RuF{DI5q@V|6YIZ0=J*JKRk;QI>9 zFo6)bZ~A`G7nBfPWGB^z<8=?lxl< zADG&jnVcY1PGVthMolXR*jVWtM)QDfRcuy)aEGjFS8a(QHi`Zxov%!$rWt&m`!E`& z%&10WN8~1{{yCLxJ)|G$Q)zfEmhj+Z>%xI>Q~>OwkPL2BQ)@xVy&B~dRH>Vn-X=FK zGawiIA+&?D7N5sbTZv1Ot6Xp`Pr1%Tih#70w17NT5%(M!EbY8^qvtf41+J&d`Jx;u zk$ORE0{Gv)9TAJI*~DlYXqr;0p|iUoRxFkluBbIWHmhtB&wbIa%)=b z7Pr|mh(OImJbV(Yt_ic1Vu`vcCb$P2nhPt36A&~GTf8Y{HNIGG=N`$&A*Vi;z;`kM zB19U-vIGnaLe>2$$Yg9)f{nVjVwM}&wE{>eJAzw9mNVGt+1vC?S4o%JVO>j_zaeik zne##2{`85IR4_2`mQ*+u-aBv?FLQnLYIlDa)_zvw{Ic9qdkM|69L-0yee&$RqL~XC zuA?)ojmt)pwtSldTTM(MnS5vj88$xL%0KXj7tR!6Wup7}qQ2WaIc;vFl!iu<@-N`5 z3_I4aig>0-A(@E0DLj-2P=wutw`RBE_dD~V&gpcQR?ASe*#hlBBZ{aPi@(_r6Zs4K z(D3qXLU=nFaRMn2U!tw9>!(?;b^a_HhZ^|`|;yF~=` zRS6cBZ$Pi0DIHfsXAWnjHDg?UfmVKGYduZ3Nk3C8O!^tuR;<*%tY>TY2n883if{SU z?6zZ!YPg>lom`@P3Q{|gYw{Zf6?`;yCdwduv8G%hRie%OhB!@YRD)b-A(bCu7VLQN z_Y%I?0(WGB?qoj_;^XKwrSKdZ?>cr*?;LK<`a6#kpU*buS)_?&o+MT#LCE*EI+NW7 z&U_?neg!Gm-fKQ2Y(^GXJ)2)Ov_NeenO+U=)FPrF+)9yiHUdDE$w(2PW~`jI15YnOVlv7 zsz0zlkJPP{4|aBH{7g$*^FWxkGH$1XC7;o>-ajNHk)c#$_84{JVkGdx>Lt<@-X%*} zmOgrvwg3`rd@u1h+jlYGrbe^P9+pBbC7ik^N=h6x?qB84;zxR$VrnVw{`RgmTFw@E z5Et32dunS5S7T~j*JP7jpLw!TIX}A)6Xs6RQ-n*J8DKij4*5B z0j>bN1l^v2j0DKnn8aEo_LU#ze1eq{y$Ohd_W&Zo5p8Ys!Z8P+2y*%?irEZVk4}Eq zleprMa39UF{mab4mJ_k*@QLj9=P|BD2Zkk8t%t=wH8x!fAW_DD08$3GU8tj&Pb}^u zUQKX68Z?^_6PH>A+tmHKb;KEh9xeyJzxqOFFyBoF0=!>GK6VE8SHrNz?_nCXCg9MW z@<|`M2)~um=jVAgZDf(z`I?3y55q3CkzGf!^tU*jHA-bmLXrRf{gLohg(kqVuWpuc4wySH5rv#g?5K#Ci?&WSrgT}cXGNeZsd z35FUGSpBwoklnD3WFrtw-4hCSB;61V(9B)7R81@|H*Mvr?p~O9&1kdg8|3kR94!=e zUXf(k-NLT8M^$!YNgsAO>FURlQLy$8Y$KICuH2_ah0h$PoZP2VVgu|`tFeyJntp98 z%wNu!a1K(X#m!6lu-2`kv#9xANQTSbxS%K3P%}jvBq_;MctgjNVzUykNROJ}5XdNc zCLj-!ZOESOgW1p;Rm5#pvY9B-nR|v6s%c)&6&gA36D5@kKp3IFC&e_Uy(6O+$tX+4 zKv7e`0!x@BlF8zmMqL@|ya}#2PbN9Ipq8&@Rc~9&Uw1pzuAaKDb|IsI7_=5|=y%P_ z!z~h5J9O7MuA8b_Wz#Fz?VDhJ!)UhOaYM5EtLo}vWkh3+{X?E?z@5hn|AVeO>3*nuIUAMJ?`=3nzTaWz>hJR_DPGFJ$A>iS0Lf{*#4rbJPLz z@3aZ#fHy}T5x%gI--N=b=W2alRwgE;M!&F(;NXu{B5GO96NSK1S=XNlAclf+)hJI9 zI%Ss(@YaxuL1Qd5C^Md^l7BIVfdf(BbB84V0j$bgZ?S~qG@~$HC;aO5w>f{F*=WnL zv$*VWX>Ly@uTtyiv~w;GJY%3k+$ZwFy86jzLdV-S+QMNm&3M?p`B*gYw*R|o^|?#e zgMxJbHgYkmp}8t*M2@4nIn}=+O@Jv~W2{^#vu?6WWfgoq~Ie0@OV~F`t^5_eX1+=q$&!or+sBm z-uoI3U{O*@RbwjisYo{eOVl2C{j_l$u%4Q&P{MpW_RQE0+Z6}RR#x?vUN_oQBe)O^DjN60`^_Yk0b@F%YVvLzPPWd{iKwL?oG=pqj;s41G()S11~T#jcdr%QqrsNd+jeN-KsL)2{%~_d#@2 zuPVcx$Vnw0F((tmKrbxX*xGmESGYc(ZQiyYP+kRweG#&$Uq?O@ORR;9}=4aM4-PfoEM5fL{5^g(}jnk;I$Jz>_e z1zkLS8MV1|#kP6Vv%#k@*chRzal9F~sB^0#YCZdALncLM9B!kIS;+fPvB*nB>^0Py z-Hz00nzYezi`1hN){g(es+%__F8e2@TA?Pn(z!z?fh!@uB|2DAnYe>Ey!OnSWI`w; zCw0i~Y_@gy@a3bK@AvWg*Bi`7^Y~xSkF`^@DJk4QL+?&g^RhNi3byU_oqgkaY%!B= z{Ra!Rf`Dc0v;OW_znBlT+ge{2k)g8)T3CHGxi}RGV_jDF&p0F!EM`ehDQ8ge{E|hI zpOP2lYTXDCD);uf8TCl{u#g5Gu9qaU8cE=$tqsx19RqE{W0JGwTBB=Xs}91lHPgO} zo)Up0s)g$GZ0FS6v~_bv1U>bZ#&Yv7-~qW0g~f|thbzL;z%Ggz-g>lZpg;_V^<8M> z@Hq2nnxE-y{s$FzymdjN#-zO|X0g5<_U8cNx8mgm5J0<9Odw%h8pdUSxGyY=@;Q6v z_1p8MGeILS9B1c!*_zeyb=N{0(sGG)yXhJ|F3{IkU! zE&AIQZqK{QC$8ZaS?)>W#$5EYaJLzBNVsoW^rCZ_MJ#<}Ht~XHio_n#Pdc?sT^V+5 zbd7$s7T0dcL(PB{m20bjeghrO?d*+)EEG=XopAyL7;CLiMF#B~gku#@(F%U)pI@22 znuBcG)Am$ki4rofbaTwHiJmk+4IBIUqy+wN2;P;jfyx<7@A0Gff$K^(LT#w?1 zJh5|z;GEqvXx#36ji9&6kH1`ZONN-czXgeKZ{OZ_tscDZLj?b-%G2P5SABZ(B_hLx zU?q8pi(9Me?FLa$@}{Xnroq< zvCWY*(^&yH#+lyJm6oX-S3r?bXI*g^v_)LtMY5wmY_kv)smdjbJW#yfz^PBF(>~ec zYjV$vMMPF(BXPmkX^bOkS1enl}c=oE!jtGO*iRt_I z^%ufNCZr({a7Mfz3+vl@W^`iFrnI!6zLpY6r*qk&zIi62OJ#ipqf2T17~vRw-jqw` z5Zi?CM*$%60TlcLfF*zb7kJ@2{1h^GaCfK0q(-=SpGThSG)fJNPYhSuo$K+_J*uTRZ*DY^Mm8#okO_o(nu>(>QMhh9N+RkZb#xCNHzU0glI)Vv}?)Na4B`mZ}8&4)*hOEb8 zx+irTZFLe`5p;_Jk<%>{=Fp{gB!6pH@52}rY9v0CE?Fw9DC@0snjtWq{jM8E<)a)= zXfMkG&FFD;YGI3E{6$-aqEv-og-Om;=|zANVzV722zh9BD6~dKB@6Qh%`XupctFDR zXa+m0jK-p~lX^GKwUNS$CjLM-)!{Nj$JzLNfRIL{1nQH=#!TJ|>`brP=*` z`O(VmLES*Qe^GH;wfAiKVZjT__ZNH_d5F1rE^%g7c$%468V*-mNRLHyM}3gD`o#+*OG1k25q9G~Qx)z%vZYQhG z!nlo4Wn_~h!F%;OzTb6$>fFlGasvM>M-s)BQ8^{7SOM;V&}RwdDm=%XYt6|NwrI;b zod&1mQ&Ss3^A>W+ujVSJEjXm&;MNJL!h*+t0M>8U+9201NGC%`xH(5@%0wmz+1baC zY)b9>cXOO!ovL-!y2`cFV|%V83O2o^GaFIwq|&%e25iP*M$92^qQbiR>~2Ys>%!8R z5fC}+F?gPz^niH6v?Q`;JB=K{V9x`4%4lM z=Z8hP0GsF-xMtaFTenrj+zb#V0G>R1+@n~QV|O8-9n6Hd3`BOAjnC7JX;Jy}&$elIl(z74_b9y6T z2)ZG{X(ypzIAv@_v=R#X^OR?Piuy{dY&R$9A57zxfWGug_itZF_k^8GT(wR`3jEJx z#LQd4{hOci5Q`Ta*0d8K=avnlg8v^g*$o*SzhN&23!;0pl8i2&7!4_^%R)PXdCQxRL>+vP8AVEUOD6tle6|U50ljo&J z)zj^q$#X<)+%vCfg4Z{s7G?>SUil`LzYv`Y#PiL|wNV_~U)NPWarKjB=rwK zre@!w?({AI8;6vnjJ^My=9B}VXeq=#brSPd%43V}QFX~WcLA0z9}$V{C$R#Z6=H@K zIfzsh+Q2@&SJ?t8%&QMbp6GvYg(qy-PWo!n*LVQFX-3Q78v^+ zrP^yGXj2}&@oWQ@ zjEc@&P~erUT*-5H*JVZ+fiEnXqntK%V@hnkeabAxTVBH|EN)C0YCk(?EaGby7~xwD z$o1Qq*C@}q;|PcO-w*va3g)pKo-&Fn$oK0RDC-f?jssH|A6WL|kOtpQt|F5tn5ru4 z$X%%E0~7qfe<0F`u&hDJiqa!s#XxlaFl~7e(o|NQf>F3tTTrI|+{X>9_k>zsZo#D5 zJ|X=i+ixr1xt^d2QV;CD&`4lts6r)tJj#2;NO1ni3A9c4HrKheX!9L<9^uyKz6uq; z;<)g&UF&D(y~o27@@st@(ex2#QhwdLu&vw0=Fjdfx~{Yf37z~pWc0Oh^R9fgcH`92 zAS5Kcsj+OO{@yL|91c6vt#ElDgbHk=9>M^^s4s^U@n_*YuKu) zTDPGta=dpK*KaSRUoB{iERxf*@|hmDH1xWgU3<&%9;!cIjkl-YT55_bFEZghEnm@7 zNl{N`k2xPDEZZ3+)v#3THFLppgtOXMFw;_Ep)|rB;$R&6;1T^_;gSEOFaKWs?nMKj zqkl{jLq{hL{K$)dQqutF13pm&dwc!w$|K9}3ZG$39u8z}cJ-r_yH$>S2mHu`Lh^2j zfAN!u4)N2R35>nqS+8DJ;Xa8-Bp=ORVzUJn$y5)Pv?>pwA0fg>8XaK5KLY?BTXW3n zzJ+ETKRmF>hZM@X5Dx^`JgO$hi2^@OLNwUU1pU6;+zt61#kEqr;XQn8!1w=m3;*SF zMl}(a!i~c}Q?R&c=vw3w`Qs{iC?)U{2FIAr2!zeX^Zzu_fALv^3XCnvY|)r6j3{hp z#U8@s{wiI*$fO=S^y8hpoBF%T)vs9x9v&Lze*j;;g?F%$fot)z`p>bqqQS*(sN&j>dC4ESO2JNhI|*?@-2vhHzP==iB(S-yM!ovLr`!8#%uuZPLFsCah%` z-!2ZV5imO;E_N<84P^6%6pK_pId*uj>5Cv%;LvxWX~ErLBBjAu#@A^Z3P60Q$g2kl zKVO+Hc(b!(nmHTLf3>?X$FwI8lexx7T3kK<4bZh@@ znQCj=(wQztfMoLzpn((8Nn+}kxLt^NR<~F}fJWUWz-SXdDfexk)X$dF5Qfih^bh4? z)!bLSM?To-vP+JA$r@E>w`dxTQ6|k6HmBKQ%vAZ>p|d0RCbq z)Zt`zSw+?#(&FmyHLg)DNdp1CQ49z&p3^9X$~<*H+Wo?}m3vP!eio)%kw>{=Dttbl zCI7OPpN1~lP6vTcrzKC5O`xL|`Ba=>P6x0236cwd%J!P$ujxNTEkpcLG}*lR+pyD# z)0F||@hP$s{x9jvt6*E)-4x5FKjWKNkMUHBVczuIjnKSBV~1Xl&m-nq6QkRnLyvaT z-SDlj@0{4-AG*o(U5Tv4z1ziJEH%ue&@ZcE3x;qSvOi>L28xsU00^$7P zRKnXIM|&QRskN(C${f_Z=qOU`4y&vyfFcQpYB|T zgH(6~>=V~>=yf;OW2xb)LK;yz)bvDb(9~{tT{7;6e8>P3+)+@35fp9U^S;pT)%D;x za9E*X<;3nEfX4|wQ=CbJy z%HAs$35<$rkn?PAhd+A!3iGzp(z>H;A9nd`bgt53)MAur@aZyWpu%)>dh6nJ^H0U; z*6{#Pu~;BhC@GZm#~}g$(BB&DoU*AZcYQ5daAPRiR2US#9HwJKn^M(o=`lrserWc3 zC|PHV5)z|%wGW|K`CI;O`97Zh{a{XxxyP7l?4Ao`(BELaovU_lhfRZo30F)mgM3UV zsVAvtu==g?b4xqLFB|^wF)l_u-EH&+&kZ#NBqB*7U~J#8d*(xfuTYtPgna%&C6G>) zVPzP-dfw8CrmaqbT47_1!?JGI{d|?jVWz+ppVKOsNte?m(tfqcW`jL{qru_`64BzY zfq_nm1`L(KiU7`$NvlExmq#9dqwcibQ&kmIc_IX{#CW9&pwBoH1u$dQkD-I&+M}#z!_;bfK40ycL##*Jt zQp@|=y+5V}$cqVRa9|D6hC4V0Yw<&_(XLi@YshFQF#{S1mLLl+rGq5fJ#yaDs?{rd z>m`S3%N34x5QS^XZyS^!61gw{Ex;nE$4X5mkEW(EoXj*We86Urj!DbXHNpIE1%kQN z!Kk*%Y#_i`mS2}%#On z*f+LM1-)lBWfB1oA9xpV=wval1ktaPske>-X z+_B-&E^C$fN=r)xtJ^LLXFo5~hd{63-o|im+$z(QIWl#W5j(W2epQ$DG>?iS(Vwi^h)9nzvL+wH4W!oHM=alwgL?3 zvQ#RzLy=f*@Dsj;t&BMIpk~#f2;~F{pe&En4VfiX{OoKmpsn{{W_HG}W|}ae z_d4gQBcGv*+RAwJNSaq>g%f{_%!@kyJ5EC**V;#TJh8wCrl%%H#E`|10gaITg~pyU z3(Y4{MuS4FW`j&|OdOY{b(T{*6TGTH26;+;Pyd2G&K5-76Q1TBvdg&FO*9EWM|zG$ zPW>hqr3Yg=_5+nK);_FkWOoHV!u5xPDX24-`rbc4gf>-7^x)4@t0Nu%=@Sh3_myVT z2#fShJSQv|6CB^%B#@RW%iN6-i5?L#q6vBJu{9F=-j%dKFo4z zt#wMm&q@o6hd{dgm58)tXJcuXF(;wwW4L9-scGW4fVA2iPPg$Y<5BwpME8^YG2M~- z?awZO!M1~|3!FEI`HrIOjLE)@Mj5#`ZAR@9D0672y#E0DSjy^Xuy1?7U0Q9WbIw`S zJ(izFt{G!m3ltZu_R?8(Vbht2mSO&Q5XkbMr!pA5u5xqT{Y|=wWWb<|x`ARZXAhPd zITPFMna+vJZV>kP9cF6thSreI-D}#gn!Ac;ZPNw0w$PkNhxyCvqOU3#g=R~t<`o+) zFi4CvA6mxktu>&~ab)H?y8G3EVw1~x;ZzH;(S2czp7fl@iq=firXCRznVU}^e@ve? zrdI5X#{mT_9*x^ZjgZNgLofAM?~4M$)y9Wln##p+_E}HH=dXv`vQl1&l)#Gccm|nuNRC=V>e{*BEq|ae&iua|4uf)=h9~cPCb0NjEY&7eWK6O{Cjt z2IVJl+f4^hGvCj2vXF|40<~CqqnBG~?_OZUuPN_K;Lj;sX^7{=hABYM0&_#c`!}I zJfD>Jfc+iVI6|x`s-^bs3AwN#ZGeBtGh?e~6({9c#98eWO+8LZhY5;- zVC>!}_tPO&AqvCw5+G09pNLc-5V&LfK|Ol4{UBNbrIyA%2}Z=ty?LBQ(Rautq~lHu zY|gI*e9vzKZ52q^&meTj^PgTtnU*7>j*n3se6aVhqz+G@mOhBl zxyTn+`%BE1nK>oW(5A%HfuUim>N}}vlt}pD?fsyn(-AGWS|Jd-H7HD+QesLhg0d`X z=sm&u(iv5~i+|2mWpm@*cE}`p2!W0K{CLu2=E%Knt_rKU$iH1W&zhi6nFDtT_}7k3 z0#``Mp_RyQ_)IFno+Fr{BkC=z@-$r42MxbW?|3 z>S~D!6xSx!0BAd*ZtG#X7=zPEeUV+Yg_S93>I7_YKg1v)OAF7;K{9!l)Iu^uYQ8Db z55qI4kBMaH06JL!IXU^q)MIi%i%|8#@hS%({2y5``~uEvo~naeHt>Qp~@% zbT7g9?RUd3oRvBF_mdyFw>S32HrhdTN{g(4;IWvHxhV}Q8v!$83<>de#r#&c!j59v zAj=Ax@XT;5mwKyH6_Y@Qg*0c|S*o|s(wwH|Smj$Lwgn=~IEmWFP|!#uNG!z)dmP7H z?uKPKlGPr3s0{*T)%Ugdb)Egs6Ir_%&oB1TozAMVY)MIh#xyF4s$8W^oK-e1n^^G{ z`+ZWwuv-YjR7sIdV>8!2`}i*?VxVD!y1E>S z+^ngZnFRY^b=ushGK*wST#SLEQ;&Gv6h@vn4Ju}8hWvi?3|O7>YG$N6(QSu#40Cfb z>SXG*{kj*><_#cUJw9B~&bm)ml*sEb$r{p^j5RDPon9I6f88|+{?f20LqF(H_eq;b zMo2+X2B+}`XlC(1p8eI_p&;Uk4p*>x{hXIrz=2s*lO|8+#xkMdx4p))OIHNf`f5AA zlgVUNO~vJcz~L0=+#E-O+D?nZ6UT{Rh+Kwx#&RNJ+hA)gC4*8=Q{c_hpECf{=NXSr7@E+R>wGRjzGv^!NOpbN z{HiUO;6dwbm@s*Dt(Y^Z(DKe+k|yl_&86_dYq4V&EvTE=G;K;E&rf% z>R?#K8?w$3f8v3!rMwnV(@NF(nZ;nsQ=Lh0R;* z$^&)vOKD==R}Dl4>;>=(N>kP9HNNtBmAFG!RaDaH;q4pWap^(GG0T?B^ud3N88?a4 zhUr-_?Ix;~!A4&SR~assVRd`+EqRuj{2FJr_E+g)Ey4qPcJ@bnxD;EsI7*t2_5b^_}%737Q;uziVjr zuwiQNHrU^0q9)+4!87%j-=$oNOtJZt?I?b&8S53 zW6w9c7t~f*HU|~`%zS76jDB|hU;#9AOE6-wCI9E`Au9k_(b;DfWCuhC^@$; zIVW%8(`tM8j|QOxk}JCNb8RMV%Lco5?u&QrQxdn}wsb^-5r)CKq6-#V-F3tZ{cdMO z4~h=NiNO5P3r?Fs-%V_AL2Lk;4+5?7@$x$k(d!{av?<3##s8j)|K~EtyXp2FV@e#Q zx>8@c)_w8t(L{V4 zlE-_}O%6=a;6~3g@3~CLh^pav&^;owaCx#sP~NwI zBLHtwVYh#eL3e;+NRQI^{*r%AvVrZfZ~G1G=*zGZ?^#4(;?RliJ@2W zWEP!nO@5`)ew039+N;v92WB0N-}^I9RzjJWH)wwKJP%u6?-tm{tGG8O+Ad?ZY6!Ib z_Z{3bJUk35BiN(c%R>-{Mm}HHE61!Q*I975vmY0y@~AQ!e*z(@Bm0gtwyO2FZnI(T zX4kq4<siB^eQzpF~&I0eW5VS zGI8i>r=TLBotdVlSVr%YP}{_-T1tbn%5CH4mtZx$B&tp{{$6WC(6Re%Ih|YwpK@+L zRMeIWI4Qc=+DZLM$Q-RsBdA=i+>i(S>b>{jDHjaoT~j3CriK9~eJ$zrLCMAFalE9x zF=!V?-5Q;=tvmb{ZmUp|6VO^`k_cN*V(Hd3)-WPif!zHMz(85s#Xtu!c5#pr`X(_4 zScBMVP79j$8e-zkw`4^Kq91O{lqaG1RGHPHUW__X0)=`ouKm#85y7;`vFe7uTejc% zrOP?|^Zx(ca`Q*O}^CyDKS+z=LD5zxuQ>P%cA=NE2H}!Pwj9m!D6n z2EV_#v`Ilw5I&JU{MUX*uOjYTf2f~pU!NWTUc-;qIxQi=(%-Kz9?4gWL1|md-MOn# zQBji69~0qoE|2_*zJ4V*RZYhvlG8{xgfvPC54_4HN=a^G^u_XR7?>>&)ahe(`&tqJ z5<;J>)SR~)cXALlpT(s=qtdp6ZW&TTb1 z((BIovBZ|Nro}hYPEKo!LWnvLW;`g?7-c{#KTD@ZuR^xoCz)A0xXP8pBYmI(Sz7p} z(2eAHOd;%Kb?mFV7RhQ^O_{}A8R{zk0+|nH+dqJjNN&eli}7rPZ&)!4{Jl90&5Z1F z_FpP+^P1XGr|FUlPkD^!iWui30a0G#+p?A>XI+e8%BE|%X5%c>>4_UTgsyh3oUXo{ z0-O~2k#Tk+3Jvfh2csNDqwVGZdMhrgNLtE|PH$PUY9Ihk=iaj5RV!v@$D1CX zA3mQyzNUv&nRsJZ*a$X!EHN-3X;d$*CSZ!(pUx! z1nM2^JR;;#kqfg><6*Lb@DP8T%18^0TXG2$Q4+dIu;9IHGeaa#^hH6C!f3p0(;d$3 zk~0hx08W}r%BfD5hZR0NRfwr(HyMC3085Gnb>wX4D}^IU40qFd0h23kT|rOz*SD+v z&??FZ^>0`o=);d3ZPG(%!o||zo8zMxlSrTDY(~*|56es*?|E}XZpQ1DRlbODqd4#B z^;cxuvD>-QPcn_@g;{dSLgGQWLTLbr``OTe5aG zTn0OFbJg3LNB)&cr&+zrLmW9AmDm5%()-_!e~GDxC-+gyLJpv|Y79SgRDv)*Xh$%9 z95Z)xA^;cwFqC9LS}-6~ZE3#$_CrtgKbU*Vpf;no>o*jqE$;3PMT)z-ySqEZ-5o-3 zcXxMbDefMe;ts`~zWG0|%sKPSoOwT<&&ljbCb{>0?{%&9TWA2{x8WJ@*Bf98Kx(0$ zYg9lClBf~`KSa5o+|Fe1qM~HRnA~06gN0@qA-O0Ol)rwxD22iR?HSUu`pOvUJE(iM zVU*0sV;GeDiMr5Z!yvz~KyC3&lmfz?yK{eZrH993a^eDtdzKH9>6dfyU$+3B-zU$M z>EON>D3W}$lc!!J|VTBL~ zKh$g#!h3O%>vq95sOmJ#@>8?Xc#{B;W9y8}(hw*BvK(sj?0aK*bm5;8wb zO&9+_ucX&shw#HFlHHvP3;KHt^Dotp285$Wp5Krv_80sIDAJyO{}woO3}1LIE%Kb> z&!-_mVi+XVaJ48db_SNWf*Y^bPGChL&*8GXP46+?9_ z>_f7Q`f21bDj(a>@r6PmRL0mU8^f^06^Ye0D)+vrj9O)VG_6GGNednI@=HsKoa^)S z4h{Nwq5>rOh(qZm_&<^M(3m}{|AUM zn%p}%17DyXBZ>Tam%jT40KOCtJoXSIi{98irurv;7bIW$>^#~=Yk$I5&FIPTup2Q6 zn_Bz>FTyRUr)lsmy;7{9nnUIn>v*q+P&6*;=&_PN8_O3VF|armB@rDac}11mA{|JB z?1okiK1CTFC@PGiG_q~j-@to!#&%?Mn+(zg>wT-P*1Uni>1LirJCDUQTA`mzCrvyS zp7^#_15%nav6P58Hv8iANUMWef(gOh_YrA)oxgv-(&04`S*aWPJ%;;;kdw-ww*BVT>#)|AEZ!Fha}_KoK3#f&|@rq-d)@fS~=AFH7qH)z+%s&IpC~&yD>a z*xv0H^qQNK1-7|I=T^6|c90KPs_0$gWTIp>^jCAz>X@6N5VvPEXZ!5_C73emBSHBQ zPl%`_*X?%;Bj5)xLBHF$+BZaYsGvK{m|tb)Qi8J|A5P0=+Fqx`(E&q%oq`=`V%?m`BPaSP7#UGIfAO z8vO$!cLIV%mS|uE?Uv+K<0Dcn_@1WzXoUzAZ=cx%@|qVEsJh(dH^8pZ;gpfsVBQ%B zmw-tUA4tvW7HujKT9+;{vhR zj$JCN{B{X~y?tGORjezuO<=eds*y7{({D0$WE9g|#hIRCc@Qs$S@VJ|E&k6Y4!OmV z?5CUp0v0GvjzO7k36f~66Ydz4J6?s%S2cXS_*eYRgylh=9jTwC+o z4LImYkeg`9;eCreMaM0r&rsZj?ZuySv}8J7<*kc@U}vi+XwGRp=JRpVg8{p$EN-%q z?%r=&r)fQW>x6#m>|EWY%Z?Og10%xBn(Q?+=9t);!^!a_MVqz615~a4g$4~?L6o5s z)9h*V0L5n^DVmC{a1CInzZ2Rni>si+Dd!82dDBIX(`$OCYGT-3A1792;hHEqR)mWo z!puWEtVw^__P(98SX58LJlbVNVN*0FPoo;~!Z4F@!XOU)DeHQ%4y5Ty#tH3>wrag6 zi4dL=%x+VO$Ac@O%7++b69KEjfx+&LFeW_)_s5hllD1~)7JdpF8gmFsuhX#t0dYa7 zj&i+2uP!b1htq99WhqR9G)d*X{0V* zN=&6V)V=nH;lnnUdeIA>TAEVsA?VLqh6D2)pE;5={V5kMh;W}5z_mHdQ&_7Ljpi%! z3hQ4qoX7cXyGO(s@USj1^x_U8*(9_ zeyM8K92=Ku;+4ZI_QFDeC7g4Ytqk4Ll6E*Zz){h5LJYFPz)0&pjy)?Vp5rIForfca_ILv+3 z59Nw!RygAVUB+e5i&GX^=r*J!sHjJ-k!wxr#he5u0CP%N!kOBhmdZS>K%1u-V|EyU zre0?ybc;bI2qGZ=L;`LFP-?<0jRT#FYs0f;@bKYZ5T z;bt_HYDXHC zsUy~=zJO|yF>T&EH9%Q?^#9mL|s$H)VHQM1(?bY71S}T`&cu8 z1$XzA!^$v~OSDF8ZEedY5YKg3hJY{}dk)vabX$_XS{3g_ng}Nj!vztGbfeBp5z(Ij zC62F;o&#a9gx>Gx@-_08OLl#yn?izSa=G)E%!NvaW#L5>`V-D6y_!Qmirp092{cVX zSCC5W-3;{|6=IKJLBp&CcRuIr8CEKTu_$(@exhqp7>?5pb2v(fLQz*0C46SO3+}0c zS#T0V5t1E=zH=Q;)lOcs)&b$X9&y%ksDtS?apkClEyzG~cg}eV2f2RY?Cc@O@`!lB zt|Z5{HKlX9+N8nyZmMkuWLQnO8&Ru$dV%e0sIFnogfz8V*gv#fqoFxILirU&S~}r- zJ3+q+o^7PzE&p|13697-LZ^L`A_2Dy$9e~Z-w<-lD6B#S(qLt?Evd4kTTqT*MHYjK zAyGhsO0y2#Lgp)b zw%=v>Db~N{4KcPin&Ds%3Gr6t2!AP>sB%$grgj*uZokrW9Lr+hb&ioT-Lr6@~lS|*I~NgRuGhGekTo;_R_2W}6X>crM#{9* z-syAR_p^sw)zi@OT$@?eDN5>oQ%}=}?M-7Z<j1|cLLvRoyD#wRkNE|kN!ZD^o?(fw+cou666I;&Q6Uf+VR!JBzAc|M-4 z?V(Y|S>*+FFCGftr`B9jIGyLVP$Cq<0b-(91TU|&D3+M080#%TW~NZnPYNp|EY?{} zI^RXuQld#W$*Gl5(oHGy>F0$qyPhNKU%H=Pd>&73-d@H{Y>2zxj7W)Ji2nhc$`46I z&VBA7_{Qs4={t(qx5&QNtA%%iNRxY%b+9mzrF%=i)7ZALAF9vU4Ma0LdLj7-2#{-R zr_7&OrD>9RrhI#ld4^;qUf&>s8@;=^Km4_i55$&t4|ooGhkx!11!K2Fxt}_{yu62k zAxKCi{|~X3macgr!I`t!s5^mw03oCHhx@y;`aBmo8I=0^+o*qlmk&{)_UC?vcZYB5 zEgweZD}H_;@W^w2`OQ@~;j2@>1Ni0`^l%2z`10$IwlwI+-0zMJBDGi6jN2;2A_Sl(Zo8{<3vaWU`&jQ2qSN*%PGzMoDK7Tw? zufyU)h3~**2I)KK)jlJ|cL9MwV_@LvM?zy5rR3&#q$5&67MG;$@HrYPaa8<~Jum!a zoCu1r0k0mm`8hAI*~!Vu!ODq@G)QYeh9=s~n2%lzQ74F^2%Gl65oiLrcp{7~&e}f{ z#j1@9oVMPB&0BG@>1PNV-YHqS>0mYG+H6VPA#moVVezOia|uTv83NG4l zC2epN28WT{1$EDir8cQ|A2mr0HP%-ZN8@5hd{Z z?9DeY(QlC~`ZNnbsA&Vjzw2>KvGIb>ZpAMHW9xUrfgSw;V@-%mW%pSrp+UVIR`(sPyfNh9lXrn&*gK6hud42RnX zMw<+uFHDAxEgTezHC20l8((t6jduAziLkife8xovvx#HWNy7Mn^5{YMpH4!yX1~oY z)l}$9nHpg+En?QLFzrIU^-XzxQ8G&LypbmPk!D%jn4})RZJ<&DqPSUcY{kT8JFmc3 zalK=X%6&Lj4pWvPg3csqeN^n2PsQQNEq979U!GIPZ+CqfXCmXEbUEpvvc)RINpDi@ z;ZCInv0NB*s~@635<>C?rk~;Yz^NYi;b{xnS|To0wRYjXqN+^tdcB*kMWTJ~IpA&m zjOaz+GG@JFr#VJF=5$Syq4*~W^<-#rOdNtLpXq}ioRe$q(eWb_xG7(+t*5Htu;_^R z4pG=M6f`RGh@`s~q1mHKa;q@*luDAx4EQocG`Lfaj`W7*c;+8c` zT%O{F_?09-pg3I?U&kYs@Fq0^WUN|(PBB3zskU^6#;QRtj3V2NrTLX878@-KE467u zZFgQywnWunlO8ME#iyrXxvH54m=|eaLjn3-j9uTgDsjonrX*%ipT&JCz@w6~PN>~8 z?yyDGVH%>=gd}%i$gUvB?@_Yxsqnq{S@#zbyhF7|Q}lB@iDje+El)dXwj8C;#S&Yw zK#%%CS=qs5kLqnLai0kj+>_lafxgaqnC8!=c1jFr!72k|#UG4AyP|NKf+A?T)Gm=p zl4N^jBN*ri*dXLEzs>t+V7aMa;ae!=xTWo5QSWwZcDk90Ge*oa+8nf{F&rhO@N1M? zrIf*cZmsen$M!uZh8#xyh?LOA6OF9Y7UNS$C8PCThZxHxq&H$iE8k^=RGW*nT2254 zigfLMfvb%V5%zYKc5j$L;o0Jo6vo&0W0c)4Fmk(8j2H5Aob!Muj6Y1JpIGYqDn+#@SkLutBVWV_Sk`y_s zR)V-O9uY2;$7qvtZUSS&B7^CX&`1NSq z=<)ctY@!P!OFP!_-!#zw#~E@2(g0R2`L|wd`!`9}Lg zfaVYBzb~8`MxFYB_42gAH8pEBPLZpg;w`q(u)EWLN)>jUV{&EPb(}222z{erh_p-X z;nDaBz4^vER=QhD;=e1_r6|zYGp3iJV7F*fECG0(>@d|8mt`h67D(7_@WAd*M>ZJ= zxIBJQ4_xsyB%7{$ArU|WD+}wO$<&3`XvAxD?acAthRh!VtNRIpqr?V@?8N&$%?Zx$ zz7F1;yJ>k*rqN8D2ua?6n+IFXIDzcsrw=F78g{we&t6_3;<;Wi{?%LBw==-(*jSYf zx4AAeWyh>%+cqtSQYWq4v@Hax71^5A@Ir6fUK=dpG#+XtOaUw-c8Sfh4AgPdlVO|? z4sW~}R0FpQb6DdVHBR?<3SU+py}DdZNg}FgK{YIvTlrUXTE`$P9kvv|BhoM1cKJ|_ zxEea-IGyp$EeC*79A=U={Dob0wSwE%76V-#_=`CVz%xS2>yRvDvN&~ekf_M@*EjY} z&Xb3x$URoK|~=;+<7+G4OTCO(Jf! zziHc#X7)p;cAuANdDlQfH)}KAAnrbGv8|4^l72d|Ny@rJxwXem{KY9v!RetfIs zgW8MuDC#DGYvk{<+%vKW@hC-$#^jy-?!22P07mnPnkJE(o*#`YH6(M+>A zGhQ$^4eliIAz1J`M6G1tIB@`BI5(|0mZmaMS8K$uq*-X2SnFU2HB0;AB1m3*dC#bk zfY8%}T|8sw(i?H3p(n7*qm@$Ql^K<;8^~T%F>7bb_d3{{AFkW{_H%^)I z;Nj_$X~JCOp&h4J_6(JZOTgjA|L-M$+hy12A3T5l0jm7f-V;V%cb@*UVE-+V(|;`pyu0|g3seidF8}-w zaHRkl%9j5F%zTXe|9Y+9J*8dBPoMa*5Pm|hq__)K9|syg+x!tgIY%WK75k>yaeZ|t zp>r14Kg*kMGl==?%3*5>Tt3N|Z%hq0e=jw;(xxuVO9u}2%k)LV{CYEX{||u5kM6C> zW4gT{Ns4!FclKRo+lZ0gsFh3X{%`oq$WI|W1*gCHr>WMu+E%;mny*+igY(_J&C#%}Wuw}IvQI^nAYfjr! zMyEOUT2r~Hm)TrO0~FRm5E|^?m2w&oAlC4pAV_C$q$u<=0?GvEbb4UfzT5IgvYDQl zdSaRE)w=k;=f%ut*sPvjRC%=#!XQ-HJCUi+W8C%Ry9C%vt_BiQ0{5`X1TJ^Yk|@Al zO}B4`8^lH_O1e5Gj7X6;FesB|c%Bn*676xV7xYq*TiZ?-B3$WXx>T^i;y!FuvbuX^ z`DG$+AD<0VSVP|^$6eoj5qMvD{Brlcq4cP^Q$HO93^`SE)H)`&m{2gI{5d=#TiIk@ z(!yL}Q}p{JsB->YWld3zcGp|e5*V+7sYKo_8AE?URQN16?C@hEm&15In{PM%kEQ;| zgw&J>W2pD|W(<)8W^`UOUkPCgU&PPuw24-aP0bl?ey=Ij6dYK!rN~r6xVQNE#(B@L z-vdbn{L@m8VdYagsKc2RWn%G$&)kkBo!cnZInx`1Pyigjlb9Dk0?8#iwTG$UYmV% zof~3hTjxAqv#;9*zhgQ|ndWtsy2qMo9q)h?)JU2gt%>%HP1t;cwK^CK&voI}%6{4# z=y_Dx>wc{bQBBP*B@bYp)5=TG>$kk2_P|;g1s@{>N6~Y-7NCjdvOlYn#bD*RwLKX< z{r*8SU}u}Ar?gtah+lZOX4b~NNTG!{xmNt5gScT-=AJ73#U| zu+pdG1`U-M<`Ft2gR-Yw`X_}GC8*LAMS=)I&ViumEf`ct8UzZ4_!s;>s?;wS{{$<@ z%++e+e@9XNo4D|Q_X0cIL;jb%)vLD6*otz=e z4=idoOm)~Z&sbloC7lIxy}F&b9Fr?%S`@nV`UE-qsX~wVW%Vh0>Cvf8vl_0Ilje1m zTeT$9j~%#O);Bj$>6~nvSew_%c$fVqD_`ma@%5|%r{CpjOTeb4Q&zjroa-}=?FCFu zyLN7HPgOyqVp8}mfMDD;$^#(a0hI-x6F}VINwswOXSOEC&Zc|w^cl8Ous>;I@8QbM zb8Pe=W`v+}^q#{SymmgA)~3n584ouv*Yq(jx4Un$HRB|w>2-h_3X?QJIPG_2t+SV* zC??!ISkWZ?S$g(68;+pKTcjlp2Y=gIbkKf2tu?lQr(^TEt%V1l5nIJi!P@wy5mmRL z+Gz&^2ewd8t2QucOwC=gCEdiJoPt74F+8&_k3py76?!K{&s7_*o;QQJ$4B8><}1PC z8IrsP`E~JyMS^P+nx>bu#JWU(t+WiKr9GnzhjU7-xZ*R%-X@nJo_+5=3K99EJS=zO zkBPJD;l>6s+hva@OImKlPUaPK7EVK4b^Ez}zE)ipjRjRaSlME@G6fZ3!WPfilwSCb zjsu>aXQ}VCLN@2#_%b>i;H<+hcNH=Z@ug?;X>{)M4nzl3nS*YhfGQLSk=269F64!i z_Zz{goGBkaUkXp^*>@R4AKCMRtzkEh7`Lq3J*nsI1*?|Vvu_0srWwp!ntIJ_oLo5S z_(({)%MNio^aBo?mO~TIcsTSHrfgpX!U;5bh!@l%$Mx8LGvMa8C2dyfcFSIxdw&)= zZ_zZ^v0lR~&f(#4fE^FuUv-@3SfpO7=oJz_-JMGIB;OQ~&}4P3TQB^|a*jn8 zC3($;qM<#=O)mEQb;+z{Ve#7zo)#DB9ClFa7&;sq=SvAIuABn%rsvm{VL$Uh(n%x* z4V~!B93Z5Za(Z(K>`U8AfvvFof>1&xX%aKSIMTeO=>RzQ9Aa!b&V%3!d?Pq>i@ z23gexa6ilG@pno+x&^$O-}#8}SP>Rn!tC*g*Y<2gR)0icr)fYiMDObHx>UA_ts_Ib z8EhmzGxm+d*g8}O8@SFRQ^gKq_`D+1Vw*<68|Pf!`PzFF5kT(IGXiw5bv4j}?`&Fi z-K0TWPy>%S9)?`RFWLE4?>RQxabYe)&1@|Ef+k)QZXWnW&Oypg(_^ zUTJ!q5+N^&!P7uhB-Wmo)Lil?oVogec4clDVw{Oz5FA5Ku&k(l9xv;*>RK;5v0$b~ zVp+GfR045pR|5#c*q`C-$8Q!?tVxlPv*}c2WGlq^Pg;4fXw!+j0w<9+tBo%RI5#)G z6%sla1mzf(FDI8Y=CvC}+XIq?%-F2m=~y?)OOSsFy4#V@)pJ z9cn30IL`KOSXBww9AtZC`LE~Mq_UFHNhJu7SkLobsSkB-;bfVQE8F1Nwq=K1f55|p)#CFKOcIw$jwBw{Lh(*sUTh;Uspf*V1WnTX7bIrN z59T~pt?zxk&QUBhN8Uy$HsqQk>P4npe#!1%dVKq0ocOrLxZEg*WU|VU5Og*KtHNXL z-1W%dEm1X#{x?kT?k_D7OG)(2j8T=qQh0M*k5r4JuT#62ZFC3N|IT}M)0;?bW zogBKQp2l}YfNBg8xe$1e^M<@=2S57Fl#23C&_+msDGoWi@i7k#$${?E!-k!E^|qb4 zr9^jSui?83y`KzBl4gZ*jdzGPFrGL zv9y|22F(ZN-AQKaSXS=Eux$Hd_6LWniS@kcdc0MAf>k*)@-A!1N=Mc9=|*-%^e}lVYBco|;W`{~h{X)X72q^q z{w+W`Dk7d`gokw4AeQsuG1R1dn1y*L2jNlw7Hz8Jz=6WXGl%vZguZ^82i^=8FoV(TZ8oIbS4HA(ISD8PQx0 z1ZuKz)94@S9_sJ z-L%B#2gm;87qNv?lID}QPD_rm#JvM|~a_SbBo5y(VbEVLY^O(a4?&%lEBfWCfZ2o~uhP(LfLkW$?Z>G%(p`?ZA= z=mzDK@7(=`B;kV{qqiZeXa1K7WrTJ1fVPEdlH_*EQ&$5Fan~y_^(4|b#MYujSWxWQ zKTv4mArSnQIaEt=`zB1naz`@p?jN{*mNGC;O2Qr}9XacZa&Yx5=nsGMmt7P0n3G;s zaco3HqU4i1W!XO7?-6QPdNIjTVt*vzu#K787Hz%Z4JerV3i{_UKXct654~MBZxQYPxwjO|AAM*M6$V;keb6X-2WdpGdcm zseQ<2ibjqU$?Qv~pS5?dS+7x2>kKOMU#%DWSvGzx-?5ZR51K@^?}}kQM6({8>@KR= z5&IHUexyB&0jxL>=Qt*4glpF@3!xEo_%4T`#Lj3NO%{maN;_{t&fra($p<~^>1x|O zdej5-<@49}alU&f2#oXhhN|MI@=54pyEI=J$8E*=zl%=p_g1Uzx@m+t$YAW|s?%wG374IZ(AJIL1!Z2-I=_`pxpmllPr`F#8#mCb!gw^TpC zz-qy&LRL5q7KV{WyU3?~0zlVu<28yGkVHZAw3a{`U<}~>KemmIo)JDoi2{t$tdvxf zs(K93$tZ3m#ps068}R&6fVYHT&w2%eH3qZ^%ozBTAH^f&?_E@sQ0dQp^~ZsA8Vq9@ z1LW@F+pHM4;{E}-kUo!qewFur!;aJvF);W!@Z#C;BcJu2WISD082Zr3$jESH;pCkp z1K>e22ga=d&VcJzx6A9#UxMCVUfjV(tdkLK=@-v|i8RIUf`Z%N_deHOf*Z(?Dbfp~ z(84d1E#Si+$#Eo7hkEx82n^%27$awal!7p76rU+B2m>iEdRmx;h zZ%k#s6NKlWLwXD3k8&1FXz($)kTS|Wy!Kcz<$#ZrhkZU*PI_)L zD-n9Xe@JS)&k}wKS~AxXmOyqhPT|dS48`qu{fbK2h`veO2>;FGgD$z+RyC~F7aEm$ zg*{Wk;!o!6F_%^*T)^iVshN2jcvRSD$mC z!n@G9P<}z6(m4v`JtXY$nk_NwDKjBvM`rOS)%iY{kR3>WN@lcy-9Bqo>1%@8rP&*UX0BUf&RDo zE4n}7dsXSXc@C!z2jB~=atL`=7_Jrnz|HE7O?}uEx#gm6@KmEfu;pcF!kqaYB^*7nw+$_s{Wh>kh<>=LQ zT_!CSaBU;0Dj{mJ)W)KBlIjk%n8#PIlUoQq0IrA0Td&*B)iQcT zsgmwASN|R(n)rMF#mL1mi0%52Zq(Rc(~OnQSy+~w^0mh-%3Ib1xeNu_kfV6~!@y3! zj(6kA#y*d?&pwDHL&V2Iyd){fxN#6>OAq5ZzBX6!=RRJ(t(tcfo>BGk+J=3FZ6&F% zFM<1smfDJu$6z%&4k-zy>XzcBTLm8QCy(uxqm9c2C)l?saYRf-bZdA$=(8^tnRl+4 zs#H!L#sDRJJ17-?;!EZg!ne=X--0x~ZAM?_(XS2>wmfCeY=%n=IR)7pH2KVQ_w-T6 z1bxZoh}8-=%RJ(Bd_R9))N(y!<%EzuqJU7s?{l;%K&WRdk%TOHJY;&6-mS z^i1nq5-jxA1tFB=(j}R)|6ywge@cNC=sX6Z?&{VNl+{-(ix*TCZ?-9aCiomcDrfuK zFG;5xO=@2ip~nhz#7FYIp$J7fJ4PP&U|d6;CR1C&Ya-EMV^WNt_A3LL_SDaT(RTAeLqlYUXly_Ec>~;Xg&Cv@)#vFx2_w zH(+kMlj*y#Pyh;wCtrE(c1``RMrxC<*?9<#|H>R12Y5^OwZ#CSmPV7;F^+s;m4XRQ zl4;Y7s>Dg^cu1OsqGFZqB|3&L)ireaMz){xd&~<+SovM;TR)R}V}Ndx0%MX+c$)N| z#s8q*(tpjx-KtXdFz_q23o)6t&P3A?B7RlK3vVF zi9d7c+e3NJhBF2_qq>jKgPY&RgR=h(Z8u;d#?&;5QON2`fsn z{AI>S<#QG?hNj>@)}Zw;M~C)hJJM_iztl%(iPYM1OwdpFgISml8Pjyw(J*=qV4x=7 z>s(wT?WARyGpgvQ;n0IxVvQ5aV%0yvJhSeuw_jm2DeDL7-RX(icGYHT%MT?_+(%`H z6AEm}QzL4I8&F1)@p6=Z<^T8hTRvU>>p}UeSeo8IwfXi#IiY=<1IVS(kP-1>ozYhH z!A8sVYA!*tRlzM52FI%?QX+|&m{$k85)oBK>N9S1ilXCwHzx_!f-|wkh&y3SJ?tKb z-NlK72mS;1VcZmw%o`n9Lbjx~7xJ4na9`0lr`~<$sh(oPWnKR)S+}{On~JAKWVGGx z%e*9JdYp`lKHa(dKGf6em*4eUuRD>?f@(sK6G{(}B)yNnQEvRo0Cs7Vf$EUDZ~AB+mGcRfM(q4c*RW#;{6;k|HjXjrIWgW`kwTIhwV>?8m7+cE2V*Wo|F^+a0WyuiqN`wPmw zB~ifR_7|bCo6LWJKHb0;?)R%c+`!}m_J07smVW^2AFM9Gb1sB`fao5jkNA`R^0$eX zFM*Do{co-Z`FB8c1~L!7)_Cf@;DrFnkPWI`TyC!b6RKpbt^#E$!ai z9j2kr-8e!&_8jnw?DtvPK($H&*|FrC1f$GP9NDHQPKD&2|n5pju$^bB}B<$r^&rL$ABYOfhU4-%#EROe(Z zW#c&>^rN6>#PgN2SpDQsB;bOdYHBO5$!>&4@=w{W3oAsv7;M*QkCG)10oj09&u|-) zDxJOb*sLfYVP58}I^szA?Yhl93*m%}UUBJztxNf=(p_EeAywsfG30?}=s8De|dx%jq5S+;JeybD3wq>kO@(i!rKB zoxv%c)>19%AVY!Be-Mz>Y^LoIQRUBI#w^4HiWOJ6K|58bBRHBL7%%+LsR&Thx@3o z^<6)NQU^9!xrmCziX&^(Ke^6a#x-)FtGV_fsY=$+E807Kc3Q)&zQw1nj{+NeQ+vm7 zlIBtSbpP}&u9Z$m3D~e^p76$$}Z*GaNtu+xqdAD=a^|s`aebC+Eu7Wbj9iBE}t#!>Uizr9ZHF7 zo364atXfl69`Q=a&)5ztg*+JOS51CU7JJHYc>e>$6OtA%?&NHO*6cCJE88U1ShK)c zJ}SSTdp~1+Q_I$HRIs96TH3I-Q1BQrz+owe>jtfrmC?11n6-exvh4Ouv#qYYN!k%D zv!B^<3R~-H9gw;**4Ohm($LYxu{BgZj6(8U$-|gOr!gB;`xG{iw;fdoZq==sacpW` z?4!CgEvllFz|*X*SRI$pVW+0&a*d8^b{~bqpzM;OkEVrHfl$Vv5dLlu z;>9S%CGlEG)7B5_o{M`V(dm~Yxz;urkayYdVrv>u$IUBXNOH@>nNAY~fBt(Y0dlp# z@uudVo9sooCjc%s_spN)za4IMCA9mzoUTcCykTGXD2!Yz+xO!6Wgb#WZl5q-IC98VF{|a#(`e`I@;pVL#EJp;2Ov zh_)zU4Jk|}<{&Wh0K{JWG{s=Qp^U>I8P)DG+*w^#?3n28k_uiMLfup;|BE?A7c>_=R5PcAJm(YFYyx`RJcH?u1 zN1#=UwGgOPe^U!n(#^jZT=^J%$z!c=f8`!Xqgu%TTi9Myq}?@0gXM%&pMFyent?8MgyERI6YN`ymD>J>P5PMUSDlg5B z;+JBUYCiulvQv}>gdg0j8H|oHj=da*c4N8Z??e8X@N1U_gj(tJ$|d>6R?GO^A>|eo zEu@%vtG7$o3ZBeJvD$Z0s?oQG*rtNNQ80v1J9EXSC0R1!TrDqkGY9>$)$^M4rwqwA z*UcDL-BPeG6Gg_!O%&Wz)yv3S>%L8Q`~xti9WeQ&pE$ZV4pD=FPVT;6vHt;dlbc5{ z+c+h^g%95AGj4NmmVTY;oz413Xq;?yfb{2VJ zi~>di`krwRAf)QbplMvHJ2jzN!(ju?TFT7dA*(m!%<|U%h$WPs9y$M%3{oIzL>avl zb0XI4(w;t3q9Qs@5KI-}E|^d}i?%{gTs4y|cm};w8X?lKRD}arSDPgIErk(;JFBH% zfRZo3iHAu4$6J(F6vIrr6Zg?t7nw@CV_`beN{!L11$Ip6C+ApeaUuaOqneu7S$Fb3 z1D|Mg<|DaGO$ZM(Kv#Y7+kta$1<=RD!8dm=?)RwY!~#QV8nvY&%ASUpI@-u#$?dV) zDIoB~q`ArV3M$_*a*z7`=S2ek^>n9aj!0vVZp6}RjHKbZKDLIlD(LMftP`m(R`n6? zo&wG25CJ*>Vj))i2gnf&RC*Q&6zra6wL!gqGx|2_9}oh4c6M?CkD)^K{BZ+% z-B0eGgMjsB&u_ha)Bh!Az4xb2Jov*v-@FIEb;dieJiYZ#)Q7&q2QEAZ^iRCKZ27mp z6|cOa^gjzZEikoBEd_d6Ev#mp{={GZG19`I&iqyPb%UyphwK);w)qc&DTQ5q6)9rL z`Mct8#P?m+9eH7C2LUILUf!i14D1h}Fc&^Yf+Wx>Su8nI>txW2}XZ@;UcXE#m(InnAIpwRTP5I&~*@X zobuVow%me8J6CsnnDk(ZgT4nSatjwf!wZuW9mpOdZPgNaQ&!*GSlS8xj1CKdGVuS| zJoMd$&U;Q*U3i}E1X7V#TpOEMd{Q^nP_1S4%531E@I&8D_Af!%e!k-TLaVBG7324E zYuhOX2}2DyD0CT9o~qWWjo3C1yR@rdFzD3tg0!VpIOwf}YwBAcn1gt-paSqL;dK{7 zY_#T?VX!%LK-|AXs2WO?OV7o@sMa+q5&-g?O2fhTT%5bwBf9~ zt0l^VoSH=CC9p>9Js_`N`TqVYR#)oisehR`^f__?qD)de1NN6XYDG25!q$vMzB+7y zrS@*g6=w*oUc^Db{bE)-{&j1tq|y?w^8$h4&mRGK`AP?GUBtg{|LgO?`C)tK~Vl(k2**p&pwVTrfJcjyX8^HnMj}J7g zM@g7#?yd<2)mmkmWX$*j+X}tySwUgIh$K}`UjG)iTaNS?k%A7(Lvo$9dQ^SL0IMCE zuy`LDPQI2gG>9Rh9J<-8tI>MOq&@bwov%|lAvc-W2=RqT36H% zRBBT*qZK)IL!Wf*n9;7)_#C4MiAOyMg^i_bJ^*;^+$>g>nJDUMN(j+lGnTS{Pt~26 zl0y_~vsyzhs{|Y#G^YdHfr`Qn!f;xWW?aEm^%l_5x(xmxh-wYd7)C;ZZ8k^BRBUhd z#;a~Y)3HyS)We5@W_weiVK4PC&)Z(1azlXH+rpd3&e5hc2K5`rlp?`jaBfNKrh3&e z(&;vFLK>1B!4Wxo+k6j9K7zzX{2~{)OCho}!FynP{XS$^lz#)Sy~#9cn^dnEQP7aL z?tv+;#)tG-*c)j|`R-D4_i6=<+fLU7t7(5IKlbtrI_I5+veX;CTCHhY$(4X<53v2{ zxl!6k72gCl26`ncZS19?zb)6X$Pb~RLZRJHhV;1an-Sqsua1^fzEEk^)gZu{cTLv+*0HInU2+Y+#$zz@}9L}RFTVq#SxbPw|-#fJ-#*qD>~^6gOGHWrbtfyC_V>)vV|;!|B3t z(G1Zwm%3F6_wxHqpW+|2t42-LtiJT~Y&uOzC*zYb$*!iCWNH+QG2!0iRaU&`QEI+| zKL?0aX1J&LYRNMd*sP3X&P$V+6^S(=d@(zw!X1m%Z^SzTx30T8Zj0!h7#TWPnSj7w z0OY1=yDIFq)vU6-*6HL=H)AkMOPZ28#U|nTc66G4hlIbcz04W{m@yoeih?Yb)P?0$ zSf%zkSZ%pNJvGJPYH*e|uugiGe?c)Rb9S#VQX&#^h@#pV2uJ_)IBv}G$kD!zT^h>$ z2T-|cwcHx#UAxSfs9&$^O_yCx&BB%UC7tK|;50L(wpNK5WasgQqK#HGp$)o&Kxq-B z9)jLNpMCC-Kk{-^n;_fz{qrLvwR8g+RDkbL8+S$2L%8grQnsrpAn+q13z^$I4}EBt*cR4ndcjqhAK~CD~kt_M60R& z55~?asIBO4*J+CsC~n2w-QC?axVux_rBE!mJH;iqJG8hv1gE$|ai=H$WAlCI>SQLF z*%z7F7kk#MwSVvXJXO?=>?)$@tTdG0Sjw@Aj_}eU$i@Q>&HDI;-l2l3M5*E`qIKEE zcbGC?0m)Py&6*xh!Rkn+8jA|X{Ei1j7W(IU_7ZabsBtO3JD&L)CxT=>I+2svPJh)4 zSt&6=r=un$r0*(fBu8((qId5KEUhi}v3$7Nn=|Z#;XOxdgFzOjsgXeJATINWZ?Fl4 zbynZ8Jm~#4Ty*WO>mBDbYf$zZE->$zVD?%r+eN@@!=2yQlf?vsi$nD&vi1f74z$#M zza`7+v}wm`P#jKaAG4`dwtiVHJN&lqJ}ayA6Ir^_B%^_AHQS&%rLBejr)z~QBdYy# z1K%%r+h%lBOD1>k1gyq1i3BN3gk@Q?p`KdZ@n-GEZpwa&n`0+?^oM;t+OlR?ZGu&2A)!6|Ko_5TK~Konb@esdq9mHKrnPgf zMhPdxtfR95vBGz@*t|JeE67q2o3Yb*C6@<;r)O3mykdlitIErf?6<*UOBnsfeKb;M zzBMY&-?+*Y2B<0Bf>GYq=+065s1!r?$*;uMXBM!J=;zxn-+S6BDNma@!~2kGx*QrJ z*uR54uW;(wOh&@d=_tVWu1fuAB_E%#G!Y)7A!z{|Lp9pNPFKWAJ-Y;`FO3q-ot3#A zR~T8zU2^>Ka{_EI^(05;sj`oxhsWl@&@6Jf0Y%hJuFOzpn#-HkGuX$66RExeJBq#& zwX5mChhFKmH0<|L2wTkW8Xf4YRnCQR`;#rgn%0mPaZZXMO4p!fI}U{Nei2r0!Y>?Sg~zg^id=L3)@zhmr1JAtcy3)lL!5RIKoSR?(%2L^;n%O;A(S14WG;i&((Ua8*g`i3)5%*Uz|(eSA>1d}?vC594}xw;cju z^Y(qsR%TI&-u$=~Ra{OQZ0R-ASs2k?=`I`2>C`*zX`3E0XukzLJbV>9zjf9qmd8|t z@!WmfuT3`f>sU4f{U4w|@Dpd6ROn88MfQgPD7t%UlXf1=|NLaRrep^8Q;S(oh11nb zy)#?J)27sj%F>BhUDQs9f53y)aI)CXV%0U}rQP64JQr=D`Er0!Z50o4)x|lFI?=G0 zbtH0J1-B3{+6~$z3V}wI*Hpe3xr#SCaDoaEg+n z*^N}&oqZmi`1ScmBL*vz&0KZdjHsX5F5D3#fP4cO3K2#j7#|zx2VILdZv52$giJh9 zwT547C7?-8UaM|cO(hT|q|;M2wty@4G&2npi8;r3hu9IN-eGo zRCV+sVqn`S{i_$4pUJdjvuBw{{$w6A2v4}X(`aZ<(njdGJaE@l-8_jM_VeOx3x?OJ$d+lc@ zjk`J;qeUo=i03=Qxe_Aj%jWOk;qQ{@xF&mI=udBP`vX2GOd})D{WX{O#M8B_A118g zgA^c3@UY0vkKg{(MwnNfYn&;By9D<`wP4i`GN0gjLU9FpS$-x^c6guD4 zzK(x&t{i{N{@MpM@eJ9yIhY}JE+sSfbWGfA#vsv5`vD->O{x;d9PDg60*SOv@5PD*UYRlP~Q=8(nUkipbWrTlPXJZgQ97`s02 z=(qTE7d|D+=;W(o{C%GbO`Qil2sapL&tSD^(ju4F?OEnxoyS63V3#HtQ;HyN$<2Xt z+_kuK@Y@=SpS<{tu;lw({(j|Z*c1>&{u@X>mE?S2kh;#`2HvP&k}XpzFyKSy^+99x zg0NNaISwnGTY9N1WXt26TACxC^j%Q%#oSoVgjrn+3(enD&|nO<6-Te=+#k?sVM|^_ zQYj98%4j&;=_;)9qG}v^SS*ClbN9*JzI-;%Zy-(LZoAe7f@=vFBduxizOpA36ULzc zhnVD)>AT`3tPG<(AcJtb#+>O{JZvLPa{^zMK(bYFq$t3JO7~weiz?@}XL!8Iur6K( z9N!8Vo!83{M%^P#KXy7xEIzO|JJkV#@z{HsTiszX;{R4Bv3^Df@Cbboz=m_G_0Q=6 zgRBGKl_85b3{gQp#JWpeea$3)@XScH-mG z4Ivt;qbX`RUS{V01{TT$XgDpv1nFASrXTQCv8+H^IqiM-&XIx16vrKb-L34R zio~;?cRuZpKA#eL*%;jPi(Yq#?#`pPjB@uk<6cBA5{Clby8=$%iQc*|S9spydrvRD zz5fBmpw;L`y?3&nqPJn6vUwk$H{r_ltIP3YXnotRr}F$}_xAnp=kfWIkH1&8((c!( z*J-*dXfbcZ_G-0Fp!%DVw=_7H-1z?PW8KS$ITp~I_{ZCbDvzOO=B5@Ntyz3Q7)J23 z=O@^AWUNxRu9)_9qT;ME)w`UK`aIX~VO_addhD2+$><-h%VmocxIbaZn=ll)L!CSm zt*bCl+}oC6&=7eo)a1QJLst7c?`R4&(M!*-SvIM)+mbZLI_H;~3zcqqOxAjA&64Ls zS=}`5wsGcYtriaB%EqL{@Trel=cz5AC&NcFen}O)rtgORKZBnvgA9A$l8pyH6dlml`%Zm))6G z<7&7Hsp2BOAsi6=%<*F&65p(9I}<5RdDP#JH>Cu#&b_s7Hm zyC8JB`8&Ik(rE`H2z8&;Zwiyo_to)~zq4YJ1SK_K02KPU*plGV?boamKTgRhDElC8 zV)faydtbP#mu8PY!}+hFp&p$a)O<$evx!VD$dztzEqK$9b8ma5oFv+u`}#JNinr_U z1w09ij`sbMV;%2!P%!1`>D0YgX0+f*D)-=!yy6%logl{9!D~|cX;?s4@`|>;qc|!F zn3bxPij{-S-Dq4PPVS;c3tHfG$Fjv{w=K5(o?`AfIp{_SqRVxoW+38BBAbGO84yFi zPNjorw`0k}IYG1wlrECdgf^jn=*a=#e1BL~z#E(!XT!K)JmZ`kX9JrpRqCo7QT#^k zdYY9;g_+!&GFyy=58QuEzs?5kJ#RB%{O<8cKNkMkgloW#)6mQOcAFlrJ=E ztwAoz8i~6(0SkB)=YS+I?b^FrUp(U)Qi81$$kPcL_e6iu^H|kMi4M{hi24sQG-pqQ zn3>%=yNjgsKL&G7?;stEtS6_wX-5R|$CqB8j-Np5ZT11R&UZJb)8n;2?bk1_AF_Y` zeYy*}XdMhpAFsLJ0`6|b&jk)Hzw{g)@9uB!ZVk7e-#v9qw7&?X<2rjdQy$TS-5P6+ zj#`#%zxGjz*;{;>kl0o%6vAB#6N~&=n^CNG+B4wEI%)Af<@L~G5cH7z50Kl$VKo7H zj~%=5bsowR*G&?N5&fCGjk9G+X#P5m502l%`Y;2qjJ`sL@p!X1h{E`xovkA9;qR9; z-ityX{ntyzxWlJL%x7ri_&+Y($-wuSW}%!2q9%_sRYeQCm#{lq8gf-^1(I)Nqa*xI z8t-*z7bjnU7|$t+8K|Pd?RC`lPxoQfXUi@S8MQE|tox^na0BJKq) z7MXkU>usjFzPju!d&~Aac{zRQmAiZj%=OwDvZh(~TV{8>w~mAZbEG08GfB>N!or2~ zbthqXtiisw9go?*m(w0s7i1}r-2JGUVHx45+v2}^@89fAc4_Pq<<875*RcT+$3Tuc zFf!1Mlm|_Em)Bd#p0DwwtL@G;HG7=d5UKw^RmEu1#>MKbPI(Jm7P-M7cy4fyPvTj_pPUq3xA!m8< ztuK7_DMvhg_zGgkqBZJ*|1x0JnM%gIdW(PY2v0<)c3HmDoHNE!jgY_V8T zFARo|$|jF|T4v|X@ zq=0J@v5Z*ANI_q8xg4&501$Y0L+vANX_wX*2?uZ4P!F90-#g{6#neBJZ-$G3>vcIv z(OnxX9^K*Ba=n!LW2aE~H-==CgLF%4lAEx7RaW!Sqt-dZNQ(2lN;Wz+&GuC#G^T-jl95+VfXB^7ln}s^Sd>Dlc3zK@?a=` zb&JiLKfDFvu~(8|Rko}C0&cP)?r8d{#G416pfH)Oa&7GT5q=yCl}ri3I3hpeY!cJp zA|4(SO|iAj--v+s{Xgb3LRQwYYRR*jvG%eU@Qu{C^OVAT?9UvH7PZS%4Dl6=^f{Lv z3Z2ayscg*I-91nadXA#i=dK3h$XmM|I^jI?BU!p?Do3npw_c)kvFEL>a8kYh&l zIz4llJL(Cmc2v~9K;2s}E15?y|iE8C7g4w#$PKWJY+q3CWxv+Ft z1Gz1pY{6Ct`&i-9(HMqboh8fS9fuUpt4nqBzUPt%{nRI zM}0o8j&r5wh)*lT_Z)Tl6g-ZenqFkH?n_aaw8avDOSTRTN*0V>9`9_}-f~GVdV3*+ zreBa@PEV4q=%vm~0#S))uhHdYs<~IVQmq~+R&d#@l1GDj1e-Pm4PH|JLMehvYlJDT$`+u|sW z@N6!8@q{()7dTzueaA{=1p})lf;`T@LxZCm-?f4s{1RAr7q;O|t&$)%JvFVAmK~n0 zOk}1lvTY&Z9-ls8a!cY3cDN!mhYwxY{3&x@)(p3nOQW^c$DyvEQfR2{#T1RzsqDub znaxZUv@mvmajMoG7DAbK;PLN|%3aL%3*bUp)xGZwpvr|OUT{74V*2wuIu-ATbG<;A zX0i1vfwsC&87BW?FU07y;8I_s{00B}X29 ztAWaee7Zw`-kHI3^bC zy)ZR49EqHsX;yn`^)0O(kj+YqewNSjD5`#-baiF4%xTNUne(jI!UIz(m{K_VSZ8T! zXHt6aqR=r42Qqx6<6PWhJY11Wl;|!pKQ>Ae78rf-H8S*awvSs~9^k?}a$oIiTv*VD zsP)!o73a(?Z9@gA8{ST~w`=GAT*u;`4^8*y-TZF4iLFit))dCB#{MpA@vl-P4cs!m zH(poRX zur;H!CRB7lDVZbtYXmVFiikrf4Rh;?GynK{DK%2hx3>X>i^bNePV^1J@zb% zcj#^P;=>MrnX%zD5U|5=jq>sLrO!rapGKGsklOn*H#|~yUC`01)dWnl(b~_tS&fuH zQo;(kGEcc^|9s=DcF|GeCVMdn>ljgf9&65F0&3$1=}mu(%_|ZyXzR-#O--w}{jR^m zhCv-2RXyjUTT{cPx?5&PlZBxTZU?0 z@tQ2Jk#kZ~VAUtV46^MWGKg8<79USuNHaJ;vDxfRF$6peU5L0~id`kA7(kH}F;p9pRQs$g=u6TN5bEO&n=v_=T}0xYh#P!8N{ zhGZqDwfOcs=9CE8i(NMBfod4EMg%yCCZ?=W1vPWQWI=eU$YC9~&Qfj(OG-|gN>t3c zK{DWN?B))?mu{(zxZxizJ!(Ryko!(hcAmiC#qu7PvGNQ3OOKSkF6E)4sLsN=kJVCq z_fa;y(Z?);XPZQYAuu_TaCsJ}XHQ3{i!-bltO{f;Q$6*l{ zC5QTsJ3X6gK78js*K||`58~eLD?)I=Wp_{z1`(LEbF^E~DhTM|J(D{RWj`6ZR_jo8 zVCG%{8Yxd8mIi&@5xxBL7QKg8D4fSK!(gDiw}rEM9!R9BkOxwg=?don$k|966;MD_cM!oX$`hS4-$9)uqrumn-nsKA74v$uSp_qCoDLd!t|u@J?v03}fK5G?cyP=|UO|JR3qnsHcJ;o8~Y%BeuT>5RsTKK(6Ma)C3_ z9ZNR8N;}{?dyb}{xu|Nu2hQ#bvAG@%bn1!e!|SLqzB|=Udhiq9D;RK=_xwn5c;xl$ z?-{s)#9o;0immCX^A-%<>^G8M!w8xloIi9A_Man*wG}9()rj=C>Uq5WKvEE7d*2T~0=vhrqP)YCg@3N zY%aO$E^wSLd#+{{qha)^d#B~-RBTO;5dNz4pprYq{}?6X9W$3&As_C;b&bi01?KlXivWH<0^F?Eln#wPgqZ90%R){ zzSw3?kb=zs76V2^>=}T7j9?Tmt^n9aUsffel*hNl{i~q)ZKfsVS(yMYE`4QR*y77W zL4%(O$IPBAYT1T#kKDI&QKpx>t?3$pW(@)XuXYZ1b)@h^A4O=p?MJ>Anq@a+bl+=u z!hJv$`|#oJ6a08h=etT7MpMLrGY_;=#D+Q&7?hqLI5Du#b-!8|OrYtc-N;7!58zX9 zaX+>}4oV2D)H$sr@o1AORRxeEfa1^;^05W~eA=KhUVRPe?QRj3R_6-rNG;Mq)@qVl zKD&OPOi6%?5)xN#NBu`F}Z>Gfn-j7e44^0}asfJg$`QYyJd$I9X&eE|0U<zs(sb32#^806MZzRpMvV5puIU*{E(27Oyiu)P%r*V4XP5 zgqhcXg;=axL*FFV)AXJg%Q6cK>KK_exrRCuy2z@nBNG+PGJCo(bfloH>zum1p4@CDpH#|i=m3GDn00~QF5^WzQW zU09ef7+Dpm^-9vsjiN9B0)=0RFa}Qm`IKlGgmO}FF6=>RgVma5(j*<-Fckw3>^CQV zNfnV)omu2!q+1jl>zj8*Pvx0Np3~Z5{^1lr( z80NEMKLf1iw0E;2ZJ5-f3b*I%!Z+o!Y0&*oGYNJ2aO>u^#~gaz)Oo!D=_y?E1Ux`$ z1E9b`ly?(yk@VVH_l`LsujPlEBY|iC7gXg=C-%eZ=_w?cMDYe11TH z8-I1lOCU5_qWt{yCQ@ejee0Se@E;)0KARw@{rcstNA}(D?M37zT=P^mzIF$22c1(} z-+J901wDEF&myEa#r4xa!06qXaJO&Z)>Qg`QVg9>!O!m!H>eXq)`7jF%ZKn3yh}pa zqX_Vktnnr*{fER2R*Mvj`}1Kjq?)s07(_r6iX#9ifSl?>@9$DgV`|m%q82OY z>IG1YHXF{LEA*Od)4oZz6{yek#GH{_~VJ>)2aM)xW$9B zv8|{$U0jcigXNmjsM4m5-0mRS3bzeE!(@WIq1LhQ^46%DiD^#z-2su+2M?e5PtdRG zt3OcNCYmU${>%)}zUz(s)?MuT*i?TVFo5QxwKUB$50xmKGpbjgS4LX-oSjj~QkPWg zbbx}x_oE83_P&*Q1rm!O5<(Wvu{txK7}t?vptjBKj!MmqO(*8lRl7^@E_B?ykU1?VfnJSL#((=S@6UXn7Im`dWGT=Jpj37yQ78tuD@3NHOR?k}TZbU+%-Z zE=75!z`4K{neguuZhpT0sPVOEMNtinO{R`brlwmo2=@#l((}WMq`+FIgNt>Xz*sGX z(i*>t-p1*5>|kSB!yRwDuWaZum^IaIrK?Fl zcpF1`7jidXn8=%Imu=M~psv1H$UNO$u)}q})YtkqIYj_nL#>&4k=7(3GBEy^6)upX z!F#83j%5%oI_;9yB~Z7dcJRWX6qHwKskKsHp0yrRVU$~vM_ZDA!=_`ea43i&KTa5H z(2$<~82Sq58l>FTGM(!iG{$r@X_eNsMl4pkY+qD1%Agt+u$C>)u9@Y#76~3A9$ekQ z_ad(*m_}S@AZLnI7aih}LWhnBVUU(1Kl?&m)+54Zq(T6Xo72O{rtZNSJ6y+kRUel~ zobyYImZ2CE;XJ1V1GAYR)|pdC<`|Ddm3tw))EH8E=32Q^Dw(7Vm3{w9|I>qTx?7tU z=IF^GN`V#8fTrEIsSVL-S0gjL(be&Z@rhO}i^AIh_YnFaHtVmIUfN~I8&yREMHsXM z)?j#Icj?ON;RUX#+@*!pb#uw(#;B0eUk#$M$+T$2I(udeoqV7V=eXYB(<+fDpt33Y zm@`lWyTgfVR72(WZGtP^gNZ{TXaZhp{|}h%Oxh3>)d76+{{ltILa}o*9p%KmPJWXx<8=B2i(!P?}$vl_AvhTR5v3uZAsH5(BR;k?QH3vUb z2Uc#{OqjtzYcma;Z?L)>{D;J_L4@W{X|W!cYN-A-dY=hgpD`cfc8#i50!93Ecp=On z_(qiWY9x2h#cjYeb;Gb<6ox=H6^cUL1EL$*s48>09E~b z0WwV%>&BT+XK>$c1b8B?tPlk?F=T;ft)TdZcxtAZBTu=P&alDcW|t8~+L+|eYN z*HqiGo}NFzS809VgX%IC=OS(7hed%MrB=xuVOK0gbwGrPK=?s;UE2Iy>Fdp9OL-KH%RwlBTA5B&zDGe zd&C%RNsVSlHnNC%zS!O=H7Tt?G~Q}bi;FwijL5v_Q;WR7_u^3&!Ch>;AZZI3(Gl=Q z@-fc&gnELiq`V4GLSZ6I@eQigb&A5QfB%V7umFkLv|iQM8qJYT?r3Zlo(B5rS=EZC z0hsrRGScsYI{@nIV4oiVnVwMLD$6c`xJWA~OX`b^;DEGzN`c6@hk7W5r`xjUkO_|k{_mLeMnv_0@oGFgWULHfgxmz7J;@!Kw z&tyIS00W2>@E3?7!u`U2toNwRxTf-<=e4FfXqv>mKSIPv%n&Xw+#;mA0UPj4s-Y2L zjWde11Vvv*DTz`szm9~a$bQ!_z<`d2eyitTvc*sxNlN--R%>HOjk{O=jmp1bmD)iV zWF==#qzm4c8?zMs++p(V(|2q-5FCIN-sDrxCfnuo&C7A1toh6EljYSF&EZ}=_R-J8 zo$i2ep-5p7H{5;o%9o}`jV(K2VXPjnUD*&Fl7@T)}r zH)6`=ugDp!vwMG8BypE@lsH>Ij^$6Zq#&+Ejdo}CyWwn&1mZcht?;m7pE<2)L z{1z-EUHl78gKT3X)5~~1-cl1FM3Pgnft*U?QHbSRchZ^f@4_moyzqIcbBmd z9lJ1N6B2a_Ny+8UzMC^f(1^SJU@caEio@F^$W;omE$ZWU?%&O5%-+?}0;)hMv<;I6 z$EfD`jI7V|HuCg4P~#URisaiS8@g}N8t}s>JWfL(F$>x+T)iSj_mgIQ20h1ISkU80_w9(T%5Ofg?s@e+e#e?<5V2H7A6M6~&K3Z|gG)mNz!k(nsyeKekD%h0Q&qXKbO|N#VVslaD6NW2k4bo>N|z z82f>O|3_!@=fxK^@t$){qvlw_xG}SjpJpP&NyMfldE*%u-I%xndK!Sjb``D#9^72_ zuVQJ{VMJ)aPByt2xt*&t;l&=osKa$szvC_P*8GiMyK7znp1;j4D_RN;BzeGm=emaS zQQKcEDn)XAeBGa3huAWuO?6?Ry;9770Ez&Qe}J!`-Zv75oP{;jvlpCFUY4N}X^Irf=ByGFzLAbgtD*x~Jo$K42pi9s7M-pp3 z2yGdY$QXP$#@ES5}6>B77y$I4C}3N zJtD!i+-`4$Hz~7oHI&^5 zSK*MtxEelSRw`pF9P4FYh37)+GtuYTvtmo?d~jJCCE9@XOY{pk_+$PZe3?k3Fx6=D z9r!vnOqp$zES9X3cyLh3a3ulOPqS8D$_B^kby9h~Zt_#36nZ^ALbk+n?4$pFm$j+Y z7A|CMZ{5k-*0!e`xjUCP=ZVTb#q46@98H+Psn|_|(~c@d+l#fT%AEC$Iq2J@I=1K@ z6JfB)hmYXYSgKETmqloQMa|+5J_1Pj&fc~Rpx{|rUy@rLk!7D&8J=yKLcVxx(znPx zy&y>K)8!prc|80JM)FenNNDggv5XQqxXNmdSCn2`?x(Abd2-!IcQp> zeE6Ou3%WR80HLW3FOqw~@d+!k_sbgmpcEn0XGW4U!NC7|5#-or{Q7OD_cmJPP2}+B zg82*TWYCTm{XalaXZ#DXi{7cJ{7@4PO?&r)U32KMv` z+grpz@0CDm(Co(WTRi&>UL^J5)|W9g)@%Go(hplwR6mAD_GrZ-Bj100Kp)3$^w)XJ zls4P5OXgOp<`(}-APpon9+aVNmA?Me37gxc;Z6`0EL1q5Cl7}1vmEl@2@AVVL;y<= zKW)CUud;~>B=%ml%^U!M6Z%D(yopQ5NZi-rgm;i@Lqr+jKY*nv{ld0??!GI4{n!)R z)Mx}SZnc1>9VS50nx-lCzz8SnICrQG@sN8NT(Zset<;G#(sDAr4wgR0=V38}MR`5# z_?Dm8NNw|dUC0y6q+jZhN+zQesC$i~lB_?r)s$P<`8C3>1X(%4;EyF)#mu|s-2C72|i75Z|$`{Q7$)1liv4&Yq=v7!u5cHj1e931WJiH zT@1*MCLFWPkj);pC7;bl=;P*#Xx3j{J%tc@qBJdF<+giU_}&S^g@n8uWZ zSfSAU_8sFfR*=d4sF{R`L0CQH0q z&tH2}{iM9~to&DvS3vnwT@^YIu3^G?M{`ym@yx|M`*n*(VUvfe;^=j6t>AM>MsnDR z166ojpYG-~QaFf@A!+fh$4sUSFM0P5O~ zt3)r=#Uv|WHzPT_s|DL^r}d`tf7u{lop$=x(+^BD`bE;<*q_PF`lzkVZCFDm+u6%} z=_at^o>Od*S5zyOj2~X@RIjX_yH&-Ll z+_+Nn&yGE?{A<(aC3cLD2%+9>HjxJdN3qL8!(0xNg)jherdcKSXDp7KDdVZN|I>H2 zEMM!8(7ucWb-_WZVjD1W1HorUv?bJMs%IMQbB6TKjTE$-y(}2HAYs0pA@>re0bRWb z(4JFqj=(&Z1D&D&pz=3o24{TlpIto782p_~PD?3Qbz(C5dUCxr0=^jaRRJlDyguG| zT&piMpzM(;(~zE-iuji6?~%4RSyAm@dX0YnSYp#GK?Y`s-Ho;$pS*>l);A@Eqv7Mt&7?U|uaxfLehJkdBhP zc*huNrwZ3vB_QM9Ddi5O{nI5{2pgtaborttVQKUuBu)?Pd0N>1xgsX1q8ygjT#lD% zuqh%QOi`UjdKgV7(=@C8*+HrBM>R7yvlg@M4~hy4r{bh`ZT%4msT>BcR!I`vILx zmek~gI+=tsDCUWr<$jVYBJ}%mxEK))JUB)3E>#Df_wx{ZFtM0hvnf*p3w9Q#{UO~8 zi_J#%sbI0bHbdF@>`fu4Of_$Xg-v1=vqLH?wk2V?rh*dvH$`-vbXCGQg&+#i>-_K1 znu%_a{WLULEktEg;q+XWuUygjd)!X5n`f<>HmwL7XQiO2OJGf{ijUke5Sy8~51EHN zq&qw*L7#uJDM5oqcfb#3AY+?0zxwsk~O+z+p${0j?jaR+H{;~-CymQ4BcOmgA#uLo*{w6xPDME>FO8$ z>?eN4MAlmFw=>-Phdbqse}y0@t)gwQ!{fcbiYq*|bS*VJBq1@w!t?q_r-&Nmf{tr0 zURr1t_LwY-Ns<~buNmW#6X_Ep_NoR|v~0Z``qee5PLBK>*=yA#OTfM2oAmtR+k#&; z7qh}tS}K$D{m^qs>;qY-K2ERLV6EQr?8?x6V5VW)MVzCfFV0MWB=(;rdOtA=z17R@ zm44*dhQ0fZajD;mhBVgZ=Qzq$xZbO=HN!aW*tP=SmS(v<@pm?upmy}_`4=W-;6!Lr z=J*|9O(BT*dB{dd2EE}PZp&QJ#_)U730DWvv*E;#`FkAtFge`neA4tPkt8=wo7rR^ z+(>%1x)?};lp7UgV;@!+(_n*6fgSeBsb!Mb*Q|3R9Q8pF`af74-Xl6%45RWR%$l;` zA*p1X@perNB`KJwjL#C;g)uhXJ~uyYu0j3vbT3O`x=WtTwztqlzu5GT`5D{z8t-DW z>>GVahz^a_p}6>O1S&$E(=T0S30J6#=`n&96zbT&VpLwZtJ_GqPKV9*lH_AjcVSE7 zc&OzlfyC_Wqx8}j{>3chbW|DmcA*P3DuX<0i+ciZ5k%Wr=T6{T9v_@OsZfpjZaI^s zQyZP8Ew$Qed)=y5-&EO2Uj!9H&jGb+-#Kcjjz8KMTekR@gnL|=x=bu1yljI?rebUObIBFD zgNqL(PI?8cI6k&r(`%Q_6>WToyGKzQvF45A4qSR^IC@ekUUg0RRjdNK-X351(F}N* zyhb{kJ97kMcO_E{fr!-ki~M#sdTC}uh647-j**x@37mP~e1=&s%(GtEP{RuQ;Mm59 zJ-W}=F4=@~C-yz>t%scW9N!L(GpPvePuz|XU)iJDbOm6ivKmYCZG<{jR)q|aUiQ0;y!jdIm5{|6 zkC4V&Mdc3Dn2%6rPR}&K9v4?4)T+FAuWw|;)wv63L{!#c}@09QC`H6i)bN97l< zdi|P-(?S0C`m2Uwhh@>YYz|zd?2Hs^m?yfrcBES8S^c4QtrAxfSx0@Vvh`+sJM~zG zSSkuFWupoaV{<+>lQij%lggX)MO= z&Kl8$`8LVOCc|msBXb7lfl45)nAjv5k8`8k^Q2Js58$3lwQ&jaRz2$2uXWam-1Aed zb$(~_hQK=VO;SmICWWVIT-k+3j%Apb_e6;DctO7`>m8h; zF)xO%q(ePzDCEO<&5b^>3Q`gdkMba|GSEyJZcIxyne2R`KF@16?9dvvd-Qgpa6cR8 z-d^U1X1UA_vLGvZjKImo?&g1hp=_X8@{d~TYYJnBjxO{b+^-qjPOj4EVmCDnWorHD zh?R-l-H_69_mSLKpEbR)%v$T&ST|Vz<}Lc>Rf~C_G*dFPE~P>1rJg&zcTm zZ=%lJsU>cEQ*NAT=B}>QI>imkY3t(hFD~g2|64R9FT?k8ZqgyEQ>AsgXwn#NB|XeQ z9m(T)M_vl+eT38Wyw;x{mKFDc&~T*3PENm~<$JH3=R=_MK5JMkCrfXcGonU&KW?#4 z9`~@Cq3Lu{W*A|Z_*!aF2`MD?v_$qVz1Bze zd2yy6DR_&j!K$+k`xd7tR$rSxVyA?_DRE#V%=Zwl3(vGhR>xOyo}lCM-`K)=_++lN zjP?XfInr-fxqhBAZ-E_}#Z;guWyXzHrLQuB-yWwURAZpX{Ls^}6=>5vvZGd7u)&{g z*BMHSZ(Gy4yznv}=^8bXfUkx>Fj1JekBuVv%PXEJdj8+*Vb(4psO<|1WzB1?4v=mEm@e>7Qg$aI1Hy@MdW;OZgG|e7? zG?``j>2u~J`SpOgfZ$u$2GQb>Pc|AQ3}$|evxR#sXQA7$OEU?X-xFubbThfK!{W0188tF`_Lqjk28AZnM(lA$dd%ED*2tN% z%)dj^tLDYl!j&|2)To>Z85w8iL24gNC0!6`HgDwVZOpRvyvrKGt8VzBK#O`xDkA^-l!a%oZA6EqP2EzQq zrwomhT%)0WSVgJH(Qht+Z4=9$+yn0BPgBhYPqf`39uyV-0BgvE*0hozUeGXx0l`nc zUyh)S&{pJj>s*JHcqDv$CC!n>yCmNA`RFn+WOc<^1XEtNNS>>rD{v>o8PU zlx`Tr>=giYNL~kYyulm38^_l@y}6Ab5jYw5sGPpX-{ydE5=o4WS8kvdBT^`P z;P8Y9;B}mFzX5$BdnA?#5Q1YoOWULJBw>8XTl78^^$F4W-eOC)b!sDihR+Zcm1N)h z4;5QnxajWrvwu&Jis(Op_I}2eQ{Kx;``x;bV%`H4G)Pr?|K%{dy!^8QBTxTOe&N6w zk#1Rcwsq7nwetg87V-TpqUAibrqMzbT}=XuC$7De{XkJWwe8R2s$v^q-DG2~(TsZ> z&e;8gVmS)NbLP>~bY}z;dWHPe>_!gQ@P?%@7S$wcvyYV7;HNcaq+G*cbcN?`iTkkM})d zlt>pct5JmyWUd&}cu{kE{kon4C_goH)8rrQaPF7(k!Vd?HG7rLo9blWCpH-utNgUg zKkBH~&OeKlw$owRyO+1iS&TH$h|j`&(}k4>qU!|fqKc$yP5}|&{=>fRiMR`bn?!31 za+{E7yWBsc+D*NL9G|Uc_`L-ad0jtySm&LbD;~bwx0Mq5qP?=ls=te(TEJWf`v>Qf z0!Y9BJcZ7=RYOyB4ZX$wo^DLB9isS=pe`Ymf~N<_bHlc=#>hfkg)P+)>U*{?%KMh{ z6%rB2-OrqopXLKwb)JNAXhCUZ+SYsMfBiP+;cIVLrk4XV6J(NLd%J0~LY&hZR3k30 zub;j+8|Ql*Kl$GfIJio!FAck=;9j4A6tkq4ucIpVo!uJQ_=w0P?EZxAYr%aUPH8*>(k>|^YzSXA&&R;&??|A!K|$|w z{%7a(`TeL$0}hrA!_NJ5uI7Vy#t=K0(Q+6r zgy*;sp4T_Ha*trdL9QC)rz=NV$-v?n=@WBRHrEuma6?#D(l)oyj6Sozw!Wd4g~-1~ zz@)_F7@*j)uk+KEKx@;nxG}IpBo<&^m2w!gia^(>)o?Jj3D2*TLqq6bP?8lZnI5OP zYP7s-nEOBII>+G1!iG(EFf-A_$;7s8+qP{@Y}>YN+qRRAF|m`0o!Q>4-LLljw)W@g zu2a?B=X9M1*L~e2J>7iS<()1XK%kjVDNLhLwAZgBcr7v`f}_iDZYDhk!cp5M)E8Ra zxJrkqC%*rm&}H`XKSej;WcuQ{R^MA$L#j z(?<;L%;@Ct=upGud+LctWZYpw7}99b9fCBR^VV}odd#Jq)ci+<;xwk3ij5Sk> zQ49e7(?z1PDz`6EQpU_O`)N_?hB$FrGHMsa?-w13yOJUm`mDtCn!W}b@v{vD*KrI+ zG;nlOV_xQNu@LAci!ItOnxL}eMEB}QisJrfx3ebAZ0IMz!3m#AFbDsbZI-XsT7VLZC$C1_3^~vjlKC zDT#56#28JSm4UYfr=q37IiM|4LgLNN&JOWJS*nym@_l--gXIy`KmQvg%%f@YlPQ1_ zzTypl0xy9b?6cQ->Lsf9G+r6kDzYP*_!P{@TPS|&9ho$9EVGS}{0CzGF^>=AbbSLr zq`0-aCR3U~{O-uTeimLjA2g&4)@h6)=HEGWMht%x^Gz^VRycWZxZD(a33xmm3R zd)s!|l;l?|w_+3nyNDZZ<_xQ)dT%bJF2WGb0I$Nn){fiR9LL_KyOJkPRMfRgVs&IS zQK}U)mTS^DVv}NL%Jr&Wx6^8@C}A>E^*|&EW2C(>>YyURxD;pyX^6)WICahC^@CDm zjGEB3m1?^)tZE@6CQy=eMI;g@5k4!s0ZBj)9RjI zd@7YfX1QH(EAfvhUhlvLp_P{Eq6v@jHFcX3OEswCoo?B#F*$1W&f(LHAbEyvXG)R* zQ8?Gr?26=4&RL=4QTPEE??qRs6s_Sz|4L=xxMVSq;z<=HIoj$a64f`~vGzOIoBwkr zIO}5OBgWYZ^+*Lhp;>rRNP3HAc9n5syO3^FD7+3_a#{=ec>+7RLhgQ&0%fEELcH15 z7gBd1-^(6fiz&}bluZqh=!4w6k&BeMEluVjN_d>7bMUbarkq*?EG^EN0ywYez_Q3W zYAE7;-)-O6vuwj2PVbS`tx9h0P@F`IN$Mal7kYFw+tsF9p-S3}`&TZDgeuBescNF( z>sY=1pZ=pQ7w4~XPdA~fiYK&I&stO1ok$pY&zjDt;Xr~S5Iw4Q4=1fgmNs`b{ zH+L$OtL7|Yj9J(@_5aT-0yEaTem^$qcqMoZ$L7$KH04IkMx%%!HC9KkJ6j}>h+0^y za&d%kYxSz7?N4%vuS=R7Mvq9ZW9@=Et@=2qCva)z0O=3uWF3rG^GrTbshcJi<%H-(a6l-joE`J1JNkqwnAmH>AEcsD%TYMTIxoD%xRsOgfp{OfI@4 zhiBc}sv;E0BACw&(M@YppFmM6OXeEAMcKnZnk+JXYK!$_(LPS)MFbZF&MX6vO zz}^^jxzFjb==gILyPf{@iOprjA7&2XOEMmx-fox<3l_-(u(NzSfgk_#VC@Ivj_h#z zF5@b$I@!|VmJ*FFaSP@%^|*LMW=Z-6H_OTGNAIU*LE3Q2{VfTuo6B4rIgG7M0_$Gv z3Q#FfDJZqEg{7v!vSQxjb3>`{^?elztOu%a-Ui6vN@gc7fHO7UOPtMrxH1TeMvl(< zS@rNoq-NQ|?T2~Q#V^d;`aH=ROUkbn6`^puewIV!tWnkbr+`x!AWjo+<{7mO-pu^P;Mj5@uITQ z(9A9LyJQhP9o*CjO=o@e}ULp-GolcqN5!H01Ir}nvKok6blSy;2w zQ8`X0kJ^nMkU!j1(B2Ym!@V|{U-mKAGs}ytywT+b>azKW`__*xR($oplNChN1KA@# zle#2`0LBW|gG!$wu%`6s!cRZadqA7@W`Fc;$m8DJRNXDly1w@oiLIF7-qY)gw0qBN zHJ(@D9LV3WOS3ZKOK?j-6@}8OqM$J-z(okae?tLl4*y%X9$oI8Z?2c@s5Z?OqNkM_ zu*`tQADd$4G%vy!+^@jh#t1W#53!ar94VR1GX@45hJWIjD|oSrcsMU=l>%L}2n^{Z zh*fQ{N~tlC`I=r5A+|=}KkJ#>yR6r#w3lVirvLjm^Ajzq+1RxLrrFIAL;~C)7cwrWV*BDJvV7{vf&WPCzgMAP*J2z5~ zBJSe?-Z6nw$6&8Ngt!R~xFOO#iO*J9n`l2%(-$}7M#|RD%4}UKw&QF`!xv0S%*;SN z0V9&;_6^DY-<^ISJytE#VQO(d=e5<<~-WyE} zO|DJ{0w9UI0sl%Cv~~y0LN$>|b}+6Xw8V{ThDml1z1iP;xLFt8Z6%mt^drbwA_2xX zq#5b%4~{qP(TdtJzex|W!l*f1(-yDaC3Rp8R6GfTBuT=n?PqY+RlBB&anDZHXZ%Qf zb$8rh`UU$RPWB!IUbI@VSuRGu^~hs6$r#6aNW|)Bq-ItHixuCZ1MUCg6Z$^cGy6rB z`kg)Xek~o(VC7k;wu$xBTy7{#U^Q3?UZfYKnP|M?n+?i72*-JviNl8n1RQ$#6QB+H zn{-FI;`vb+i4EP7ABfd=Yds#7=mu+}F*$acVVEmCCvlMVwOldtl9e9rrN z_ska+$hTj%@%}C!_a9$)L#)mqu5IO_wf(n_ku8J56Gee*Ji)1P8S$oM!!HUjAfyhg zx}=v$fG8L%&oD$b>@f})eWW^C9E%2WO=B;Chtg2;_ta&i=OLc&f*XDAyhu+&YZZq` zPkvG3#4nDtbNP7TzfT|UZa8z_RneC@S9-R0V!w3~YhVfM^aexos11|6JkMt!oHHNi zt@dfXLZC?r?B9tGa#>t_~_(?xTTL=cWWKZ*8D zq>zA55q^yC+7F>O;`TzN{Q5PFaAkWPvGXnUSxcf?*WQssXeFkZu*3|c{rUFw5y^zh zU$@h2f4<#Sy3gZhDzC%Sie72y<|HWT)0W0SpiLe)d%S1>d%)>H-G%8DpW_t2kv=Cy<{8BM+jMrD8!wZmZ-}pN z_xNoY@QS8MRuT8X;Au7rPDDgRycQ1XXPFl95fOiNx+h=#VE6QZ9F!zKOe6leyR@;s ztg+_yLAU&ve9VszIYwiC(y*eW@geRR!b8UK=OFpeaCKRAMcYy(;aRk!sSRP^6>Klw zkHHD7{dI4*xH)K4O|y``xlSfF^UAFHaRu z0|ykiq@j;m?{|sKrpRi_d^h43;!T&*x>sQAvjC*$6TgO=bQ~hMx7)Znw&j>srFRfj zF8wK?xt}OCU?3#4)+}VSRXY`d+QTT1^G2Np7zims#O*0`D4*9>#r*A)c!h70t*xl6 zae8v$AgJw;wA#v|iaTOi{FS?Pp$A=TX(LV3yG+B=tpX-{X1AJf&#%`0H21r{t))r+ zDW>D3e!D~~;i9HM!!Vizjldd37$dS2*dKeLTit-+yZcrPwSFduA*`;!;JPfJX+)OnlKa@Egs^SmU`8jYQ&)yCDJz`+RQ@akiFq%@`t~2&?_{}t;Cc7Hm2uh3^tDjz^I0GVGM09!Cb1XxY1y)Np+U)4FcVWu_yBl?~3@0o{y7% z8b8r>OW7j0k^ZEf#L;t8Qj$8 z*`fKw@_o0c;P48gW)tf_Mk{2w+Wsl(T2TJ5o>OR`KKa(5la|&wSD2Zv^p5${e~0vr zl*tiMnxtYLPTlK*ooA>2QQH{4vbj=C<6$1lo+vM{bZNrqoDw$_Ni&)$u@(cbiF5xS zAdFwyy{Ej6u5kA05Uvh#D{_8K9Hj!1qX3oFrID!~E{2y=6XUy>64=bI4<;VM*QEW4 z)?SE`3uGj%^<+>TbO*7AIhn4#sN`b*vBazyDtMJscZaAb&e-CgY|iWihe|n9^w3b| ziBX^C9UMFyZP-pUY>7(#*# zXd`Qe@z#iF>B-D%T{HOB6|ECFCF{3UWko8kC4H4Oa!k$Q1?vS>t8Ns?KE-Ao5^A;I zmrE$n$;xYOl&LCXn#Q=w*~hias)>>$iITjDzLMnElAn?@r~f-Uj0^bD4?yq-yu%q| z%w;_PpB;~c?fsdrXL=eCWwwqD8ns~1B;b_Uw!oykboriD_IW zO7#|4dlt3e4V%U%$a;Y!DbH>(YSJ5I86UYus6x4i-)E#%QvzEe@B1+Vg))pRh7kEA zzI73J$1@Y}y|=f|(d}==x|6j0z&`|qNPvZ=k~X51>%cw|B2$h=zo9|%>a9U zCmlUCD>)8pJp$Hk*6ZK4)~)M6#J79n^B%*N4xTtd3uZ4VObK%a79fl6*-It& z#gokXC^@kXYEqi)Ag$qcKqIlQ-6SwC8LPI1evFSXD|wnDOuciXu6ugZ5hPJnwvK#U zR29E(=8}cJ^1XeI+?relE-Ir-ytq%H$_QY6`*>@hGl5!EtlZ+Osj6xW)Er!XO~GJ>oyaC{tkHUr*nS}0ued+xZVjJ#4u z(&<1b$A(7silt@=y&=idu^~~VBo3bhC~uBrrWWPSUY%{H*^+R1?zkg}3o%t3_uKb_ ztEWWuu*HS-4{%Ib&^2Jql5(Q9#b^fhy+H3_lW0bd!+O202^d<(WT}VkR1fnMe zFI`^DZmh>a%o3VnU%Vq_on#xPbd?mB*fB&^?ot%jmaXkt)Z!n^G#9${9f7_=tKw5yr@FNp>Lpr+-b*HX@}o zbIX-tl@*~Gt+KX)^|#INi8{W zIVpG{(Z&iMF9d=&#>vS>*G?Eg^jP;`7}F{ONsI2-Th4@UxXEeBYWBo`NF{k2Yi_Z> z^C|r}vwGU;vUqB|F_+b+SjqCN{Vf#2#qFthaWgf`%evyAd30DGIq?`%*;a#%aU39Q zL*PzmVIeKU8%=quR=+`$DU~psV@Wg-x_mr46|zuYi1sPF$gO6~W^LB-T+Aq;- zl;*mTaqTd}UE1mF<;Rd-t`1tbV8Noiw)g~2okZQr62an2$$5(=*U6DLvlOMY9wqG= zmQr1ki};(X6!cWKVpBtFjfPIM>R||vW66Z#MMilna*E|(yO*kB1p+U-WKX^EYN^Fm zQlUDZ(%I5&%FdLOuFs$`+2^ve?^}`PHrh{0)$n za9O>AY}JC(TefJMF7Y99rUrWW{Jctm$-|4=on{9NT`{4hxNq0uI%wC&mI*jGa?9b}~iDy#9nRL!IoV#@gZP+6nCx*mKPF zU1>gwNKQhS;r9nOMVo!95zu~5L6G^2CZ=Wfk)(XlKWQg(dO9SfC!&_OH3Y+1n1LF$ zt^Y5bxJYzS%{ecYPMh|W0Z@{4<_F~B?F`K?^lso%yyc4v9i_gL9Xd^&R&#=UdxfsF z1nr0vr=%d|xLE=1_!sRRDPTsbIC76reC8&xR_Az&r z#u_&^|II25eXrP`(eE(U_If7Oq_CC|JXa6BV$W}K>CPcDySr6RJvr)nuFqH#UVwN) zXC?@6`IdgFUP)}LL9hxhuW>V`I{@XacQ zR>3MA!^sXK+LVC|ljlFK8igH>8tZFwF3CpfutDmQ;FTT)@AeML>0X*E3zcio{nAq0 zg4{8*c6w{hQ{lZj>Mq|->++ANV~nVmMJg8AEHZJDI-OPC*uzm*t(^5aZITngZ>?3g zZ6o)Fky=i-Y#h#~E8aHbD!qY$t-ETm|3&BF!Nci+dS%$*mid|nDlj2@`jdg8WpomNl~#3HpFJy zY$4Zidwy}8B-;%uwXPnL61Vdopu7H}W9O*kYPNt*ZfQd~c5Mk#JpU~1DeT-etNCHr zeG$p3=+=fTzC?DoZXIFG%;Di$mnogtYY<^{U>bignw_xRtV`~;n!H_5*Yapqrydlr z4%GTQ<_2{k(pELdXNzkb6l>r~5NCl~@q8aq5jE{ErBr1UPn8z6M0FXe;fl=$T3V40 z%aV6C(0VC?rZuwUvUv}lfqOJj6U!PL%h^0eb-zn)!*@h;I- zkgIh~n`&9SC6#&=M$n*bpS5M%nImcja;3I-J1tvn zooYp5^S!OC*$`I)O#)#aOJc94R`Y(-YNxg+i}sN^mliH~_x>%zWv{XH95G=#UMR@8 zBJ07{PxMh>%Se&<%Z!{bGoO%cQXwc@bDJi=qUlDjQ(3Xa=U(|zqfvBQv5V7f(6Tep zt>O&f=Do9di%{#3{9snSEbDBZ?WdR8bnappae3VWJJm=-ba;>?nj^dP>n@z?F#yfs z3ODq`qB%=uL~Y2dOx4EeLGza~YQ)6GgGl!Xm*ze57;kdr#5l9VQxDM{uP8>R4`LTP z9cK2Gs>&(GFqS1RamixyW*xK@twGAFfe2oocRRUYCGwJMfcmzmgtUu)10k(RxPnF_ z%II{L=k(X{>U8*fr=HYA^N!=}!Y9)hO_B@j@IFhVj}424`|v`WuR1@#@%_U23sm<%QX7HxfCIt*km!#DY>A4ripYGht zWLjXVh89Zukcqk22|HeeTP687*O=qaYS-oOZHM^ZtC>_SVS3=Z^la_Cb=S-Hw(I1T z;1~XuDxyK}Q@jRyPbIR{(1h19q|ZLK?keT4lGd_!iMpmJ`di;LwPx9DnL2jBOl^?G z^-RghaGGOct!`8%>ixZ4r1TO+AK{AXAP9>1AaDu@b+j&1sh=OVa6PNnZd);5`AoXj*ak;8 ztdeDTiL5+JT5yKW5tC%Tt0by#@33mpTV$Hwd4wy%%=mDgsbwGlR5#O1{Ko9i@9An8@jz4rko!L@eSX@wAJ=vM-S9TI_*wAgX)qu1U zT0Mww(r0Qv)p|vMKB}5*LNIriHiOwLtqUs((2Hm}Yt0fWtv1;Qo%&6N}5Q#pQjz_<36juuUnCrW_!oHb19l9xze@J_lzqvWRzd_~S z&1>Jqc<*^$x=!o$_Pfp-`v=(K@770n;UDGSn)80%{lokx6}U0!!zHBLc^<)%+L#oR zwQ@G4Vtprhah9&uKZ~aqFP?CLUPg{QU1Ev#1&P6Bw3Z*Fsw4r(c>WwL@_GFv|D3A$ zO8h$e9Q-8w+zxxcf5tw*clSN|yn5!3`&@eY2YByzcH77Q@iO*acJ2HA!KdaI?e-5a z{qidQr4Q0T^nB&&>HqaBi@WtcM*9co=L7K}GoLplJ-eSHS3dU3`0IUlUukFFzM#i& z&RgtP-m{OXX0$Q6Y0>|gJ^XjSk$K5f>g8tb)y8Ry1rSZA!|_OoV7ti~%2Z9)C52I0 z6jhlrSydHIiA*T{gaH*&Fi(KQAB-d(0MRJ<0sy-MVNwXaUJc1H{00h7DCCYRuq|S@ zI0NSmb9qab@hfIB#fXgIT|ev!^m+uFmgR)e)T$^%ml$P~OBKNYRZaVi?QqqY^5doi zf&A&j^?nOUW9*oq<@-H^Hp6ceRlXfhIOun+2Q9 zDjW^Z1>DtLhBQ~?c*OhZEKXbDccCr~G{gHQ27Am9muKRdkC}`vjY0z`z6B?4hz*e; z=76(jf}mJ_sx2P`>}6@4xiULJi}^K2BPdvWtYxUujVnV(Z*6NdmIZYOrJa?o6t&6n z?WL-tr>ivKF&$!^tIiNUtWTrj7xhBI*Xj>lI!%g1X3fZ=TQ-JyK0f@cCvrx%tqza zVobcEFiF5xJC`VBs)Fp};Y4Lg`Dc}ZG)8h?Yp6z%^S3~8E}CMw0EuU0xxIvbV?+R$ zXz7s~N9oX09+Ek5*GGjVcJNZGr*<%9MeD}Pw4jZxk&{I&cbJa#*}~oS@sTXC)0V`8 zB<1R>5r{P>y=+{rl^UkHsUn<5xV@xJ*ihG6w1x}N6y_?zi^ zi>6^Z|6=SqdvKkkQ@Ys6Z? zCdNd9=?0I4994D1&&F6o`S828WOu^JBi0W5+$~*dr|*L3st5!~rE!clr4}jzYG@G} zECW-Q{we^92!6!xI+mPOyiWR?QJc;xkdP6->U(K^SMPW{=&K2N^3T>R-Sh41ZS~ZzymN8N>Gc>vljtHr$ zcgQjX`X3X=J0-^{H~bwqOaVE5_DjJFEY?8BAys4#vL?Enb9qcx?Ssy{Oh$ zvN1Z?^EObuZSAUT%+fR@M3bQXDq_f_uvA77L`_=>_vA08kO%wBzjIa*q>PV$Kj zx3oPCWOth-b26}|g#Q7e^_@d4lu$!oJ*3L=5d?SV*i^0FF?oDqxxM|!+sw5!p>UlA zBCk3ENPIHU2)y&=ak=>~%e&rk)vFC}w>;mpH8dB`4^}R8D4ZlPMBG1t3X;z$ld|RWD#m zu+=mTsx>t$#ZC54l$w<0W!&a|g7zm{XJjDQ=9`Q(0mC~NZddqxvg-ng zs6L7^zE{P{kaN@KM_uH|C}>Q%yJy#K2WI3>Fv!GT3OxN^74f z%a=Wmw&2oeHSt*f>=`){s-Z5$+pXT{?O7 z9(r=yJ?0#x`WU^b9a}xw1!*j9`o{S(#sE0S01Av_{CEI#H2*l*TCCDaR|{SEj3jJJ zZ8g3a7pjuNAfG=tUq-@svxU&oMkdzZ;a(+KBb87R zfUE9~n5yFKI;sErF+HsQ+FE1@)f4STMxd}(Gm}OWGb5N9hmm@!7?La)?pi)%Ke+tqhpDo`%<*!Y_{L>bz#BJB*4+r;Mr!Nl z#qa0;@zwnnM8XVD%8m?_-JfYYL6*#qG3G@g@vJb)ir4%mZvlKnfW-@v@qhgp_!N2w z%v3{@{=U?sUh(@-W|BnGd?HoyMsSTB7e2m%>{a-y0<6mzQHJ2VLcv9R+k`#3xte1nmfcO*>J4UCmt?v9Ma5s@>hz7kFWAR&GHOcLb_Z@w(T@uC&>@Gw0|`#u049X@QNI< z>d?aT+hDC;YPcC2$7AqvDUX_(872Bso>oiBxE@TFM|UCGiw34VMjh#g$V0pMc+cr^ zcotir%bTW*JemRsc+JzMUyCsqcp+(TqH_;M)e zyipsjmq4%>EA;CQJHqi}m=yd9tM?V0Q!3w#y^^3A7LQJ-FkB&BP(}v*5B^1!n#!z4akRk#QJdF^1^X8GF+CxjB zt>>mvzN~hNcVr#hbq_#|s^aco9Pc5~!s>S}!wAT!R{!cT4#y;NDp*4=o+cHH>cScw zG){^*>gwMWZmuwue3#Rn0KaTd+#593bWz*h z1}u*=9R4DE4qdOM@cp>9La4!ay^!{Ndnd(In=T~7UzHRp2Pa_^Cm|=C>OaWS($C38 zSYE_B;?SyjmIYdGwEeb9r6v+@_HuD$Ld38<>^4eGE-yj5HiYs-O` z@@Kby`Hv9!b&A$?q*%)84_(XESowET1~ldoIl#DJ^Pv$d3V1|2U<-`aRW~!M z>MNopGNFeyieM&95Ty%~3#`JanCw--e~2h4=!7Hax%^n|pvZq2va}3d5I4Dq`h@=T zD%CY^)Yu^mHkQv6j9zB;O5$~suTn|z?GbO7*X4NBMIH5V69|tF$@18ps@-{hUV+}_ z2B~eeFzQb=hO-n_k!Qt?M{7Hl z-_hfcV8X}~h}pbiBeC7wN_$={ON~57j4WqcqIfcfaGjrE^qix_IoShXY(f_5ybQ%p zK&5^Pu~YVZ;NJ#Uzyo=ROU>J0J3b}%a{mG7PD9sJvCV?kPlc9WX|-#$4GwdL8w~uM zD{i1PO7Fg_9_C<@&S2YEC4ygzWmW*iU)%@7Ppt}|%AG4MEAbPHi3&b{K>T=XqHs4H zoSB-P`3I0bC=Dp@O>f#P)+*v<8fXeOq(~uECvs}T)`?P(Z8qUiac|eizY>`t_*21T zqpG5vKk?eP57IuA^RQbEzm6f!>y|l^B+|yV9&M}ExPb8a+}g>;b=^kji%FhH4;m+- z#gzmZX0GgCOZWq|ZHxR$EPVN%`se&KD>kgHSlC=K*KMkOB^}E;)aX;vo>D)@NLlFw z*ED(Xv|5d8T=6c|!eh_Qw-dn+^n+Vf$&77Ovq-ct+o4b0EcznT!;@^X#$Pd>Yi6Bs zS=`rERs~IBjc}Qh`}sO%juH>-Vk&O)1kZ87#O<=IT8r}4DQ-o?H^HsZ(RtCYcap2h zD=R)kU$}ftLWIG^94S#Ig-{E;oWkb@2=My(eLHVJ@c?nZ@sra0CoqCQ0bcw>?oViZ z$hbDpB+7jH{l8BI|1&z18T8p)_gveY_u7vGlp^P-0Q9|%SRp(#S|?_BTgk|XKx zswG`i_NHic8`RCGoEtnZUaA=kSv(6H6dQ(##+&UCWXI3uW)j~H7$I|6p29?~vUlBA z!mKCSoSQRQ)i-tC!iunEs58jRl)MHxj!9^oBw8{E%uNKD#ZO2ikBHV@$)43mo7>#9 zTTOr}Z_Ygg!D~oEj$5cQi9-3!@uMrMCo1YrFcW(?aR=CPpgS{8<>(u3miUdv@HNbX zr{p$Os6xzg0<$9;DXq)O346{KOF*aQ29%em!FIW8tUoqpQkrI4rlk$8ahH2TgLXp` zL;b}?G<6eCou(0Pr`7r^B1a0RXHQH(qU1ZPl)*i2V}GTnf>xj1w!PI_$3dmH&a;nb zltoR7O0}&DHev+iM2cFGg-Qr~@C}|An+M#ZT_=))fr6$Y7+MG1R7T-O$ zXT!|5CpQW_p>{f_r9)Qq623x@5G9{Po~&oU-3PTMl*w#7;;*Lb;CmXzKd(5O&(&$& zV4*30s7DKi!~jz$mFR!K?XXS&<(N81=8;uZL{6b`vyWv4uAnly=#(SeXH|GJe0qZ$ z!Fzleq&_hypC9ic&PUkwCjlS{%NaU5z3zudJ%rlZ8e-Sgr;ai=WvY(^qlYYi{FUNSqZ~N2Nn)0S zWhKF^cQ-=nPNbxuW)|>iKm|`82G3ql?enI6R$JTV7B?N(Wp(xz-9O_tjW(uvT9YKJ zKEk6og2YeBQQcJHlqtKb{JGUG0f(EQ9IBev$0_|qNQ-}VDgR`Q|9>CQ;>4x;;=HQk zFZ_-fqw;X!apY>SItYcAg{qr(sgd5|MSBh5B zjAT9^p_cD2Z4?zk2m@F-xbN;-STgJtZ(hp>-_q2}-R;-M5&cVWvtL;Q|9Z6V|9udZ z<_OA3)v*VOYWq!YShVj?b~fnskyaa{ka8S8Yw^lExi(t|oIFvDy^j&@dyC)x94y;j zo4<7l)e~A^n_g=et&V`Bw-R|;ku5-cST(;HsvQFO`Mc11S%Hm=Y1w!t{rZ{7*REs> z41Y!tRcaP|422P*ESwF2Ow+(7>S|tgpeSrC5h+7mROpAqkelDZ!VXfo*0pRTyTMu% zB1^N4sF!GnbhG4%O07nJsw^C?qq@S%8R+M!2nwTJLV9EhnH)HY))m~(HMW@Il+YI$ z|5aW99=0t0_2eT%e2+hsk03CY^!$f1Z`d^NlPmIT`UrvfgfIABb~f#I%VDXujtB5D zQCL5IRpG)6+gE8gv%irt6KY%?_azWPPXwkHf8f(;uhVBXPj&ROvOAC&Z<5pI_dDD; zu%zk$r>>C}+lyHOmi#%K_(hNzB|1#lyLb67wOp=rR))pxurN020#r&1wK9Yl8zZBj2MDcg{5yG4N9^J>? zC75`gg}Yzf=g?ZqE!t|iO8lLnGh8jexKp!SlAG%Tn&wZ~N3N|il-q~GXaQ?>*UXkc z0>AG4mMJz&@pHmJ^^4y4!!}3mgaC0#CHHv_*UqvqYDR%KPyK)<3}$Tu#)H2zgny3SiN`S8qP_zItGWGWzoSg zH6dLgRGeBRq8XNrLYU5DKZOo`szYr_y2>L|JTy&i-`%gXp;-U z>yViZMytc){c0_W)k2n71P!QQSkor{pQZxg6lX z7G-$>fcHcRfFI9?AHghdR@v+htJy*#EVt*?QZRO_#X_UF=2V&-s1Vt1yHkXzs zkurIb!Uz#^017Ah_GK?MD$`FXKXrY4lSgZ^#kaRbjx*(FRj~|Z7lo?=$CUb>p&KK1s6 zXd01~1ojwIUm}_azroBA!NeH8F3RlIYTWoa9YSD)#O#sg=M#g*26X4nG)y|17zxX?aXeHJjdW%y?s}gfJlSO!tV&vkdXYv%+CyC zK|G5qTZan{+Fp7A#Q3EJ1W!LPry4mjR-eUA3#+4HZz)lpTcyyH`ux+0EDM<7n#>Kd z%=sQBYR%1711+kD(85VH4KvUsiiKc087`4l*S>=BQwRdVAkCAwXYh8TuU);p{OTI2 zwk>OA>(;HW$b*5lt44`p+sL&&aTFynxs-(_nZFV#k=8*8@1v^!`dj?xxb%OIS}~1k za8egpW=`rjHcfiP#O!h^AZX2s7STojcBco0ifNk5_dL|dqAzU*!>to%aeGE}kQ$kw z7;XQysY{L9Y28L^A-e9COF1kt*0Qxt)AZ4b3oNyLn^E={rlp&oWJ;>)CuIvMpB-09 z>1QKxj48o@2$f6H3@U?UYwvR5v{Sw%}s~ZCCZh{0D4ccj5g7{+=h&b;$9iyx>V@aI5<~Gij#3c#9qcZ2r5>yNT^?@9hZY2 z`fDEMUA$*n*;2$()DD4jEG?ot*~J<2puYi854Vj68yyJc!w zCth7Z5nC@RM9h2f1=GO1uT@S%JJWLUQoe(bqEtP~!?(GG)m+!Fr7x6P_E{mhTCDO4 zNVbRXURn>5U!I{Sn9&cF{haqaJjp} zu=IGwSyN~lb^SX<>myFNXdTn$1h+JS%tN2Dvf-4u<+8<9pRC2`kvc#nYajX{v;MOc z=vr1AAE!DTI(&rNYi2l@u#%af6B5#mhF84ZE}>FQ$)8?JH@i6MWTO*P1t}id7Yb=o zI>{<5Z;`P{?1B_0_MH@yw!(>01yc5#Xz=~SR`F)_(I6#PTpdX=6;);6-Tpf2fkNviFpDoXns5N9)ny)*eBIRSg5R1-m|*$R3>?Zua_)_uUSMkKMt0osrJ$&RJo(q z!%dXeY{u?m4|1K0l9E%}9X4i+;5vG|i!MNPM-O6Dkt|Y6Z&j&vdU!b$P)VQ5D+#}i zG_BlQHLUM@vujt%qHbL*YgfrX6)Ln@NhOyHLUzTBk#&`<%4=(0S(6=k$DSs41A&1tkQ2~~Z6;+hy&FRa>cIe1LV|4_@yheoTG7*$qA2HKAOx!yO z+^ZmqiuqF{Vv!9E;_wkUE&?jkyRrCJ8pW*@pA+DfOKoqJjwF2Ivc*STC_0lNHQbGo zyIMm@CQgBJf(-a=MN(ud+WT_KCoFgs7p0_)?JY_>SpCZVUZ6F1O}uaImD+8~Eo}}X zQ_ahKV3hvnPh35N*RDT};}S|*BLaPiRIP|yiqs9*c~am@nygaJ#Qmtho8R84=N*rDJtTP7x$C4S5i9l!o|Lj z@jl0%w5f7?PU{4ENvliV!?Omp%J}?Q$K3vVNNXk+kPRGR6PUO&iD9(~osNY8ocs9? zfV}b{?;~8S&LU1p!5C#hTfEUK+6p&17VA)$#IVV1G1HyhseNM8G?pCaIdgbReQ8>J zYDe`*RRoI@i#F4|vsVbt$4+CBN_-*mALT5y!v&d%KLLVYGS6?D}qmf|IY!sX;2UR(+^r)6zAwrgdcu|B*UqGILhm zGqi#&^K%CFfv-$!bDa%wf*$I*c$a|VUa@t%?6Lc6$zSvFmji8ujVx`mm^M)>MR1o! z6r6cWkZ)D^YW&?Dhl^Swus;M`vex39)$S^4*!NK91I<@Q7W{Y64*Y_IY3>J%!_v!1x*%a%NLaf0d ztm(;-fp`iy?{THWgx9m!DpC#MY{h17$}2x^xlv@o(4y4XE`tWs&te>Y}L{-FAG+cRby+U9p=}^^hm&z zp!Cg^wiX7k{2Tfkp^Oy|uqa+;J&yfC@P~H!Hn(;i^<|oyu3edUo}aKbwS6F0ZKOty zS}a+(ac#ZOj~(@_9S5Jt9Q8DH<2=e?}O@Uzzg|1_gGNEKR_~T-j9Qug?|9X8GG_S5P#c< z(Z2?4!1ztS)}4qk_~*u+PK{UZ?jg8}TIV9=9+wyG2x_~T8_w5D&vU+M+NPmL?oU(; zL(3>o-6EaQ0SNdbIxFM<0hrQ-3#JX~U%DO5Oqo;LG?#%SbD#w>_X%#I!~fYtl=Ax$ z&Hz5Fw@1W>3+`&B_ncR~d5spc@v#T}9{_I;f=#t%wBm=c#5fLQsZ0UQ$XY2b)B|ON zNYS|>*yDKV_OAKvpt2V(h;t!cvP_(vc52TC%9FMn7DnPXpo#pITeSEAhSx8c4|u>c zO6O(Do!fT<=0qlUO+PD8gStizfeXa{0Ax}sR5E!WlOCi$NUEx;^a1~c=X^=B>S;Yz z!{x00w4L*GB#Dcc`LlJ?Q1cyhLUu%2T|0U2TMu3K#nJXdQ~_&u^=))ESY)*i?{_q| zKw(c9A8{hn?jBE1s_z#UYk*^#X^Dxo9L&d9Expl)W0aij|3TO{M#mL^X-|wcwrw@G zZBA@Ejg2OaZQHih*o`yMB#oUkcKT)a*Y4Rp`<*j?=FXqNy?5UCVHogjVU#D{)Nx;* z=d-p0^cS`N^y|6ZI*Hlrk2H7v`Wo(VvR0M+-YFTp#-&YQ>#$ z>IOQCK;6dr+s=>@`5!Qj9bIL~z!gA<&lTR#`d|th1AG7hzW}2S(vGj>#8e4YjJjpN z_WYMAhyA1SeeAJ9Isngsa8#&w=okS~--1v;^?5wHLQ`WgNY<0DM7%XM`wGw^_q8KN z9`yG&4>n!q)8P2IvYYrL&=hUDUA-}1EBr@j5XG|}$>%9r{U6E8mJ6Saig)THpjJcB z73kUz<<4`<4iu9m8`wOthlFZ|>E&RRa^tyH=+M%Bz-_dPaF~q{6p#xScw>RyA9NLc z1Iw!T>teJZy zv>+bzyf07M9ai1uF+Y{&gxBeKpS+@kZG9ho7?tV~pV8y!w#nf$KLFpYrMRSMj!mYa zaPZA?xd-7@>#cW>lNm+xCeTpo<}hE^dYudXrZuPqJiSF%6fn_^H_@sm@S~kJ${)4q zCKe+@BeF~j8T;ljQPTMEFvTofOM0ymlAii^^ZhYrpTtbY56pi?{yz zG(eHUe}Ec#?V*~Yj;!oSn8*Ug{vq<|NKz8G0`Ob?#-A|5*^Qq1Lh4)HXWRi zDDhTK?J4@GcPfXmBwIq7nl(lsJLr|=?ZCLoo?!y!b=T~l1FQvBtVNwN=$xD9`(;x#?=v}#R=7l`1>u$yR^ow zj1)j|%l+Ed7zJ_vMgcl_23L?Y^X?(>?_b5;TMG*teTvp>mop;y&+Z3M-9bi%KYiXi z$!m0VQI0VGW(p0;QtRM}o;CCa0MAL10H!Ds_o-SI`+5>+@|qUme=-Vx4#!AK;M|&C z&69>QY7j@Li114kepBRPi%1DgssfY#Fs-Szz14Pc3fJDj z;`JMrorjpB@-c`yrUy{8Z{@yPDdR4!H*dd@dh&ZZ&U54_+A`%6q39;NWf_a}Jt_9F z-lcf<ZdbVv+TyIl4y<V2{Rz^TbQpX2L5k;T|^$zqZ()ZElax(CUrBYAMmwgWc-5p_Gwb8 z+kxq`LrpSHRz4%?Jf@V&49BadJfn8t6^&MhVHP^2<=Neg@ zwbJ~K76ign7ELI`?K%=z9vahBGnP>*v=DMop!#WvQM7N7pF8s)HScc|48o(&2Wy-w z?kF13qx;zEC@3Nmi|dH1UQI-WwryfG?s}(Q5g8K#%?V!&+|CHW`1Xi8u6R)~k|h{nTj*m6zHx^0macn?swQ5i zz3)G}KXowM!|pfA;-zp+IL*mSw!E+_l6LjzpBx;t$*(YB=AIriHRW_84<{~)z3KRN z?Z#!9Fi0YaNmmp}vN#pqp8+Cj@Xs+6caT95?@;V0@qHw3YX=G;GVc&07ZZ&UfA^se zan;Rtt0@&e)kR-)$`_(TVJFhBtD2ZWkkpWYv@d{%!Q*}eWuz@0yy95dp;`(k+UXL= z-!hA9I%TOU`Bhyv*eak zZxZ+%ij-(9&y{5=@0rYwiZ7yi{{XcNfuGIc+kx+eA2HcR;X$I!c8xDJG68`v)6&xK z&`@u;^>(2~<^&1pW6oT0PM7$X=~WR0CtDrMa>cHzED5ZlPOiSzZb`rn3PRx^_siIQ zVlLKURi0edD-ULjCx2)0p*_8@mfeS%h~h>M4P}ew`pwqE(|c3^!WZ|(Kln-p0l#24 z6p9q|BH+3?WPH(P7%jrKM!~a@r9vc+EyM^PsU#!s0+DBTXKc2*ReaZAFOh&Qw*I4p zkNn{PoV~XM{&(L`POxw)?*9i-n&DLlZ^-=v_?*f91B|)q2hR0<%ux2==aJ?uY)&h= zgoOKC5)INt1mT{rH@A`>LcR^dTUkT=6cTfJy!{GpzbFmtbuak`*z2qlJ~j%pG7JPf z$|I3XMCsq{HL+Fes(XsH@N4W!;7RK!fVtF|;Tp*Fq<*(W_*?*m5gF%Q%8jXJVo!(< z>q+iu!Y`a;8r8#{uzWFizYwC?lc(#iP@4U19Jmj-iwVF&i+r{0zPD1e3p^QPUY?Kr zTmsAFv35jsW%ofd$RozFB2*>$C;k~r$ZKGcXWmwK=uk&nCUtXMFmAfg?ncuyR|Kfup)LMG%iU*)VmJ9i*P4zAP$N8=!+ z8GO7fN4|YaB?bhEnBVtbFaSEg0^+9hW1#|4QeiR(2ndvdpr8o&|3KbE#FyakPWmbT zYzn8td@MMF4cBFsC_U^~fZc>)C`Sd+q3P2r@3$UTi%sp-u=wG7X8gR;Z~Kg z8=F4&HO*>?vqn8hF@w5l6LV*qNw5KZ0$t;Z!Xa433MR^dvzWQ@DdiyNqi=9?Uq4YJ zD3n7|v7ispJmH=p-OtzuyxG&8@P{etMY4Z@j4kq4;n>#&SK#t-*M|==GjbzsOl(k^ zXtJu!xW|nWhK8Ayb_-@A&{+{cVVZ+M>nlz;NRj1~>0@(@1GQ9km3XaO4w~>F@|iGv zr2ZU@)lKORV--{!M1T8P*5xL;9Z_(_w#R`l5$wB;$klj6NHGFdpZ281g(i#&zR+x5U6Td%ho;zekhaxJo^<9FYyNM$*#Tnn?!#@Z+>PhBZ z9L8{yn3O5vYPvc#U8xfpi0#XcF#iNe2=PRIFAXmEJT?PCcl%8 z%v)K1jn}jDjt#6UHoZ(+t$GW28eIDzU2X~9ngFi(Zoa1d`jh)38Eei!SScp6`<&`V z2=7=6Yu)DVHIHX*YiqpGE{Q=uZcygJ6u&^0Qjfe5#YY3W6RK$D0ghs?X9^^wUbAs= z_ZDecTpU}vD$8WZ3pE;TD6e1^r)b+#z7{6F0O|WyydSdU3IR*A<+Lozt?bp#dKF~nJz zdMbVe+i9*Wq!;nMH7}MLx(Qd9Cu);4PI=beGq*0G4nft@sc<|U0D{hTm;m)93K`xq zH8oX-hH5~y@CjMCxUZ^cHwfYd@MG709+B=_8OAh#@2v}S*Bq}XtO*Wqgu&&2=Ljrm znH1?`8d{VySox#bgRCR3B1dX|IB#i{LZZY?sp4=$wA1m*BZ-HT)CGStgb0Towaj51}!V1ShjYJ{sGlGaxJP_Ke<7o9>6g8R5Wz@R(lyS zQk4PGmqb2yu5+Ch2KU$N*?%waqt@%sy>Ya#o34zp=gzv&4QtR0 zjhbz+3UBaXFc9IwCFx+qBRh8!NzIh8fc9|ulfK}yRq#?sL$$fAC*Zr-L4Rq8ry_v; zj8&P-bMLM3#-`~5;@bDCOxH1_Q!UEtew(zS~oco)MUw%?qDQpXo+niBR{{b+4-$ZYYr5E`D0_fg6dx@Jk#Vw7p(XU$x zetns(^aswsvo`m#Si%Jh13XbIZjBJOU3II z2+wMz(AUVb0ZjYU06$m^lJ28SqaDCqUi-qazwr`K`+_Ngr=R&-0g3w8#0lyUJK+eT z37y?+Re?*L{ixBRjuQsj3GY#WFY?g7P+`p4+QH%fc2=?PC-`l#hOE(;HgLpSAKVt& zFE1Vez(q9Q8ww_(m<@ZhF%-5Ys<}Q(c>?K~=7DAjVdwzLyr5^w_n;3ep{i!Ks!B^! zETAakw6drM^2C3daROldy{1{0iAe?2H~An>CQi40TVa&7Zr&~XoLROtc^WzE`J=vP zQ|~dr|A|uIcpc0sq4;dh)WOyTw(P6Bj8V{cC02~p&0iN-X}5~6oA4YoSn_alHWHnH z{1)T#9DkF|Bpj)+g0o_E4SVhp5SKj^Qzp<-Q!*Uo(adu4c(HHL!b6kVlsi^HadhVG zXtJs1vBfvp9hp567w0vh3}Mim;a?E*!@m2#Sz7lJ-m@p1xA|ldN?T!Fa8};G;(7!l zu{5{VBd$6Svb1N#czQ!O@Xct6O4eLD3~t@qstw{xreBj#_bJ$r2{5z#`5XEemqhMHxOXP{4H^)Nlt4YH{bjUtHN)xKH$?{WUMIQqxSN zn@_!yxSs3KGwe`Y3#$E}jcX;KksS)n-s=;!)N-?+4|-a$&$L8&-Lu1BMW(lRMLkk1 zMW@#hmhoyEQGcUj>qYsbVlKBOo(=Ai!@Atec{lnBL$}LM18V+DpvYkNA0Or-nR_b- zYIeELN=L_wok1fE`n6MhpW7x5Uzq?KyEPAX)pIUEn>%0Zzq18@WM)nebDP8~234tD z>$Rl^%eBgwJ)Jh$+_tp%t#|^5@i!wo#rxc0<5D-=)~kIz7QikXma5mxRt%iG)i$ej ze~9R)&}SrK=Fb<93so1I1fQJyB;g~r_t9A_wRQ4(vIE-V%LiGAT6s# z`zc)s>+`1}Oa{Ve{HWWmg3!c$F2)9v9T)IRdEY&A@;Ogkh;&US5>Z?B5{s%gj87Lc z8FqEj={a!CIlf}!!V{ZI_l$tfV&4Z}ebawQi_Q)de;q+x%eOZ1j`k}K``U7J=c8}A zMGD6^_G8(-YFeLQPl$GWv13GTtd(sCZdONp<{0fj6{H4>sfHXsmIcR3?n)8#FKev;#Vui$DHIIpmlAYR zh7cpE>=0nAfDpj-Dapgev0a#?b9NRW3k1b6MZ~|YB4PrzAcH97S((o;TG8`p=OdgQ)H28h6XgX)Id4= z%2!VOF-QHf zWu0vZ&NR`jVz1Sl!ZwJJadB|f>i~5)b$P8LEf4%@2(V0z$1jTrbV^sXdpT<@yaE!| zl4Pp|CF=~Gah}H0rXvIJ6!`Iv^LrkQ;jLuyyuWz0T`c`YLV;ay7FK_J&A;#uV3i8X zPf|U^aDhKPrdk&euywG)0d4;A^*8s8SMq#h=03mf*iv-h;BIr{;J|K3YZE#>y9mr( z=bPUNX*SqECtSBV={9j`4-n zb5m2NoumbK*7;L}3WOd#{Mh+Dy^ivLgVE_e{Mrmwv|497KX1??3N5RqVN}gEZCd0(9xZntVi!PV+C?B4;d>;<5O4CxG7nrAT(C*IY%iR&H zGVEcO6l4jIk%63%MORA_I~P+hW0#$`{M8v=@6NHI2YjciNu^_+bK%SOjkH{Hdg^RycMDX|2ePp-x({kK6s3<(#?u$PnpS;7=zJm7}BlvN+qi`#4QNph~f|#WleTj{NMEA`4kUdEwp>1Q_L6S*kp^-&{=0U z$giUxSkU-A?eki`OA>ThpL9i$9yFa)L>*VSrIJOMVY=sT62kn+=Y94g$cVUka4uyum_DRrxdgIos zw|oLz4kH`YtxsNsw08B*<$zFKjF}s{f>oPzW^}bM^I2cGKVMC~Rn}{BZ&c+c-AOk? zEOLEhaLwBnvaCDh>g9e`=QX{~UDmzI9}F@~&R>7%H85L5GPU+CmzUzzUyvCrTe$JG z<*u#NYT|g^Ca*3vEE3)nLOeChFvZ03;I&aZ^_|wiOWgAQH=P@bN{*J|Od(<0@+jLd zU@T3Q!yIeYj@h#43^p76@2cDD^D4U`%2A7X%nN6SF1~$afaDBYi^A`fb)GgLIS7=1#9304tvkGt z+p$G95@qPBE+ipIlP-mIDfuwrz5A%D!63hVfU-Xgl#Vxem_*{U#~CoR?rj?MfaGQi zjq90$jys>gG3s$ctRjkVd^ypMjl538n-cQ90%MIMtJoUom6Lix;@b`FY21`0>PCn3 z%5IlEa1HEBtt~E=q{$WSdfz?tmM&FXgUa1?Loq>>Vxu~E(n?h=De7L+>g}$=4lY(d zK22RsHg)b^UM|$IEI%F{iq%(h97`N>?Yde8vb)?5m1Z>81uS#-+on6!wsr6KZBOhR zl1(;+$M$S3`zqmoQ-&snnR9M{=O3XF5B;DWQjIiPP^jL$eoL-rpriMToF;RKhUqslO6gdKgi6DSx6r>=f6fcS zu1)(yP*Eh}evzVW-xD3^J6%c>=27|08x1GOJ<~d&OAk==b(6r|eeUhy6#w_~{$E~Y zR|#xO{kUIA{tON{?Dz*L^ncGaCKZoV_)hopCwj^lWJF4taE6RJL0ymn^tTjf5yb;; zgF8WwK>z=4g_*Y-+yl;g3WSs0UycMj3F>BnS_f-_^9T4%FBs@TOKRj7f@%pE2gDI; zwn<6drfC$#s=&YmE!v$N!~t}S+@VNRxtfF{1hRV{05pF1Y~Na}}Iw*$6M1_lL+fya84IfcOK!T(O!eAz^I*yTpSMbR<8^$9ui@&+*Z`|>0r0FN`fLt;$QO@sDFM3pozvML1K zPq>~HoMc1%jcmD|#C*^+CD-p(y43GKQ!v>Oop;ADRkyI;$Rm3#{h<#e&2nWwEjyoC(@3SXby z|LsS}VinJJ-DghUJPyjeR*VA^b0>@~zqJmI36%^W?i*!pTG$P=2s%N7L6|bk7lAaY zi}ZAFoFYH*rCV<1yY^(;Gop}e9Cvj%2S1O)w;S|?YNG{(Y55sBA9b2+3`ni$QvMW6 zv@2r3v7_iY9a46na{yJ6oDenV04byMd}GiSR+Q@b2z4DPB^G@VnB3PDZ~oUQAfr?P zZYsesJ#v;UiA?rIK3aW}$a}d!<+p3VBCZ`c;$!n6;Q5NJKPDpZ^d3eVj6&StTwU8R=VHiP z*)=B%tX11|_>);Zel1HWnJ&2<(!<)!a%!f(#;s*nl@J1btuY5(0uvW3+W&zc8fK!krwZ6b$%gPyx*S>PP5ny&`sCN}Z_rohhsIVwqkROHyEr z-W&ol3_5uTBW6F7@mk-0JAks#;uq`&Cav$9LC740@@4;Lyod4G#D&1t?B7>q?%nac z_nW-W84*|IAK(~?;QdGZfBS5*ZTHRd;5#?d&1;9PNkL;1QKpl7wOUs4Uv;E#?#}{g z@Stq6h@-j$!xT zlfB;!JQ~2Xq znI$lWHt-HM_T$&sRm#od(_r{NfQa?>`Pa;r`>_Qia2NN(rkQs`cddI;=;sfo(X`~u z=n5OU;l7SW&lpmFMam0XKTo3N*2+A$bmKtWmp372RIBIoIcdtwb1*iOF5LYYp-fB& zIF)&KwfgFQOHu&H_yjT4f;_0d#TQ^gElK!%)*PdLUE$cGeCuVE=r55;dLZ(S7AsB} zc$E_d+@Zc8>-0uW2}xaO+Kzy^X6nSKX3cf6c?Yqc!l8wYX**-sVUUyF9zJNx-zm_r8wV9|GP_&2T1}%08kC~F98VJODhHy&6!Ujvx%Q*s{7;YW0kc&Hx z&eWK+s(YHtjwtK$_Z?B71#;nZQTc7opvf(=r7{T*O^@f)sPYHwVThQ@NiKMOePRj| z+m;;Cq+Ws%US?IFF!vRTi<~vj@yBrS_hV_s9+5ljp1pozj#~O3gy!RAzjECLg`Utg zJ?80k7u{y4m`~VH;U-~O@xF<`kMcqxGO0oEP1crm#t;|0Bv);?eu!(F@T>%9BrA() zAH>l~R=e9hsf4K|YkT`IrERTPXqP@{((jF+!*i3M&GKlOr44?$=Zei&tM(t)yXyY{t-FD5zr_zfo(rV^ z$Du-YzrFuc%5QG_)OE>u7ak6xIG?`?jX6lmi)*Z}5YOZcQ?{I7FRL^EstN^JTWDdi zl_DY{qdCTHOxy`FR!a%}$!$}M|3AQf{VDs}>@RMjaNu!m?{-_!EZxDY zuhTcEnUm9<^72{)QV+AR8O5IwB?-jCF#x8u9{ej2C;u+Dsj9m=&}zwN-<-ZW=X=$! zVI?OK+6ie%CVWxish7)1=v$n11PSq;&Y-`^*CdT)Suq{SO_^BA%dfvqvvqg?;l?y_ z12(Y+tS<;anQ(}^o5Pjteh&v`@+W3H|FtpFXr;YsHx%4*?U)isOTuS|mDJ8yp8Pr_Xpa6ZzVP`#gQ=;3b)VX)i_t5*qMer7wNnBXt^_^a`7ll6wX0 zb#aFfc6?##q6eQsYaEhEelxK*56_;iDYC|mLV77LzuOO^v+A{(P8=gcEn%&=l{77A z$jFO!-yRV3oFl<2>@}8q;YN3n5RE`&g*gX(07iV%*zPA{R3E< z9lZW{TUtJ@IlUh-xPqMl@Gb`^x(jm?ODrP)uH0vcwZsh;y?F@QA3;OChd_k@&*lZN z=&Suv-LvCfzVytkHLYUn)Z`4s@4DS(!#c4bB17S%v&y1$u!N*LYeUX{UJiIL4ii-? zhi{zPCq(?)c1i6TKp_#t+MAAo@iwBC<@Ew*Jj%i0s4yuLspDA^viozj9_jR zb%W{_Y}*4Ec~B}b!B387t`mz*M(5BG)2cxA7+Y*s zq=j1)3T|A^hLU1-?*1vlh{f`l9e#yw=_cwgg1|?%<&v&ak3_^xtF#jdHPnoLJ_*I` z9OZrP*r{K`OZSt`zFsHir?&9D?5>X3)kyy)S}OLm%V)DM*S+yV{Hj&2WjB-tb=dOD zA$iQWiU;ARaf~FvJqE4<@ZmLcDm2vJf0p+pJ_zpSzl{F>m5EtVHnsDKhkTQ$^U1r% z6#c^;WsX@YHh}#nRIFZPgFQ@>b3o=`UOh6L|5L5J+3W{cqowb?FCO$Yn@87fhYJz# z=#aN%cJvau5vz9atas1J8HyF{jMVbkttu5ak&W%Ec@eVSr}FOYBc8mWuoVM|{_Qn5 zZ!HpBMZ;g53666Ra>KSENH#_t1H55;Cj7k zL2^&}diQ9vB&*J2cJ6!7t3Y#3`M%@vq8etc&X^E`J+sL9*}gz@)@G$XTa69A87+I! z#KJ3yxl9lGFuygk8ORE{>FaU>x6x`-j^kf}kZ7(Vde<3KEy!Sjv#)59j5o4+=DGSS zEv#f_Q2Gz&K(uEL$KQDn%4zNff!bU>i_)cgx>b_T%eetj27UhkHtj3ctzDP$C$;0H zJAI`Zo9A_7U-h~+Iqbcz=p51)L|sa4aY8$fA`3~RaovXV@x07b772^iF>6b)YAY77 z&in^wakt3h;`$wt;YS;J?97g04j9~ZZz5LEle48*@!)A6WP2j4DOI8jV>vtSnLk!w z+ppKJ^&1ydU5!gcR?lLPOE5KhRox3T92e-^is5_w)WeRMh?A(qxYQ`84Mus@=x(`f zrDLSS6^DF;Y+BwF+mmO`Pw||3oO=Sx$Av&|8X)osa$fqnf-E{b8h?LO2@uSATDb$7 z+lZDz8QxUmiMU~$(GB(d@M&7aqM!PLyPf4MIL)0FKe(q^(k@HgU`V`_@X&F`{k0++ zn6XSI%Z)9J60J!Xr{;D4$s-fs3)JkN73Rq$AW+xe`MfOe1=AjQGufBE&5!7Ri_MYV z*Crn|Z)E7MbcN7V|KaGS!E5;3n&l|P8(u+}oN&(VYY^7fip+kJR+GVe(S8H;&-GDm z(7l#;xG*yCBw3m-R!kj1;|P%oVg&AX*b&;%Z4!(sy$_WqwUt%IzqaNdPYc;%4g!<7HXB| zd*kMkJX12{g~yVt%_6Zl9{KF{;jheVYzNi0UAU?z1*}D3I1<0Fdm2TgOLkkb#bPyu zJj#y_Fz_5!7Coh0*!2^+8DT#87GJiIpwbWWeP()W6_mJjLoK$ZN)>^%BR2%5PL|N) zYc=zur4}REa$_a&Z(GYy0}>-VHV9TfoDZ?qGr<#_s!9$U z*&6>|%zWQZ@s_HaX{!n#;let*D&6nu;L0g|rs8K4uh~}J?SYGOj_oUJCtY!UKQI|% zTu%?%&VA_OH7-<_$l_WAukcIyjPTgKc<~!7c=qu(UYqQ5)9`XOa4TguZe46lBKJ3^ zMn^|zA{(613Yv0+g@yCEr|uvD8%8wE&Q(>CkH?exb}Dz`TAf=7RCkc?T{~l^Kj^R9 z)ozp}T+%o`eNmco&%72??n-<{9)%mqeR-*cJgt0HI)qKCZdzsxxS@q-U3*?_iH^I5 z-y}Cv>Nk3DItW}hn)xl2LTt@b^Ss)!Eo**sPYu|95&T(~5_nCg`|~^L4#&t#wZM~r z{;KYn$DrI6RIlK z{r9Nxhsyl->+z;Y`-4RoAC&bf9|jQMXa&TQ?cVS2IG+~MLbsX zd2-U_Y_1A44gya5V4EUv7hNKy8X1N{D4CqfOJk;_&)iBJPm$qI=MvG3^u#pQ-M;U_gx2Y8h_!b=NXd z`}olMqU{l4YtZ)SUb9@%1|8c6Nu2TF!ZbZ(QH<^OoHAaNWcfEzzCW5ff}#mcp4%XC z4G~3--%=P6fz-UREUL>lnI~2tQ6NGPHgSdHs=x;(19GfX^*JLHI#PAi&9L3V>vkB>Lbcw{iXU*@6r=IMuPqHxZNN4bhMSR9s0%q4nU*0 z+WPyur`+WziXZ*jYvuDgP44mOIj=P%u}oXjeaP){@6EcdH$8E=uzSQ~7*WEWd=-?oX=ceW22-Z_v zK6adOw^>cMjup3Vm2T)2UoI^DLchy(EmcF;O1>`1k!iaUcTZPhS!%M#(Rp*ABw}q| z=uw(zuu-vCcU(y);{X;an(BW%xs_ym9TC#OZJw5FZ=>_uDVd%R(}VS9Lzzb|72==0-Rmf-H~~ zt_W`8v#hJ-?9tA$WfjZ8!N;lk0VyfdBDmx{9q4vBuEL}?cZDmeKclQ`*%g|zoJqAY zT@JnLLf4WNGd@4HqyiK-H+7Z{@!Q=QjjgaYkezbGtrbsb;%?POZ>kV42b3tNH!0+VGk))6m4G^2?P=e` zu5QKA-||K&{M<=ypCa%-D%%{H{Iym!`7Ls*9Br0qeSQw#U`wwM#P>8&SyH8lchc4S z+gi6N`!`9dnLC(Z4o9wc>iFqG2eP1wb+8bSpyI|2T)&My?^mMN#8G(zyh6nA>}5&9 zGd0amc`;#4qhu(?L!r(A(_)?j%;Iy7o8c|aX6ZmdG>oZmrYnM#cH=$QnJV3tcYmp9 zP`cvdXe8TJ7s9<_(+&)TPLi|X`t&o7qKRF#=rlUoB9yY2(k57WK&mS_b(vYNX|w%o z(Ka5oDu8#|!HZ(2R72qE*hmj1UvF$GtU z&D3>B?s~b;wQrkXBTKC*NJIxsiPVWv%dMP_Of$3X0`P_JW{m%`Z z4YK9ua6$%553BT?cOYt>{>PsWf-7ddfcSp7{6a5y-q}yP*H-^0FzqeG?ozwd3%W7_ zSBDS0Z(P9*3-*IMjT|oXPR`XHf|y-Q4-J#l9b7ii5$sfauSPVa$=|jYC!;irGNvm zi8FA>wgW#_i>F63=td>Zahj1WW%TCUAhH9DBndqRoX@Z18Vmoa1YmoeGJN)n?{K`*#<#u^VKHw5+y5y+%JYyPM54 z%cjO9*}VcwO@S`a{0j0z?S3FG`kww>gG-+YV2Mj~TswmxS0-!Y#rUz7N-PM(bDBI!OchY727isK40>si@_VV|h`0$C>#_hcT+4HJQ0oREvS*p=m- zL{VA~OW7lA@7nRAY93`*f}QSi$!a-*ft+~)MtPK){`3U7jE*ZiRxszEqDLkcr^R^e zFfj%3f_b_)bYG<|#1RqU)YrFx_}~7h3&xEh1m08;sS?9U&3rRFhWX=3$938P)-P|R zQYK$nAbI%+_WWJarhZ#~ZGYI=gMo|3qI=gHMI6zLE+euNOm|vsJ(-OCVq<@CS{s%w zP@5^0ek!;=D`=aRkkv20$ko>?<`Roi{nU*T7Q5~3U@+0`ZPM2|vuJj%gnGdYzeM7^ z5qs6~h^4y1UnHic`DosObmV&@cGTj)dX*YQSnd{3O6D}_VG%}2`|kI$ zgEg4he6{|Xu5Y>48q2Qc?6r2IyB%OFpKU8>feFULvr`|JPp)`b#5rR($Zma6j#qOn%Yf3bKgA zO?Fk<-Xm^Y#n%!)Ly~T) zZ@I`cTS>*0qsQUnYRg*sn{>Zk;%ZGluu`UcK{WVWvY?`XTPpCDZuQmTAnH<1h#VsO zrzyTsOv}B)eK8Aa+bb1=>#1+3rxBY4RX|>~y{>;Sc03W4x|v^GLi?n|G{2dy`9~}r zo~!w(jfV_h<#=NwX;H%EMvq$hs$bLYXi=%^gVO4LKgoSq*IF%}@CxW6ywiP|KD9x6 zLZVQR@Fw22Nqdj9HkM?7&yHha_{-yQSES3&C^*%ui5gqArtZA?=w@^grASkOF2n+e zRly(tk>8IM&1!K%Td0CqOn^dAP?Z=mI3s!fM4pwVKiGFVXw;anJz|!~jCZQ)iA(;Y zNq4X1^P8~+&wtwC5Af>S(&g5wc3K^4YnOlAM#>xX+b=mj3Z_CQAs6Q&aT`JRdeHCT zaWYUTPr~{I%`NbKeI-nzmy|lK*6kfvPY+Cz-}=P!s+Q>>_c2px8V5BEYOqSux6G z@f|lnt?-NI_Hp526F;B<`tds570+bnS$UKJdyzV}{)Sup_vHwRg`%J!O8fm?-lD3U ze#$xL@K4Zm4a0_lPtJ(p6qW^@DfFBgaBYPxXn9E@Sn(f#6NjE>XdEw_(^K4qU)*s6 zhBl(wC3s0M(8xYBE6I_F#}q8jVZk-T@cv@WB)&~ z-v5kpS=zWrS)yb##BfJAw8@oPA~rbHBWy@1LzVoQOJTpLrXvbCu6$FQ#ShOIgt#E2 zRykL|D{>0Sd6m+uw${>ADe)Ap#qb&rLxs@$qbXC|Np37u#;cl$^|SCsk?N~Z=;PhtygZ_us@*$RH=MTZ`|J}W=PQ5_8CNXc8N*g5ZG{O-cge%Heq@YC2QCa3ORmoy zIn<)`7`WWzvviE~^ihYllUkV$TY8Q=YOy5Mf|}KqXc(yvVMB6K5;e&>68wXJhwkeZ zFbhzDI)S1yTjm$lk9pLi7wFtWr?NhD-vrPekz43xNQNOw`?k`^SSWH4W^t2iVm)ta4Dh6E>-2sx|Yz1KqMJYfb;J71t0VPH5Xn1@AoTE zpy?Gw{&*&=a%C02D#SVA8$8~5ttFGUk&)8OH>r~eR1yAT(e0eRJ{9CKdR*TehXq*T z8Ql~I8oh?m*0ivscoj_h58fL|ovwWixS6L2C;CW&NjD&UM3q=Y<|OgkJ&B2{L2DJ6 zZAzO)xkh3@6Ff686Bjm4A`F;@hn5m1Z7fcA4vAtlO^@Y)UoBZ#)aYrSzolb73( ziyIz$5LuMPr3qv3*`F>-8Z%-=NW3d{il;m$DarCJ;u+1?TH(j)JEA;<9Lf8H97zJK zPyhFR^uUP8{?Bc(^&i06m7&=vAGPAgDlhtFW0B{J^g@uoqag&2z)^Smyvh;(Df&=dzR8u|*5!W8n4xV$#;>SF;cNoh zU-@wf558wqMvq^eDV}1h1FyemJ%kGf{`YsxzCGy68MQY8RE)cqAa;K)$|h#d7&`!s!^|HeD5lUKC{$^g~7kUhsg0!t=r^F}teQU~_{D9g)Ix zt$4SHye|3NtXR7}0my;RY7M@z=CqG8hL**Imsq5AQw!7XG$OmZjl6c`p0t1QFKgFJ zl9bZDH(sz#^BH{Tuuo7}0HQU@%(iVo2Y*_}Tc4+{u=YL*UFuZFpIV(%xH;{wCz!`f zmtK3%M2#0#KYqI+j+u`a?n6r6LX`kWW|G}s!*~+kq?Y@iLaSfJ^ZPrDB87)7jQ#;4 zK22gRc)o6Dk4@{v8k2JT&SX?{b=GR=%3F-Z;ZFHN)x(`$*BhY<7FsSRgH?5(>131i zRpGqT)ZZe`2*YW-aUFtUysnsP7^U{JMXkBJaSNEFzE^&6R^BC66;b{0G>@uD?JI z_}B@c{B&le27Zv)eau-LfsN4NvP*?vG6}?@l0} zAz^oUmLTHRC?YLlNI1!VBaaBOkY?ZT@gL&uag}rmI$>5EKa^pZ)srojsczm3&R}P3 z6>mV|2^>ebRukH{5Jp<|`7zz%7w)Z|cX={2X5w8VYUbJFZ4X_}Ig6{yAc>h0RB%h` zjU{Z7Y)go@D+3R2yDG2k-$t zL{LOf3M{|gCP(uNr?%EQC@oj7Ah09YC-@ZWQ6{g>25K5aYqud4uh`*{C#GTj+FBy| zVv6}SBjJeT8>};Zl?-LoSyd7|X;O4u*C`gIiYPjsWV()eq)ZZRnL2G%IIB!1qFIJW z0Y!$*uoKQD!`YVeLi)a-%R)Rsg)bMIB2lW8Woeo04VEj^s0%yhAJyce|3}k!nDMyDUP5ii*}E3J`K8ZOz0&%(?)h>Ir5-uxgAUE3MkQ9maVnA^ldb}Mbn5LFBL zXzglreV?qYd|H3Lsl3>6vnD;ZLbgoghX>IkVg01D z+1&mP!+Y!V#oPp}hfl|m{MQ%h3n^qO503T*X0?g_ zS|B&8aY!@97MSaNr9q#X1gD0YNTr&kSJZ;4(k2w}abMZ67NG}Ipc~&=G0?SX7kyB| zdERw+Qn{5Y+_t7RRsr)uF9pg#awsvx#l?Y-ph=(6AXBibdYTmSHO|Esmu|p;H@VYt zPD>M{nixn*O>~Gjb%km|2UrrdxUHLYJ}oLn&m0nvl*I&aCm&|-eC9YIV{MMNt*C+z zIdYIC1!_KG@Y*F%DaZ$=q~Pj{OW<9ZwI}BKzcIctEq*oU`i7p z^d;(AYhS&DYQFdr<0w_M8q!`unIlkrxp$6Ez zC;?v#pj zG&kvLO~u9He0zI~o4m4Q=7G3SRQs(d8Y?$G3TX>NBvI}OVD@wO_=!EpzF4y-=RBsz7v6I$cbkLD5e%bG~2vRwNs2l!c~+9PYe{9|-YV{0nc>;8LP^a%@u;a@$Gs2wvJ* zb|v6nY+Kjr&L8HBg1)&h>iu-fI%rp#B*CB(!pJ=k%4;qbf)!Sw-*Muv(I@X=fb>|#-iAJVZ795-L zY4w?)Wx5Eywzhcvy20$5}qq9k(EGS!1mcRXRkRG8*2w)fuTN$xCthICua?- z*$*a%=lUvghWH+KbZ&lT&nQ^~e}vM0L6-I~1A9T=3PwhRRL;%;fL=UF)ut?}3xreEW?&RsJJoP4YNz_7bw-Ed(S7-$x;oWnP5w+U+n52E~PEe2#A&QxRvz_&`H@=CGFR=>VPR8n)-rX(2Xjpx!yge}6|f=X*Wo`Xjfht0xk+&0Q? zl9g(Ivdk+N&nSw&?=5EH&Zt1mVl4U2e3xTvHwa3x;RxUr#I(O5Atm=}Wg~yVn8jp_ zat<%JN-w(ljJchdToX)RVKj>VvXLZN*DI>3+fT759d$rRhYtydCJ2InkUc+koeY37CP6z;g}KyDU7j2F zMcpZvQ-8yqMGxkt1qK9N9cYQwlc5&PDL_h15L70EGl*zxx;M|K3s~poYl!2q8&qb{ za+QwtvdA2^iy>!{w{2|+@#yNz4v3;PU}UN`M<~eS_K|&OXCPN{=O$SU(@aWzHkE<3 zjX~|zz^E*9rttXMdib2Jui$W4fxOSor367? z9?CcJN@YkbXqNsHD}^%x9}hOn^0HgN<=)U z0f?)DZ#lIS`)xh9k|XIZ7{BVNZ51a@=YXc>?Rlc?`TUnB+6y1sWCgM2s3C2nM(I*F zhTKAt-S>xg+jl=*<=Bahs0%c?YAY+U$4UB>*c$HCK>AyPIBOIuY3nakdx-cgH?z|g zdLiBg+Nw^OQm$j~nPMF?0no|rs8*|~#*qEJXuG+7RC|6m<-+Ma_n$G$GPd8jRdX%N zSXwtVcFV}_oI~2*X~uR-Ff4HyV=CJ6R!SpiCsi6`yss#y*uwHG!jHlfr_5=fF2BzH z?DGrNh$u-_H@Gmdpp_*1H?}p#nffiS&`+dK*b!K5ve+B3S>0L62KGd?RcMVv zYk+iiV(z{5dWGYh;VR3mZk?EdO_W&Vru=DfQ5}q(3MZ1nE$!Sj!lM^}yqdDcbXO-s zgBB~4wnbFS%d6b5=m-aA4<8z#MU4D=S~^sg73~G+dC7LxYNKVAte2l5Z0X}^OvJ|I zRqsKmZA%tCQ0I8o!r-Z7cNCdP%>3}Wx!QJLM&MHd*z=Ek9R# zS15=2V@ZZP8p+}H!9zIKPX%&Tg8rN0qya}9<8dRQ#DGosh=vwKtv~A8qJyBFw^y%v zE0$}XJOE$&t41?#QiTVIu1MghYMrS-OW|*7Fze&!tLfCmQRW(X;cNKN=Jsces3uk( z9(kNuzv$n-db5}3Iy^~zx@#RkqwIs#N#>bv^ewbmI;<<-fm3!AwQ+BRSw$8mJZy)1 zC`(>34VPLSiiHQFKuGwekwr3sf~~2#vZFB7kP6{QOGbrTTi^#>pQ-fzRMn0$q-u+F zNyUBGTvm}(cQ>EHha^fgmU{l|2BC6UdnDv8FjHYD03Zthz@hHFxgTLr-6EPBp4}-W z_SJ?tEam97w@e@N;yUX4r!r4PuKAPUv5kr@V=Xs1jNP56i$FU;bu5;IM(J|@VTDi8 zmu~29>W0$a5pO8%IB&Rg+dO+Qy0=TT4|f8G^oHEm;6dU)>17NDFsGTpV_t~V{gL(H zt2?$!J@5ROMeizZ4A zAs_^4M~^|0!ecW)QS=5Qki2es+Eh5}B7465E1Q8ZX<3r7`9=8t9W3GUSs1b;y5m*c zMGw}$1X|`g$)lwKJ1KJ{m5!a_HjmyBJ}DK`+iLX*7%cLux`>nS=X=H2hNgn%Me?>q zLH7e)lNGiW4^#bWA6Jf6nzwoATEl#mcKThC>-|4Khzwv^g}2YGi_C1zJEYyW;H0e1 zHQP<{IXmxTofsDG)i%zQ>bfh9?vV;PW9=!#0VM2?d5V8ymwBc70A1> z;a|;8w$y234e??>6b~=w|I}MaP~4FcRHvc6r7T}y*6BuCzK>Bk;d+kmUGIMmxGHl6 zE@XUUc8cOlX}Cu8g5KT8g6n4|*V?0n&k4_;nU>#=c=3L0p-V}PFG^Plp(|A<=bflr zjP=4GZ|xBN^yOZhOjjg$&+8u?)xOcP?)<#bsH@v`+FvY?ya`@4io@U39PXmkW`LyG z92;W;qBYg!mH)5p50>+7&$*)=0(5FG>U{%<3c~s)82+{A-Wv*!mKR6wIK98zlGqb! z;!6&`kc{~!+(326RTSPZGT@#mW|mAJ3!BanMNA(2hx;jVu6um1urolOulU?V?Ds8< zY|mkvba|in=*c}7L9FX`b4nSWTtX9W-v$hYwJYRwCbPAbkrB>1 z&^qUK7lckGa9XrXdo>-MZY#0;Ilk~GPufI-V{f2}2^bT~p3Cd8i|@v%VwS(FDT^C! zj%tPGJxnV}sLgR2-?pI3ZV>hlhFs+%2gUAo~LiN*lLu{iv<13uU@E*IRbQZO!iPUcw zxLm)f5_in}D+cr2sD>0{6(R|!%3@d!lmfN<2PPqNrfy9L+;r>VFT`bqPg;yg_cUPR znbn%=rhLt5riecV*?>x*T0e$kiO!EG?ipP?*4JzYpWyPs__y(QIvV@TPMlkAf7;Y6 z35e@rOMm~0vx*>)!Ls`kVl$S(r#=#`8~fMsJGLy%kV&H}=&kCeudjP6j`Hzs4QH=% z_eFf|K5(L2=<@R9euvu0$3_n8c9W-pd=)09C7ByOXax*jM7>R>O`5+vk%^&I;8nS6 z!RWNMfj71o`K20O4f*T6WuR^kh5E2{x)wBvGQh(vouocO6Hl7)67dv zloY=XyIQDz?@AtmM!h1@&sO~=eu~Fe>#)_Alfbc6qt+L;w)2X6vC}QG^veFD5hpfV z^CN%5CtwW1H1F%R*TP(vxO#e6hk^avYte{NO5pVaGihuHl5o~i$9Vr`5=;qY=6d@qra7DuOtaU z%}=XMNOe|_vCva66)WZJGAhw}TPIX*7~zkxkgMYY$g}4<==$y~38W{W>{>$M@hdZ> z%jq&>()z1Fr!JMPi5xZO0-#ktw27$$y*PW+eRytf+S>e^<}*EddZU3Z*k*ZQNOcN| z5I#7p??tM&ThQ>yq5_NJ;TMvQ{@~8zNt@8Ucm~6f!X>QvO02&d$c1X%ZFYpF>uZt0rV%oLyL{=@*Is$x_ z#>PgYX(+^2)(Jm%7Nlg-Thx-|aR;PEmN6M*(%GD-NrU`t%-9A4k<^+ZC~af?NxDW`mH2N4`qV_A*@u`2WQEOI-$CdOUCyW$aO-SzO@N!oQJv~Epn3+NXHt;S#6U7i_v zRsa)W*v%OruZ=%U<{A4X_*-84=a5ac-&5!laQb9KAcsJx<>ZszD^S-K>4VM1&V!bE z34DeMV(<({>O(Vd4RRvfsYWoOIN&N!2RM@nJ^q7X`+t!u3Fis#Dmu|v4d<;)L{uMY zmEC#En~As8-3sFkz7&P~wZEMFHXwz}ac0U1{AEXZG&NZ*&WP4)W4m&b*u=2nO6ZF7 zy&M{pA06zDOtqL$V^hsaKV(?M8|sQri1&keO)Va?KuoL4{7$o)9jO!8nz&OMhfLC? z?l}4r31{T)HH!n=sW~<_XNMJJ!ooi(pkJj_0VV?c88fkfzL581!+*k;x_@|iq<0#% zAhDC3%C4}B3iTulVSlZ6K1yt0W+P+EP%89x)c3 za)}MV@IB1&1<*Z2R|E^%Yf5r8RM^*unP3H&;PTV`D)0EopsjIAW6P@) zH;2g~5kNPpPBntrDQy_wAdz4nKQ#Fv7>|riNr7uIfNagJF7dcL-Ka?xFmPDfE)({d z8itdoa*8G5(=RwhGH?m&P$`7l1tSN+t%_jJlWF%>^jD-Z@ITqX8P2jR)96+Vi2a53 z5F~=$-RV0@ItYX-zlY>kOurmYp|g&iDK~`~+z4k31NjaHNt&D$g077VC}U0CUk@uM zbrsc}gjH5C#fuFPkP%fqa45T!JmwU3KEM3#7f23HcS}z#)+o!(Rr1SF%m!&h(iF$c z+H|qJ$|N#i;>`F{^!Fu|M#3Q_qL!y{!Qp(<3O4}%=(O1N2cWM8iMkQCS0E)ER8}-A zG0}Y?*UI7kjRW~io*|P@A+B=!wwDVC{!H@Y4cyHCjL2uz6NN-Ckt%?t@-6HlEeJ%P z@PLYYqw)?eH-5!?KA4`jDmaY!v!IXQwiE>SDn5Rg_yP1uYq(oW@&HQ=^3Ctf$aYX3 z(pN9VM;c=+1Jp{7wJgl6kBfKEF85T^9m}8#(LwgqfiYodB0d77%fDb}4-na(bWo`PgFj9(UK*X5?Bw!E;g6Yz$BIe1n4!9QFsV_ z$Pc1Y?_(Xx*@@2^CINX_CGv0;wb2hp*Pr+CJ1vt_`HR!PG9td!z)SOhcj zJ1o{|IR6*%T_-`Z9qADZ=HQ~lmc@yXnN}&GvSw6*!*Mx)>OGseJPFRjwKAT5|5`Hp z?u$Og>ANpFRIm9=$Uz($X!{@D#QC%4c@6)&{f`XBZlXh?yLn@j3BIr}xp6~!zC`>j z7W(ty!-L;>fAHVvi&1B+0kU8k*{5qxJ6fq%FZo212i7Up`M}r7Yr*D@ducsW!XY>#Mi$v3UBaGE=-ybi(}|K$Dqn7h zOQ*6Sm{hZhGho~;sPL4GH%_t7I`Zv(dATgg+oup-o&Rpv^Q>Of0U3#V8<bRXL1lI8yVN@$?wqx^RFJ=M@EYpyeW{FpfVkR_-<}Jq+)z<1Nx}4I>g6)nF2Y^Q+rRph;#&j=* z#0j$HCnc_$AVxM3^!7JW!!8g~oKaSVvqbFtAHNG=`7j0I4W8xsV@#IvMUN)E+`=^q zAM?kL3KjN+Wx}v9%W8k$mn^z@F$IIwNS1J<~(1eNsxp&DshHD z48>BVAVoS2Dtnp?xMEeFAq`3-iTBC*2n=v=AN@IF2Dz#JW959bB$&+6Q^=PtulU0= z%@_v`$4cQDlE5aF#le1uO^N*8J$;V>rz>4P9}`*F(oxA7Tw>tG_q#z>$DU^)yrJ2j zWHfncpkKCL0SD0cQ~d!(CQif~|NEiM>rjWNNzoRCCh;cdlJxT1%FA@xFNbkdyi@Oi zIbh8nNB|Z4@|stYnZs9_+~2x1#d6SM?XuB++lVA zc@-&j4KE7o#Rlzpf>h0nPzDq(GgmVK>N8ev?$m?QkpYegX{E=WCT`+(@(h*q8Z(S| z)eK+Vkb-bO|8lg}3?!(po;|1`0;C&c(|r*_9~;^wXDjSn-|OnhA=Yf3?>rVYsx32+ z3uSVE-PrR@LphPMOXKAB&65&6w&w0=Ik@eHaR~;%Qw1{)GF|hle}R$Wo>e6WC6x;! z2rv;>uM{r-zsP1EDB$4GL-G$q;e-x8)UJ2n1-}y1!#K>>s5RK2f-0mmg2j`p0sYuEtJFJ1plqe9OX~b)p-akp+9LL~C z7xGnKWto~BTrsnj5vA0pnnh1N5{hpaU&JZTd(ttauMZ@YXgR_INf5_0$vOQvaHJ%C zs<*<&-pFM5Dvkp4vHWfeLJf~iq6w6%xp+!-bTk?8&eE*84J5VGM+m#TY&a9LRV*6> z$1JlDf=*!4%8kY7Tl`q?jsA0;?LWAwX!a*@PS~?`W>c2VE;b<3;p+Q*8%n36PJ$As z7^|#cDKF%u!NW~W9MTq6ugcCebI^td)-xaq+bdy>HRr0(-;WbkWQc+|Kx8f0KNVex zE!PHf6E}(k21xO-29Em?^;O*plC@|yRE)dG8K8(a=;TXB6Z%`-{z_!JU5q*tjA94z zgV8l%M@C%5_vzX3rmJw4pWUW@fxI<2_tyeVu8Qi|a63ni?H+XbPZOh1ahE=c*YtlsL6&Fz zu;flTmY#!`!GCbFuODv6HEu^@P1h~UQi_Y%Th4qUEqziIb^)S4JCOViO_UY80 zB>(<$A|`$H==ZiRNpj4-%}?{l-Y0xTEUh?d2xij~`q&_)AU)15(Q`~3}dya{fcoroq?Kg=YkNK)M`TDi0I-o+^t6%Y>_2N>+_715?DBy3D zy*_i?m`=Q?LaH&U{-V_sbr>+dk5(bNm(Et$HvTGeIk!?JPx%+hdc7j2KC(Esp8NIs z(G=&k=Azd2jxYVgj~B)(GdYl{a&hZR3v@2WLO5bmX3>t!R;Jb{VeVU_6eF3;543)b z#wxX8+z8&Jg$hFmXx}V8u8e2zQE*II_g7ek{!>Wobp6s+HP+%(EHSNDym8eXFDyEo zBfsPJ1a-EC%XO)khUNoy%bk*F;AzJ@(pE0i)mEAASs7xsdi(I;UQ(VoH*DzqWu%0t zXrMnvsVBejo|U8SGvJ2_053JWZhUmOsyqVR7@C}v7LTi;`tVbhgr#7D?nI^+R>h7p zqc1VqnzR**p%SMg#L-^+ZCeWW7PHmbI2cbnPNGBmuyFH$YRp$LfBzSB)69c5jEc4L zr?kdugs!|YWB>RgpN$+m_57X*n>BfVC!?P98rWqywaIl%EGWs{kMkukGVr480$lDB z2jFjntljDv>hosg7Xo?HeH0E4@wM%C|`0F3y|t12~=3x{HtBr8!tH4<^OK1DEoQ&~Hzw@-xH z%DCdw%qBO`R~bFH`X~9vM?A;XwcP|pLP&ct{}>5;v8X!2T17gvl9Ma4i%^t_=KjE? z16Azfb_%}rFg1m-fYckm>Q=`T(x(^=Zd z$iYpb8cq)bfO~Zt>ZX#awZ4vzXkdYUaoi2*fTHI_xWiok!D$Ly9eY-?C8ZwHVy*X3 zGyu(-=a(8KKoXzgy1-MQ1c@+g#^|0kd765yGc!ofmeDNCwB1vM?e1(Z%B~}hkz1|_ zO2gjL*_k@<4KG{ilP-$Q%%QWJUfY*!YmNrmH#D|PgHD9rr?l(XyQ!*pOnx)zHVZSt zNHPX3RbIZW^_ea3(UO~u^l=L7`!ERbb310Arq#0(34U|8WI~WhsM}@9ajFbED+xT( zIb(LBU^ZPpeX66Dym9f;lJAk=oX&_wJ^=_v={zfS6cZe1&qu zuE5HaX&}vb-!bPW8=Fv7pixY};7x#wc3W-f)-0QDkVv(g~s@{a)w>i>#g|dc1U3DuC@xRZ&)Ds-L%$>@%9V-565y5 zfQL(cIp}Rk*iT!Q^{M6LBojPVrz;%m5c4B#hw;m05uMYRc+AYKgvWgup}a% zSR*?|-W?A*#)?lL(5Oyd+}g#qJZ(2n_y^}bI_!mbc_cwE@%OZsAQZ_o;SqUNtgwO9*np6fPY3K9I$2|?|L~QBr z#zh}#80wg@;*6uiD(ycNHc@SLPQb{gGZ5rIgGc%6uct&1{5c}-PsY-Vyge`&!s9P! zg}K&KUUfabL4Xo86z4m~1yHb0+|{9nynlBB%c9^6jv&Jr?4o>8@XPCE1})oZw=Bcs>#}-4M zF^{Ubt9U|LPQ7)Y+x8k>Mmbqu#s_4}A5Kk;&M=VQ`Z?eOP8XW+&lJ*AqB&iN`f)%& zvhgCFB$*arLa#YsmYD%X=I9!TKBuTb#DPxsSFa-WWQzrn+Cm=X!ljmw?3nm0hUVri zBFJ>j!DrPJO&+MMY-T&i<9#BQx>}89TTt8X;1Bo`yOB@%L!c{6zt{**6VgI|3L{+l zR{e*5*#F^BCq#Oqo+rjdgt-41fC6UmUzY_*E%!5sfPt3Ol@`uPCH@0^RmPP#&+d-Z z@-3b#tli|FcJntSi)NqQtz~SfG zOP6W#!)2YIn836(^-j$^kM85(?Md<9j_V}<;QG52;$O^@j@t(*Z4YXj%>Ben@cga{ zD=sM8ZN7B<5IV1yfR8dt6!{wp^M{m|zW&Gu_d9>Ga@}77Ma2C691wB9jD-X7rfpH{ zU07o_{d~qQqP|ArO>5J$rE|rRwd5Xyr*J%+eQC&YwkX}QT}$IVa#(_eN({f{HFFdx zBxRmRiI*lwt4uid6`0lWoM@Qz!w)5T={e%Xw!^gbi<-%4TZlcdc#^D1tjY7&NoHYE zrH2cNoqve7GCRLpm;BIJTUyd;-B%psekEh@pXEKag#I5%LDFC6Z>~qwh_Cc+;_tQZ zY31DFgwM=YG2-45#65D$;%DEM&&k&!g4^@lUi-FlCpY-iJA>vobA8xtFF$O_C0&%a zUHYX#2*rf147>DqZ1G!9dHadw#uf~5-~P;GJ51K78dlBhEoJW>x zs*}f$@vd;D@fDbbjjGV9`97xAm3U4hKaZy;Cu2Hd z9q5{A;;wDI7#8&YazRsH5Dp+$(&^s_b~RTwUA%~m4|2lh@wo&#IkKA7GXhL%%LUGz z7oOt>?^AD-lV_R?rLNZX)rjNW@aB#1X}U>jQnuq&f05Owy>~O)d_FSxEVf_WDa{ugL0Ugd zU1nK1YIc&Pr=fVv*yS}RME|9NSS2C`l8CQs^M*%@n~4)imlV$Qg{fy59nHur3qQP-Q@s&Q(gI`OQso?K!PJ1Z^Zrn<-0 z9;$*00-5f6`pK?L}5!tJ^|V{tcAnlB-c;k8rQ`zj7IPVy!@8e))$v(oKVr?#oU zy9>bfn1xAxuF&XFw?5;BJ=_M1b|ZO#i{r&CSJt0x_o~Qr6;?f$+Yo%ywG~(8_$6RM z4e9)JkFuMuAhUA}2-t9@t})|6A|1+dbEqoJE4L+9ynPFj1$i-flaw36JQO@p;&EyY zT~%8ZS|H9tu#HlemEJhM+e{Q`Vcci<5qAp92$0M%mOKiBgi4fNiFL4@ETNdyH}Y#x zz)X883vSd;Ksorj6Uv;Sk7TU4b1>z<=llNo3n%B>$-C25Ih_lZT$QmUSP$ChE7keN zW<@^38tHwW`gnAmW|99`gHI3&ZIfz6zj)Qp0DE;CO#w8uKS`Wk2eZ}wikLp{Kgqm) zJl03^z281NUnTD%{~$B;VsYQ;`qlKOd9OJ!?yb(3Lz%c4_HWB2)yP?MHl_nccAsY+rV z=aKt$0^gh}y@fsR%W92}wn>pES?4AUsKlgbdGRp2EL7%GeF!&w+<$%u7HeyxY~Y;> z>AG_42)sePE39!uIzV*64cR_bwpW{B*2F~==534T6lB#h6JbtTQ1fjuO4p8hr$wBO!{NZ(Y&mT9TcGtZax8p0^w0;SyZm@!`VgKv(H27S$jgz{9Msfpkq zYDU_>KT`4$e)mZIRV>F*;&Q-W;_aw#^o&D1+b7;L`#o(VF&<`*)+cK9c)>y%Lx*N8 z`?NC7XI5&dI%@VE7cL5g;g9Ld#;_Ua0OSSd!+Cuz_=4$GHwfH#Y=Zn$!v-2W}$Ra3ANw=W$b|YC(gX`MQc<_Ev$$bC0BxCT5BS zSK6S)HPO}9S=$+5{I6%}q6qKIOHSe_=9!;1*H*w?sja6b$AX_mB0?at-Sd3&I!?gi zvL&N+$rW>OJeWzfE_Bb#$3y>qb;;p*GH_XM$NgekZFZ}Rtf;~RQbx+#Bo*6Z*kIn} ze0F@@kruRAc6T-q8B#GnZmD#Rpi(6{yFF?&??|65{!8$Qu@iG$OVu-|aVMCI^vs#p z{wQ!H3A^IJuXM10^|=@Qk78gYuJE*Egb4+U~%6td%w znaV-&gZ=oZqzY6fs91`6&79K6zqIX+EqyH7Jm>VqHrg%>aNT|Do#rKErLAFnW)k*x zEyYNIPH8^T_4Bto607y8tsl>RvIGyDG3c8h7U!Zw`r5bKbWLn-!fp>`X@U_2^Zm$3E6sl^})OYZ-s4p+f1hzH2D( zXwp$#htI@Yo!|0(R%zxxI7xfJ9Z!i`6RnF!2bVsjqpxRg5JS**mx<5ZdT_8pPrxHW zPfN={_i^CVgUjKl?E;_ts!Mp_cEj`jYH-{O@pkUp{C3dsC3&cff3T}8Ps(eg7FVtl z6UW`OtTYy(6nc){b-r_Y?&$mChF|V^Kv|a~Dv))8T!K)Zm%=J!qG>F=(Ti*)CKMbW z%Jj-aO)+jp=g92luJc+UW@EU6m6K83f0~PY#L1tns5<@PQfctoAOLq~pV(%cV;&cbepufya!&f z%dVYf&apmU<=0Hy!*xx4S6d6)%C#4Jzb@dqAQ$*bwp2RljuWH-OcDM45@R`r*SM6ybJ>2$R zXZ;*oha)u_3xfN49-h>Z&e&larV|@1mGAaFwOq>jW!$StExz1%!}_+q1DQp;YCQ-W z!xAaE8LJk^Cx9f+N>@yP=O*NLOuCe)NTej+bc?eu1s?l5h~{vL9sgPWk}^t%v`3xt z@(OMjq#F2Gn5uviIj($LqGv5zM;o20Yquc$;VQ1-59N{AH0ADw!ceQ{i26$OwtW#_ z_?gG9IDI$eMp_}`dQmsU5j#|E+WOK6;H7@9@>BjC4Y*oS*Yn{apm869apsov*-3O( zJ;GncRoMHyXO*|5dzxCb-O5dN}k?x@}S5=PwZR{NOa!Pq#495ei3$^ zhx~Brs~#orkm4rCq&^bf?GJxfJJU@lUby~Q$ORT{qS{0HT=ILw8wsY9^%S{;1xTM| zzrgPw@}KvtA7Xesg#Uh>hb?Fk#g5NS*Uv5U%ujUdMZzwuUq#Nuu>+f)i^YzD9_GoK z)WV*7p2#2058Q7oKdFX2&t95MCyO7VYzKRE?QaC56}|9pkqvHRksY2I55=AGdeCqF zG@NQ&?-FhF+DO^Hdl7mmk6Dx6xcy6$fcnVWvP7pLtnD>Zh_Movs-#P)7zm{g&Xm`= zc#dbMdjCVN{I-VXxT|u|nW*KW`y%gBd^<0axbSjo8k(!;BidIbFyu>@>~-ZYZ~tpC z4Q(`V9+GcLLb&p(sy|{v$XH&%FtY)G&!(-Z&JqOr^VAY`PoW=AB|0SCcu&5e1J~3R zsR-yisPxZYY0a}{92ThyQ{7GlunjzKwG8|f7m#i0m8wmAxz2QzSd8g;vR!9_+y24D z8pUN8!Mk}&_hE8dIrKgQ(?*Ob7R;l59 zFkIV@yUY4(cz$w|zwk64J{G&m<7l#IOwiMslhLlxXV7Fsa$ytQFKF1}6AT!*|K~o- ze{8_~KW_*kzEyn*fzgkH_BUR_9}x-01-hriIjY^4bvycmAXyPdqIf;;>iDFP7z$|` z*I4XX?#f8%J~5d2MuVk8>>CLgU$Bz28HM!=w>TrGqf9NYvJ$d2*1gu)T+Hr^_e`rs1K zgFbwTw3`xvhmiGa38a%s&)B*1(eR3kFHV9oM* z_w{@;i$HPqXGnSY%eQwge;#eH2k42>C5Nj=u;jy(ZYu@f#Q;)`?5JaI9{~`~2807) znCH=p=014KOu`2-Upy?Ay6T?yman~fl6uFZvO^wk5@axQ$@(+80|B1ceYT;k2f^~o z@XcS29~6lL5sl~Pi9SDqQ)}siYlP#UmC3thw?4fYcILdbo{68b^j6vU|9z8wl@^e1 zfaOOn!$xB>DxY^uDe`tJhu4qew%?`)|Mw5zsC-*}{csn*L*Bwo9v*mbPF;th22arpRMSSom6eumm0wX_aS%mkqRoW;iu{NG zcJm~D_wWy{+;;W9{Z4M~B(nD_Z`-;(DT_7CH=_MIH3RJI_OGb=)>U{)Czdj(yEjp{ z2JO4fHilxN?-?3yE35ZNC{}q%NehfhJyB3fI0*8;+`dEq9rOb>IBu5rg_d7(UBV*X zaxH+2{sjM3nlx|!ZJqoUb=+m0>Jt7R9IGj;W*d8x-=&HNL_@G&ntX*{T~~sa41VfQ zc46#@&u}ij1)pC2gVPvWl7>-Tba|%C4{Hi z<)@7_1{C4Pn0%JSXH8Yuqu5(b3)XKf8g^#9mRFbUn|AE5j2FrZa`dBBEHG!d#`3!N zVj5Vj8k}EDkFj*fLh$pC#`>zNO%s4RQ>Xh=v4GkV3;42<*g$gHPm-DNc6oFdeB)AV=F0 zMl8rldmzzlxOI2w_af61Sf}3*0fqg8Q{-*{HqVOO4%Hch)teY)Q>~+yTVi(8!{J3s@f~C{zBnZaRZ=Y43&R4h z>I}oe6+=&7p6UBqqP!4N5mpC}KkBsXUw1n|b0B@#Lqg?mM1Z^5NGLc2DA}OXyFmjC}MT&TZ{d zY_Kqz;gx!$e`s3iR~=TNsp!~JEaJo0_n72lCo<}KUN88qJy+ClXFl6Nt9Xo>?2lsT zneigh60R{Pv@zijGP)FLWpSer42p_>pXTxjsb#V>cxvm+m`Oik+@QOY1U$P}Y|?aTY!;fQ8Yp#J7JR&4 zzU!A!=d{Ob{As=J((xJQn>r)q)yS)(`56^N81`po`BMy6JPPrrb8usDzyI_HJmQEe0i@mAkWrsbEAwvKEe7Q|mVkjv+ zGA^c3!4)1G%y6n5FQZ!JFPkf%v32ceqK*iwoPyBje3Y#>2^v6E_2X{p)|E6wsIPQ7aho9wj zdT%Zn|G2P14=W0yu)26t^g{JZR?p~Q)((dTcXyvd>YE210q|?-#+~pELq75bg=-+YQBs!v&1;yZ00n6z?g-x;#E)bzQ1wy%=1iUo>wt4)j(U z@6r0QqKW^aApn*WlwE_MwWdYP?yZw;X=$OBXH5r(hAY@KsJD=;Ij8ixIA^ev9w$%J zypH{9-Y>hQxtfSts|CELQ!X@di_1Un)rMK7X$y}_$X1u3JPt+qUKit80tR#uEMR*Q z$osgzclx=CYf?|=l}^VOE!)I3ge&PHacV_X@4+^%mqpUMy3(@ji& zlUI?L6mly}VPxp5vE?iQk`to5#PvYmzKXpDi|@~IdDMz=zQ~opBAG9(=MO*X4tE_t z)%*3h#Z>Vj%V7C8WihgvjttpTF;XhWAbO4Vu$!os%D1OtjyL$ERXA@!tAXH z{}%qJiML#|6N*;&GJ6T7c?Om43FY6GJ{gnL=r2DkXq^8_E5XK`pVLs(ol0@+VuK zdIQwP0yV!$E5Cv$7r>hg6_-|<@iabzEnp+PBw{=a`}IcvA$z0ao#75@Crtq9D(?cQ zPsxNn0!yGI#Q90En96m~Q6s_v{z1i;IKfydq-gPhzUOcqmfAWB6FDlkJFPUg35L@L zudH(2pwmge|Bxqq#a2bSy*^+!@{q4xo*%t?x#IW-mo|SFhFt zl6D(iVaW~OH0OS;;oDhFVI$=rjq(JbjpyY*rEqsFR2r#dL!*)+e? z%-RjB0Q^y4r{)d&AJtuHG#h9aj-`#UmKxhI)~dahmZ2qRETdJ1*rK*XL#)%yXF3U+=dy-~S}4vIR;6b3yzxkFatWA0eb zma`4^qy$@^x(tW0$H1fOhSB)SnyZURpaJcvP>8ATGhT51tUbSd##bnUHDB_JE;6 z4*mYdjpa@E$F?e4F#NoRJ}6V9z)UMvnQ@QRXEd?ju1LKX>Ndt6TkOn6?D()8@fn{y z8%aXze;f;%7s|);?kR6Ott~wtLBDV8IItlFd)~=NZq_t_knwgu4_zrF_`z_I-Iw#? z-&Dthx&Y2`DW-Ksjp}EYUv>fF#($-dqv)OSYNr5Z(suq;CYIqwUOoj(Ua+Boo)TDy zZ{-)fB|56hSv>ZwD)DcZw8PY0X=Qa&X|fnwBSl((tyE|3!J`Jwi5}*6!cm=7i*QNl zFL*_C0dQG23%FHGSWZ{axN8ZdG*SQ;8fao$hI!d5cdg?XC#7G3!O~Ib1fSnI8`ZL) z(GuGFAJut(h1~m#bSotb(_UAiqp zU>U#BW_wJikV=04}tG47rGTT;O*Rb1@KKE3GvaJPSD2$n-pW)T$L0 z_Jhu5=%niezStlppwqn;Z}6qKw@q1X1xuz}jXiK3;;^QSQdE!OT0WOjew^r|`dsGf zNeActR*x4C7L6nq3E8KBRM}1KunDr_ zuB=KZ?TehI*yN_bta7aLtnDw$Jr!k-TsAFn4~!RHJ4qhIXATHV$ur`}>7G$KCA`C9 z+-unAtV>P)>sv!s>b6}siH%n8e}p>bRC&G5_c%*d$Y{C}F2=F*Fy{rX@T~Lfh&aky za4~7X5gXb=bD*YYdEaE5ob81+x$Wf#P&}Zw!2`OCC?;xpN6K`b@3Ds^Wg}kcL-M-f?oqKixekt$P@=KN1-{##ar^M<-)JM ztsu-C#DC12g91{N6A{djpT4Vmgz`PZ42$`+dF~JxUqQ`H;#m2+`?C75?<+nILrQo}s6v{)UxyD0n~10ZDyVcwZ6Etx16eE@T%$ zD~Nw~YcnCQKN^PyrQf|dwrA?iPP`eakD;s>nrs`|eVf;!>eZ{?DzH=V6)rKJ@P*XN zy;=s7E_b+(goGzHpj`@$$>szU*c4ogx| zvaQVJ!ywT$iu_Iqz=;Cr!`skU(O=T%e7J|VL9@%~gR2_5mWrURgbLA#5Xy|Kz&Hrf zR^GBROE8`usmI2(Ow`}-a%hJ_2lb91SjwFOl};p_F-20cVcPXgC%uY%+vt_l4i`w z4lRxJ8J;dp34d8jO$}W2?%l>$VZ-K(#18*C1EuyNw(vFemEHHM)6=g!y@C;1blihw zvODx_?S&Bdj~}y@1(1OYCNLR~Z*kx;#OQ763$iFidrFOkzLwEDn5)}<0E~&wY0jCw0tm-(+4J1ZGAZfd??Lf6F;8wMqlJwD({nA>%kmJmG!w7Vya8je4#@Vd5mHw+>PL?mbF%E2q6YxR}jx7e;7&6Zr{gK~QZt(SmLNpot?l=c&x;f?2~%C-UM& z?iP}H9|GSSz&(*6OXJ}lM2BrA5~8{avjb=^`8N*K`>C8Su%T=!Cj~i70*PFa@S-J$ zJK;yqE(tS_5BixKW+F!dPyPnabKord4-{K|?G(U~QM5L2=UR41u}w&2y4*Ise%#*n z;uOFZFu0m|yfL4(lrNF8xSF_pG5lkIoc%!8yJ1Ekp3sb-TU4i~`)TK#;A`t{w`M;H zBqm*fI%Z4hhQQiw-$dST`R5a`nvV><<-cAMMW?rI$EqKpjG7-xw!`5S%A5S^4GeFC zTBUjUz~V=#yFuc&EX1V1RSF7@sHdD^_d}Et$os=#3mQ2%OYatPYsKmxmu+2qSgYgw zYxc75I)6Cn4btVMh2?9n;u?C@s74DNDK5z9>h*9bs=*~XhRxYFiQTLU?fLEeo5^i> z8q_Gddwus1CcNqVi`|!(h)p1sWw#{WT^7WZ1utyT4TWU5s!CV)HzOsejUlo|_9Vev zz6fjLC1UOTaj@X!%{I5(PDQDxQAb~9N!iDmo0 Date: Fri, 11 Oct 2024 17:09:23 -0700 Subject: [PATCH 27/41] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3a3921db..57b48329 100644 --- a/README.md +++ b/README.md @@ -100,7 +100,7 @@ The OpenNHP architecture is inspired by the [NIST Zero Trust Architecture standa > Please refer to the [OpenNHP Documentation](https://opennhp.org/) for detailed information about architecture and workflow. -## Cryptographic Algorithms +## Core: Cryptographic Algorithms Cryptography is at the heart of OpenNHP, providing robust security, excellent performance, and scalability by utilizing cutting-edge cryptographic algorithms. Below are the key cryptographic algorithms and frameworks employed by OpenNHP: From 9867fc0b19fe50cda3d64f46dedbd6f752c8cdc1 Mon Sep 17 00:00:00 2001 From: zengl Date: Mon, 14 Oct 2024 09:52:06 +0800 Subject: [PATCH 28/41] fix token mutex issue --- ac/msghandler.go | 5 +++-- ac/tokenstore.go | 28 +++++++++++++++------------- ac/udpac.go | 7 +++++-- server/tokenstore.go | 28 +++++++++++++++------------- 4 files changed, 38 insertions(+), 30 deletions(-) diff --git a/ac/msghandler.go b/ac/msghandler.go index fd8ad425..b515cdeb 100644 --- a/ac/msghandler.go +++ b/ac/msghandler.go @@ -22,7 +22,6 @@ const ( ) func (a *UdpAC) HandleUdpACOperations(ppd *core.PacketParserData) (err error) { - a.wg.Add(1) defer a.wg.Done() acId := a.config.ACId @@ -49,7 +48,7 @@ func (a *UdpAC) HandleUdpACOperations(ppd *core.PacketParserData) (err error) { } artMsg, err = a.HandleAccessControl(agentUser, srcAddrs, dstAddrs, openTimeSec, artMsg) if err != nil { - log.Error("ac(%s#%d)[HandleUdpACOperations] HandleAccessControl failed, err: %v", acId, err) + log.Error("ac(%s#%d)[HandleUdpACOperations] HandleAccessControl failed, err: %v", acId, transactionId, err) } // generate ac token and save user and access information @@ -60,6 +59,7 @@ func (a *UdpAC) HandleUdpACOperations(ppd *core.PacketParserData) (err error) { OpenTime: openTimeSec, } artMsg.ACToken = a.GenerateAccessToken(entry) + //log.Info("generate knock token: %s", artMsg.ACToken) // send ac result artBytes, _ := json.Marshal(artMsg) @@ -70,6 +70,7 @@ func (a *UdpAC) HandleUdpACOperations(ppd *core.PacketParserData) (err error) { PrevParserData: ppd, Message: artBytes, } + //log.Info("ART result: %s", string(artBytes)) // forward to a specific transaction transaction := ppd.ConnData.FindRemoteTransaction(transactionId) diff --git a/ac/tokenstore.go b/ac/tokenstore.go index 2f966218..f81e5ca2 100644 --- a/ac/tokenstore.go +++ b/ac/tokenstore.go @@ -77,21 +77,23 @@ func (a *UdpAC) tokenStoreRefreshRoutine() { return case <-time.After(TokenStoreRefreshInterval * time.Second): - a.tokenStoreMutex.Lock() - defer a.tokenStoreMutex.Unlock() - - now := time.Now() - for head, tokenMap := range a.tokenStore { - for token, entry := range tokenMap { - if now.After(entry.ExpireTime) { - log.Info("[TokenStore] token %s expired, remove", token) - delete(tokenMap, token) + func() { + a.tokenStoreMutex.Lock() + defer a.tokenStoreMutex.Unlock() + + now := time.Now() + for head, tokenMap := range a.tokenStore { + for token, entry := range tokenMap { + if now.After(entry.ExpireTime) { + log.Info("[TokenStore] token %s expired, remove", token) + delete(tokenMap, token) + } + } + if len(tokenMap) == 0 { + delete(a.tokenStore, head) } } - if len(tokenMap) == 0 { - delete(a.tokenStore, head) - } - } + }() } } } diff --git a/ac/udpac.go b/ac/udpac.go index affbbc83..d9e1e2a6 100644 --- a/ac/udpac.go +++ b/ac/udpac.go @@ -65,8 +65,10 @@ type UdpConn struct { } func (c *UdpConn) Close() { - c.netConn.Close() - c.ConnData.Close() + if c.netConn != nil { + c.netConn.Close() + c.ConnData.Close() + } } /* @@ -438,6 +440,7 @@ func (a *UdpAC) recvMessageRoutine() { switch ppd.HeaderType { case core.NHP_AOP: // deal with NHP_AOP message + a.wg.Add(1) go a.HandleUdpACOperations(ppd) } } diff --git a/server/tokenstore.go b/server/tokenstore.go index 9320945a..53a64ef9 100644 --- a/server/tokenstore.go +++ b/server/tokenstore.go @@ -77,21 +77,23 @@ func (s *UdpServer) tokenStoreRefreshRoutine() { return case <-time.After(TokenStoreRefreshInterval * time.Second): - s.tokenStoreMutex.Lock() - defer s.tokenStoreMutex.Unlock() - - now := time.Now() - for head, tokenMap := range s.tokenStore { - for token, entry := range tokenMap { - if now.After(entry.ExpireTime) { - log.Info("[TokenStore] token %s expired, remove", token) - delete(tokenMap, token) + func() { + s.tokenStoreMutex.Lock() + defer s.tokenStoreMutex.Unlock() + + now := time.Now() + for head, tokenMap := range s.tokenStore { + for token, entry := range tokenMap { + if now.After(entry.ExpireTime) { + log.Info("[TokenStore] token %s expired, remove", token) + delete(tokenMap, token) + } + } + if len(tokenMap) == 0 { + delete(s.tokenStore, head) } } - if len(tokenMap) == 0 { - delete(s.tokenStore, head) - } - } + }() } } } From 8923c16b05c2d4e1e1f42955b6d06cb4b8af8c26 Mon Sep 17 00:00:00 2001 From: zengl Date: Mon, 14 Oct 2024 09:53:05 +0800 Subject: [PATCH 29/41] set demo peer expiration date to 12/31/2030 --- ac/main/etc/server.toml | 4 ++-- agent/main/etc/server.toml | 4 ++-- server/main/etc/ac.toml | 2 +- server/main/etc/agent.toml | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ac/main/etc/server.toml b/ac/main/etc/server.toml index 713a25a9..9072c990 100644 --- a/ac/main/etc/server.toml +++ b/ac/main/etc/server.toml @@ -7,8 +7,8 @@ # ExpireTime (epoch timestamp in seconds): peer key validation will fail when it expires. [[Servers]] Hostname = "" -Ip = "192.168.56.101" +Ip = "192.168.80.35" Port = 62206 PubKeyBase64 = "WqJxe+Z4+wLen3VRgZx6YnbjvJFmptz99zkONCt/7gc=" -ExpireTime = 1716345064 +ExpireTime = 1924991999 diff --git a/agent/main/etc/server.toml b/agent/main/etc/server.toml index b713a115..b4f73389 100644 --- a/agent/main/etc/server.toml +++ b/agent/main/etc/server.toml @@ -7,7 +7,7 @@ # ExpireTime (epoch timestamp in seconds): peer key validation will fail when it expires. [[Servers]] Hostname = "" -Ip = "192.168.56.101" +Ip = "192.168.80.35" Port = 62206 PubKeyBase64 = "WqJxe+Z4+wLen3VRgZx6YnbjvJFmptz99zkONCt/7gc=" -ExpireTime = 1716345064 +ExpireTime = 1924991999 diff --git a/server/main/etc/ac.toml b/server/main/etc/ac.toml index ccbc2c3c..a4642d59 100644 --- a/server/main/etc/ac.toml +++ b/server/main/etc/ac.toml @@ -4,4 +4,4 @@ # ExpireTime (epoch timestamp in seconds): peer key validation will fail when it expires. [[ACs]] PubKeyBase64 = "Fr5jzZDVpNh5m9AcBDMtHGmbCAczHyPegT8IxQ3XAzE=" -ExpireTime = 1716345064 +ExpireTime = 1924991999 diff --git a/server/main/etc/agent.toml b/server/main/etc/agent.toml index 7a1252d3..c5cd0c31 100644 --- a/server/main/etc/agent.toml +++ b/server/main/etc/agent.toml @@ -4,4 +4,4 @@ # ExpireTime (epoch timestamp in seconds): peer key validation will fail when it expires. [[Agents]] PubKeyBase64 = "WnJAolo88/q0x2VdLQYdmZNtKjwG2ocBd1Ozj41AKlo=" -ExpireTime = 1716345064 +ExpireTime = 1924991999 From 2e28fef392200349dacdea51f0bb574c37dbfe69 Mon Sep 17 00:00:00 2001 From: windcbf Date: Sun, 13 Oct 2024 22:49:23 -0700 Subject: [PATCH 30/41] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 57b48329..7677049e 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,7 @@ ![OpenNHP Logo](docs/images/logo11.png) # OpenNHP: Zero Trust Network-infrastructure Hiding Protocol +A lightweight cryptography-driven zero trust networking protocol at the OSI 5th layer to hide your server and data from attackers. ![Build Status](https://img.shields.io/badge/build-passing-brightgreen) ![Version](https://img.shields.io/badge/version-1.0.0-blue) @@ -54,7 +55,7 @@ Once you click the "Login" button, authentication is completed successfully, and The openness of TCP/IP protocols has driven the explosive growth of internet applications but also exposed vulnerabilities, allowing malicious actors to gain unauthorized access and exploit any exposed IP address. Although the [OSI network model](https://en.wikipedia.org/wiki/OSI_model) defines the *5th layer (Session Layer)* for managing connections, few effective solutions have been implemented to address this. -**NHP**, or the **"Network-infrastructure Hiding Protocol"**, is a Zero Trust communication protocol designed to function at the *OSI Session Layer*, which is optimal for managing network visibility and connections. NHP's key objective is to conceal protected resources from unauthorized entities, granting access only to verified, authorized users through continuous verification, contributing to a more trustworthy Internet. +**NHP**, or the **"Network-infrastructure Hiding Protocol"**, is a lightweight cryptography-driven Zero Trust networking protocol designed to function at the *OSI Session Layer*, which is optimal for managing network visibility and connections. NHP's key objective is to conceal protected resources from unauthorized entities, granting access only to verified, authorized users through continuous verification, contributing to a more trustworthy Internet. ![Trustworthy Internet](docs/images/TrustworthyCyberspace.png) From 75afc18019ea7a3b7f3dec004cd0294a2fdf703a Mon Sep 17 00:00:00 2001 From: WinGeek Date: Wed, 16 Oct 2024 11:47:06 -0700 Subject: [PATCH 31/41] Add Cryptography article to Docs --- docs/about.md | 2 +- docs/build.md | 2 +- docs/code.md | 2 +- docs/cryptography.md | 288 ++++++++++++++++++++++++++++++ docs/deploy.md | 2 +- docs/server_plugin.md | 2 +- docs/zh-cn/about.zh-cn.md | 2 +- docs/zh-cn/build.zh-cn.md | 2 +- docs/zh-cn/code.zh-cn.md | 2 +- docs/zh-cn/cryptography.zh-cn.md | 12 ++ docs/zh-cn/deploy.zh-cn.md | 2 +- docs/zh-cn/server_plugin.zh-cn.md | 2 +- 12 files changed, 310 insertions(+), 10 deletions(-) create mode 100644 docs/cryptography.md create mode 100644 docs/zh-cn/cryptography.zh-cn.md diff --git a/docs/about.md b/docs/about.md index 83b986f1..d5a3fb3e 100644 --- a/docs/about.md +++ b/docs/about.md @@ -1,7 +1,7 @@ --- layout: page title: About -nav_order: 8 +nav_order: 9 permalink: /about/ --- diff --git a/docs/build.md b/docs/build.md index 84e49c05..53ebf028 100644 --- a/docs/build.md +++ b/docs/build.md @@ -1,7 +1,7 @@ --- layout: page title: How to Build -nav_order: 5 +nav_order: 6 permalink: /build/ --- diff --git a/docs/code.md b/docs/code.md index d9c7eed6..54a6c06e 100644 --- a/docs/code.md +++ b/docs/code.md @@ -1,7 +1,7 @@ --- layout: page title: Understand the Code -nav_order: 6 +nav_order: 7 permalink: /code/ --- diff --git a/docs/cryptography.md b/docs/cryptography.md new file mode 100644 index 00000000..d0741db5 --- /dev/null +++ b/docs/cryptography.md @@ -0,0 +1,288 @@ +--- +layout: page +title: Cryptography +nav_order: 4 +permalink: /cryptography/ +--- + +# Cryptographic Algorithms in OpenNHP +{: .fs-9 } + +[中文版](/zh-cn/cryptography/){: .label .fs-4 } + +--- + +Cryptography is at the heart of OpenNHP, providing robust security, excellent performance, and scalability by utilizing cutting-edge cryptographic algorithms. This article explains how OpenNHP takes advantages of modern cryptographic algorithms in several critical areas: + +1. Public Key Cryptography +2. Key Exchange, Data Encryption and Identity Verification +3. Key Distribution and Management + +## 1) Public Key Cryptography + +### 1.1 Introduction +In the evolving landscape of cybersecurity, securing communications and protecting network resources are essential, especially with the increasing sophistication of cyber threats. The Network Infrastructure Hiding Protocol (NHP), a zero-trust security mechanism, stands at the forefront of efforts to address these concerns by concealing network infrastructure details from attackers and ensuring that only trusted entities can interact with network resources. A key component of NHP's security model is the use of Elliptic Curve Cryptography (ECC) for public key cryptography. In this article, we explore how ECC integrates into the NHP Zero Trust protocol to provide robust and efficient security. + +### 1.2 What is Elliptic Curve Cryptography? + +Elliptic Curve Cryptography (ECC) is a modern approach to public key cryptography that provides equivalent levels of security with significantly smaller key sizes compared to traditional methods such as RSA. ECC relies on the mathematical properties of elliptic curves over finite fields, providing a powerful balance of security and performance. Due to its reduced computational overhead, ECC is particularly suitable for resource-constrained environments such as embedded systems or mobile devices. + +The advantages of ECC include: + +- **Smaller Key Sizes**: ECC achieves a high level of security with smaller keys, which translates to faster operations, less bandwidth usage, and reduced computational requirements. +- **Enhanced Security**: The underlying problem of elliptic curve discrete logarithms is computationally complex, making ECC resistant to common forms of cryptographic attack. +- **Efficiency**: With less processing power needed compared to traditional methods, ECC can handle encryption and decryption more efficiently, which is crucial for zero trust environments requiring frequent cryptographic operations. + + +### 1.3 How NHP Uses ECC for Secure Communication + +NHP uses ECC in key exchange, data encryption, identity verification with the Noise protocol framework, and key distribution and management with Certificateless Public Key Cryptography (CL-PKC). + + +#### 1. **Key Exchange Mechanism** + +The secure exchange of encryption keys between communicating entities is the backbone of any secure communication protocol. NHP uses Elliptic Curve Diffie-Hellman (ECDH) for its key exchange mechanism. In the ECDH key exchange, both communicating parties generate a public-private key pair using elliptic curves. The public keys are then exchanged, allowing both parties to compute a shared secret without ever having to transmit it directly over the network. + +The benefit of using ECDH in NHP is twofold: first, it provides forward secrecy, meaning that even if the private key of one party is compromised in the future, previously established session keys remain secure. Secondly, because of ECC's efficiency, the key exchange process is computationally lightweight, ensuring that key establishment is performed quickly without a large computational footprint. + +#### 2. **Authentication with Digital Signatures** + +In a zero-trust environment, authentication is paramount. NHP utilizes Elliptic Curve Digital Signature Algorithm (ECDSA) to verify the authenticity of entities attempting to access network resources. ECDSA, an ECC-based digital signature scheme, allows devices to prove their identity without revealing sensitive private keys. + +In the NHP protocol, when an entity wants to communicate with the network, it must provide a digital signature generated with its private key. The receiving entity can then use the corresponding public key to verify the validity of the signature. This ensures that only legitimate entities can participate in the network, effectively implementing the zero-trust model's "never trust, always verify" principle. + +#### 3. **Encryption for Data Confidentiality** + +NHP employs symmetric encryption for data confidentiality during communication, but symmetric keys must be securely distributed and shared between entities. ECC plays a role in the secure distribution of these symmetric keys through ECDH, providing an encrypted communication channel where symmetric keys are exchanged securely. + +Once these keys are exchanged, NHP switches to symmetric encryption for data transfer, benefiting from the speed and efficiency of symmetric encryption algorithms. ECC ensures that the symmetric key exchange is both secure and resource-efficient. + +#### 4. **Key Distribution and Management with Certificateless Public Key Cryptography (CL-PKC)** + +NHP also leverages ECC for key distribution and management using Certificateless Public Key Cryptography (CL-PKC). In traditional public key infrastructure, certificates are used to validate public keys, which introduces complexity in terms of certificate management. CL-PKC eliminates the need for certificates by allowing entities to generate partial private keys in collaboration with a trusted authority, while also generating their own key pairs independently. + +This approach simplifies key management and ensures that public keys can be used securely without the overhead of certificate issuance and validation. By using ECC in CL-PKC, NHP provides a lightweight and secure means of key distribution, further enhancing the zero-trust model by removing dependencies on centralized certificate authorities. + +### The Advantages of Using ECC in NHP + +The use of ECC within the NHP zero-trust protocol offers numerous advantages that make it well-suited to its security objectives: + +1. **Scalable Security**: ECC's smaller key sizes provide strong security, which scales well with the increasing computational power of adversaries. With NHP's goal of providing a zero-trust environment for diverse network deployments, ECC's scalability is a critical asset. + +2. **Resource Efficiency**: ECC reduces the computational burden on network devices compared to traditional public key cryptography. In environments where network resources may be constrained—such as edge devices or IoT components—this efficiency is essential for maintaining high performance without sacrificing security. + +3. **Improved Performance**: The combination of ECDH for key exchange, ECDSA for authentication, and efficient symmetric encryption provides a balanced solution for secure communications. This balanced approach allows NHP to achieve the goals of zero trust while keeping latency low, which is crucial in time-sensitive network applications. + +### Conclusion + +The integration of Elliptic Curve Cryptography into the NHP Zero Trust Protocol provides a powerful means of securing network communications with minimal performance impact. By leveraging ECDH for secure key exchanges, ECDSA for robust authentication, and efficient symmetric encryption for data transfer, ECC supports the zero-trust model's goals of concealing network infrastructure, ensuring only trusted entities can access resources, and maintaining security with low overhead. + +As cyber threats become more sophisticated, leveraging advanced cryptographic techniques like ECC in protocols like NHP is vital to staying ahead of attackers. The synergy between ECC and NHP not only helps protect critical network infrastructure but also ensures that security measures are both robust and efficient—a key combination for the success of any modern cybersecurity initiative. + + + +## 2) Key Exchange, Data Encryption and Identity Verification +### 2.1 Introduction +The Network Infrastructure Hiding Protocol (NHP) is built around a zero-trust security model, ensuring secure communications even in the presence of potential attackers. To achieve this, NHP integrates the Noise Protocol Framework, a cryptographic framework designed for secure and flexible key exchange, data encryption, and identity verification. This combination provides robust security with minimal computational overhead. + +### 2.2 Key Exchange with Noise Protocol +NHP utilizes the Noise Protocol's key exchange mechanism to ensure secure, authenticated communication channels between parties. The key exchange begins with a handshake phase where both communicating entities exchange Diffie-Hellman (DH) public keys. In Noise, each party generates an ephemeral key pair, and the exchanged keys are used to derive a shared secret, which is then used to encrypt the following communication. + +Noise allows NHP to support both long-term static keys and ephemeral keys for enhanced security. The flexibility of the Noise framework's handshake patterns enables NHP to customize how the handshake occurs based on the specific use case, providing options for mutual authentication, anonymous initiators, or encryption of the initial handshake itself. By leveraging Noise's simple yet powerful token-based handshake system, NHP can precisely control the sequence of key exchange messages while keeping identity information confidential. + +### 2.3 Data Encryption +Once the shared key is derived during the handshake, the Noise framework uses symmetric encryption to secure data. NHP takes advantage of the Noise CipherState and SymmetricState objects, which are core components of Noise's state machine, to manage encryption and decryption keys for the communication session. + +In particular, the shared key is used to initialize a symmetric encryption key (k) along with a nonce (n) for encrypting data. Noise supports advanced encryption schemes like ChaCha20-Poly1305 or AESGCM, providing authenticated encryption with associated data (AEAD) to maintain data confidentiality and integrity. The chaining key (ck) and the handshake hash (h) are used to continuously derive fresh keys during the session, enhancing the forward secrecy and ensuring that a compromise of one key does not jeopardize other parts of the communication. + +NHP benefits from these cryptographic properties by providing encrypted tunnels for network data, ensuring that any intercepted data cannot be decrypted without knowledge of the derived keys, which are securely exchanged during the handshake. + +### 2.4 Identity Verification +Noise provides mechanisms for identity verification by combining the exchange of static keys with Diffie-Hellman operations. In NHP, identity verification occurs during the handshake, where static keys are encrypted and verified through shared DH operations, effectively binding the public keys of both parties to the derived session key. + +During the handshake, Noise uses tokens such as "s" (static) and "e" (ephemeral) to indicate which keys are being exchanged and verified. This token-based approach allows NHP to selectively authenticate one or both parties depending on the specific use case. For example, the "XX" pattern in Noise provides mutual authentication, while the "NK" pattern allows for a one-sided authenticated handshake, giving NHP flexibility in how strictly identity verification is enforced. + +To further protect identity information, Noise can encrypt static keys during the handshake. NHP leverages this feature to prevent an eavesdropper from discovering the identities of the participants, thus supporting the zero-trust model by ensuring that the identity of any participant is revealed only to the intended counterpart and not to third parties. + +### 2.5 Algorithms and Formulas +The cryptographic strength of NHP's integration with the Noise Protocol Framework is built on the use of well-defined algorithms and mathematical formulas. Here, we provide an overview of the key algorithms and their corresponding formulas that are used in NHP for key exchange, encryption, and identity verification. + +#### 2.5.1 Diffie-Hellman Key Exchange +The Diffie-Hellman (DH) key exchange is used to derive a shared secret between two parties, \( A \) and \( B \). Each party generates a private key (\( a \) for \( A \), \( b \) for \( B \)) and computes a public key by exponentiating a common generator \( g \) to their private key in a finite cyclic group of prime order \( p \): + +- \( A \) computes its public key: \( A_{pub} = g^a \mod p \) +- \( B \) computes its public key: \( B_{pub} = g^b \mod p \) + +The shared secret \( s \) is then computed by both parties using the other party's public key: + +- \( A \) computes: \( s = B_{pub}^a \mod p \) +- \( B \) computes: \( s = A_{pub}^b \mod p \) + +The resulting shared secret \( s \) is identical for both parties and is used to derive encryption keys. + +#### 2.5.2 Symmetric Encryption +NHP uses symmetric encryption for data confidentiality. The key \( k \) and nonce \( n \) are used in the encryption function. For authenticated encryption with associated data (AEAD), the ChaCha20-Poly1305 algorithm is commonly used, which combines a stream cipher (ChaCha20) for encryption and a MAC (Poly1305) for authentication. + +- Encryption: \( c = ext{ChaCha20}(k, n, ext{plaintext}) \) +- Authentication: \( ext{tag} = ext{Poly1305}(k, ext{associated data} || c) \) + +The ciphertext \( c \) and the tag are transmitted together, ensuring both confidentiality and integrity. + +#### 2.5.3 Key Derivation and Hashing +Noise uses a key derivation function (KDF) based on HMAC (Hash-based Message Authentication Code) to derive keys. The HKDF (HMAC-based Key Derivation Function) is used to produce multiple keys from the shared secret \( s \). + +- HKDF steps: + - \( ext{temp\_key} = ext{HMAC}( ext{chaining\_key}, ext{input\_key\_material}) \) + - \( ext{output1} = ext{HMAC}( ext{temp\_key}, 0x01) \) + - \( ext{output2} = ext{HMAC}( ext{temp\_key}, ext{output1} || 0x02) \) + +The derived keys are used for encryption and maintaining the chaining key (\( ck \)) that evolves with each message, ensuring forward secrecy. + +#### 2.5.4 Identity Verification +Identity verification in NHP involves using static and ephemeral keys to authenticate parties. The Diffie-Hellman operations between static (\( s \)) and ephemeral (\( e \)) keys produce unique shared values that verify the identity of the participants. + +- For identity verification, a combination of DH operations is performed: + - \( ext{ss} = DH(s_A, s_B) \) + - \( ext{es} = DH(e_A, s_B) \) or \( DH(s_A, e_B) \) + - \( ext{ee} = DH(e_A, e_B) \) + +These values are hashed together to derive the final session key, effectively binding the identities to the key exchange process and ensuring that only the intended parties can derive the correct session key. + +### 2.6 Summary +NHP's implementation of the Noise Protocol Framework strengthens its zero-trust architecture by leveraging robust and well-tested cryptographic mechanisms for key exchange, data encryption, and identity verification. The modular nature of Noise allows NHP to adapt the handshake and encryption process based on the threat model, providing a high level of security against active and passive attacks. By incorporating Noise, NHP can maintain secure and authenticated communication channels while hiding the network infrastructure from attackers, achieving its goal of protecting network resources in hostile environments. + +## 3) Key Distribution and Management + +### 3.1 Introduction + +Certificateless Public Key Cryptography, originally introduced by Al-Riyami and Paterson in 2003, provides a hybrid solution that eliminates the need for a conventional Certificate Authority (CA) while ensuring strong cryptographic assurances. This article explores how NHP utilizes CL-PKC for efficient and secure key management without relying on certificates, which are typically seen as a vulnerability in many cryptographic systems. + +In traditional Public Key Infrastructure (PKI), certificate authorities (CAs) serve as trusted third parties that issue and manage public key certificates to verify the authenticity of users' keys. While effective, this model introduces complexities and risks, such as dependency on the CA and exposure to attacks targeting these central entities. Certificateless Public Key Cryptography aims to mitigate these issues by eliminating the use of certificates while still ensuring the authenticity of public keys. + +In a CL-PKC system, a trusted third party called the Key Generation Center (KGC) is responsible for generating partial private keys for users. However, unlike a CA, the KGC does not have access to the complete private keys, which makes it impossible for the KGC to impersonate users. Each user combines the partial key from the KGC with their own secret value to generate their full private key and public key. This approach reduces the trust placed on any single entity and provides an extra layer of security. + +### 3.2 Advantages of Using CL-PKC in NHP + +1. **Reduced Trust Requirements**: Unlike PKI, where trust in the CA is critical, CL-PKC reduces this trust requirement. The KGC cannot generate complete private keys on its own, meaning it cannot impersonate users or decrypt their communications. + +2. **Simplified Key Distribution**: There is no need for users to request or renew certificates, which eliminates many administrative burdens associated with traditional PKI. + +3. **Resistance to Key Compromise**: Since the user's full private key is generated in part by the user, compromising the KGC does not allow an adversary to fully recover user keys. This mitigates the impact of a successful attack on the key distribution infrastructure. + +4. **Scalability**: The certificateless nature of the system removes the need for managing large certificate databases, which simplifies scalability. This is particularly useful for IoT and other large-scale deployments where the overhead of certificate management would be prohibitive. + +### 3.3 Key Management in NHP Using Certificateless Cryptography + +The NHP Zero Trust protocol integrates CL-PKC to manage the distribution and verification of keys for its secure communication framework. Below, we explain how the various mechanisms of CL-PKC contribute to the key management process in NHP. + +#### 3.3.1 Key Generation and Distribution + +In NHP, the Key Generation Center (KGC) is responsible for creating system-wide parameters, including the master public-private key pair. The master private key is kept confidential by the KGC, while the master public key is distributed to all participants. When a new user wants to join the network, the KGC performs the following steps: + +1. **Partial Key Generation**: The KGC generates a partial private key for the user using their unique identifier (e.g., an email or other identity information). This ensures that each user’s partial key is bound to their identity, providing identity-based security. + +2. **User-Specific Key Pair Generation**: The user then selects their own secret value and combines it with the partial private key from the KGC to generate their full private key. The public key is computed from the combined secret, which means that while the KGC contributes to the key generation, it does not possess the complete private key. + +This key distribution method ensures that the KGC cannot unilaterally determine a user's private key, mitigating the risks associated with compromised key generation authorities. Additionally, the lack of a need for traditional certificates means that users do not need to rely on external certificate authorities to validate keys, reducing the attack surface for man-in-the-middle (MITM) attacks. + +#### 3.3.2 Public Key Verification Without Certificates + +In certificateless systems like the one implemented in NHP, the authenticity of public keys is verified through implicit methods, rather than relying on certificates signed by a CA. Specifically, the user's public key is computed using the system parameters, the user's identifier, and the KGC's master public key. This computation is deterministic and allows any party to verify the authenticity of a public key without needing to trust a CA or store a large database of certificates. + +By removing the need for traditional certificates, NHP is able to streamline the key verification process, eliminating the need for certificate revocation lists (CRLs) and other PKI complexities. This approach not only reduces the communication overhead but also enhances the security by removing dependencies on a trusted third party that could be targeted by attackers. + +### 3.4 Algorithms in CL-PKC for NHP + +To provide a clearer understanding of how the NHP protocol leverages Certificateless Public Key Cryptography, we describe the key algorithms involved along with their respective formulas. + +#### 3.4.1 System Parameter Generation + +The Key Generation Center (KGC) is responsible for generating the system parameters that will be used across the network. These parameters include an elliptic curve \( E \) defined over a finite field \( \mathbb{F}_q \), a base point \( G \) of prime order \( n \), and the master secret key \( ms \). The KGC computes the master public key \( P_{pub} \) as: + +\[ +P_{pub} = [ms]G +\] + +where \( [ms]G \) denotes scalar multiplication of the base point \( G \) by the master secret \( ms \). + +#### 3.4.2 Partial Private Key Generation + +For each user with a unique identifier \( ID_A \), the KGC generates a partial private key. First, the KGC computes a hash value \( H_A \) based on the user's identifier and system parameters: + +\[ +H_A = H(ENTL_A \parallel ID_A \parallel a \parallel b \parallel x_G \parallel y_G \parallel x_{P_{pub}} \parallel y_{P_{pub}}) +\] + +where \( ENTL_A \) is a length value derived from the identifier, and \( (x_G, y_G) \) and \( (x_{P_{pub}}, y_{P_{pub}}) \) are the coordinates of points \( G \) and \( P_{pub} \), respectively. + +The KGC then selects a random value \( w \in [1, n-1] \) and computes: + +\[ +W_A = [w]G + U_A +\] + +where \( U_A = [d'_A]G \) is a point generated by the user with their own secret value \( d'_A \). + +The partial private key \( t_A \) is computed as: + +\[ +t_A = (w + l \cdot ms) \mod n +\] + +where \( l \) is a hash value computed from the point \( W_A \) and the hash \( H_A \). + +#### 3.4.3 User Full Private Key Generation + +The user generates their full private key \( d_A \) by combining the partial private key \( t_A \) with their secret value \( d'_A \): + +\[ +d_A = (t_A + d'_A) \mod n +\] + +This ensures that only the user knows their complete private key. + +#### 3.4.4 Public Key Computation + +The user’s public key \( P_A \) is computed as: + +\[ +P_A = W_A + [l]P_{pub} +\] + +This public key can be verified by anyone using the system parameters, the user’s identifier, and the KGC’s public key. + +#### 3.4.5 Signature Generation and Verification + +To generate a digital signature on a message \( M \), the user computes a hash \( e \) as follows: + +\[ +e = H(H_A \parallel x_{W_A} \parallel y_{W_A} \parallel M) +\] + +The signature \( (r, s) \) is generated using the user’s private key \( d_A \) and a random value \( k \): + +\[ +[r]G = (x_1, y_1) +\] +\[ +r = x_1 \mod n +\] +\[ +s = (k^{-1}(e + d_A \cdot r)) \mod n +\] + +To verify the signature, the verifier computes \( P_A \) and then checks whether: + +\[ +[r]G = [s]G + [e + r]P_A +\] + +If the equality holds, the signature is valid. + +### 3.5 Conclusion + +NHP’s implementation of Certificateless Public Key Cryptography provides a powerful and efficient approach to key management in Zero Trust environments. By leveraging CL-PKC, NHP is able to mitigate the risks associated with traditional PKI, reduce the reliance on centralized trusted authorities, and simplify the key distribution process. The result is a more secure and scalable system that is well-suited for protecting critical network infrastructure in the face of evolving cyber threats. + +The combination of certificateless cryptography and the Zero Trust principles of NHP makes it an attractive solution for securing network resources while minimizing the risks introduced by centralized authorities. + + diff --git a/docs/deploy.md b/docs/deploy.md index d1ec30c6..b9c12e4d 100644 --- a/docs/deploy.md +++ b/docs/deploy.md @@ -1,7 +1,7 @@ --- layout: page title: How to Deploy -nav_order: 4 +nav_order: 5 permalink: /deploy/ --- diff --git a/docs/server_plugin.md b/docs/server_plugin.md index 8eba0d55..70b0ecab 100644 --- a/docs/server_plugin.md +++ b/docs/server_plugin.md @@ -1,7 +1,7 @@ --- layout: page title: Server Plugins -nav_order: 7 +nav_order: 8 permalink: /server_plugin/ --- diff --git a/docs/zh-cn/about.zh-cn.md b/docs/zh-cn/about.zh-cn.md index 79ad810d..b3b86a93 100644 --- a/docs/zh-cn/about.zh-cn.md +++ b/docs/zh-cn/about.zh-cn.md @@ -2,7 +2,7 @@ layout: page title: 关于我们 parent: 中文版 -nav_order: 8 +nav_order: 9 permalink: /zh-cn/about/ --- diff --git a/docs/zh-cn/build.zh-cn.md b/docs/zh-cn/build.zh-cn.md index e0aba861..b4688b48 100644 --- a/docs/zh-cn/build.zh-cn.md +++ b/docs/zh-cn/build.zh-cn.md @@ -2,7 +2,7 @@ layout: page title: 编译源代码 parent: 中文版 -nav_order: 5 +nav_order: 6 permalink: /zh-cn/build/ --- diff --git a/docs/zh-cn/code.zh-cn.md b/docs/zh-cn/code.zh-cn.md index 4f3fa409..ca356b25 100644 --- a/docs/zh-cn/code.zh-cn.md +++ b/docs/zh-cn/code.zh-cn.md @@ -2,7 +2,7 @@ layout: page title: 源代码解读 parent: 中文版 -nav_order: 6 +nav_order: 7 permalink: /zh-cn/code/ --- diff --git a/docs/zh-cn/cryptography.zh-cn.md b/docs/zh-cn/cryptography.zh-cn.md new file mode 100644 index 00000000..e5ca4116 --- /dev/null +++ b/docs/zh-cn/cryptography.zh-cn.md @@ -0,0 +1,12 @@ +--- +layout: page +title: 加密算法 +parent: 中文版 +nav_order: 4 +permalink: /zh-cn/cryptography/ +--- + +# 加密算法 +{: .fs-9 } + +--- \ No newline at end of file diff --git a/docs/zh-cn/deploy.zh-cn.md b/docs/zh-cn/deploy.zh-cn.md index 4f6d19b8..d38b3a20 100644 --- a/docs/zh-cn/deploy.zh-cn.md +++ b/docs/zh-cn/deploy.zh-cn.md @@ -2,7 +2,7 @@ layout: page title: 部署OpenNHP parent: 中文版 -nav_order: 4 +nav_order: 5 permalink: /zh-cn/deploy/ --- diff --git a/docs/zh-cn/server_plugin.zh-cn.md b/docs/zh-cn/server_plugin.zh-cn.md index a797c93a..fc6eb017 100644 --- a/docs/zh-cn/server_plugin.zh-cn.md +++ b/docs/zh-cn/server_plugin.zh-cn.md @@ -2,7 +2,7 @@ layout: page title: 服务器插件开发 parent: 中文版 -nav_order: 7 +nav_order: 8 permalink: /zh-cn/server_plugin/ --- From edfa3d9d3c3c3dd21b58358d74926c19e605ba04 Mon Sep 17 00:00:00 2001 From: WinGeek Date: Wed, 16 Oct 2024 12:30:29 -0700 Subject: [PATCH 32/41] Update documents --- docs/comparison.md | 11 +- docs/cryptography.md | 13 +- docs/zh-cn/about.zh-cn.md | 3 + docs/zh-cn/build.zh-cn.md | 2 + docs/zh-cn/code.zh-cn.md | 2 + docs/zh-cn/comparison.zh-cn.md | 45 +++-- docs/zh-cn/cryptography.zh-cn.md | 278 +++++++++++++++++++++++++++++- docs/zh-cn/deploy.zh-cn.md | 2 + docs/zh-cn/features.zh-cn.md | 3 + docs/zh-cn/index.zh-cn.md | 3 +- docs/zh-cn/overview.zh-cn.md | 2 + docs/zh-cn/server_plugin.zh-cn.md | 5 +- 12 files changed, 331 insertions(+), 38 deletions(-) diff --git a/docs/comparison.md b/docs/comparison.md index 0fd3a877..650093b5 100644 --- a/docs/comparison.md +++ b/docs/comparison.md @@ -1,17 +1,18 @@ --- layout: page title: Comparison -nav_order: 3 +nav_order: 4 permalink: /comparison/ --- -- {: .fs-9 } +# Comparison between NHP and SPA +{: .fs-9 } -*       (Note: The following content is extracted from the journal paper "AHAC: Advanced Network-Hiding Access Control Framework" published in Volume 14, Issue 13 of the journal *Applied Sciences* in 2024. It is worth noting that the AHAC framework is a key component of the NHP (OpenNHP) technology system. This paper provides a detailed introduction and comparison of the performance of NHP (Next-Generation Host Protocol) and SPA (Secure Protocol Architecture) in various aspects.)* +[中文版](/zh-cn/comparison/){: .label .fs-4 } -# Comparison between NHP and SPA +Note: The following content is extracted from the journal paper "AHAC: Advanced Network-Hiding Access Control Framework" published in Volume 14, Issue 13 of the journal *Applied Sciences* in 2024. It is worth noting that the AHAC framework is a key component of the NHP (OpenNHP) technology system. -# Table Of Content: +--- - [Comparison between NHP and SPA](#comparison-between-nhp-and-spa) - [Table Of Content:](#table-of-content) diff --git a/docs/cryptography.md b/docs/cryptography.md index d0741db5..af8313f7 100644 --- a/docs/cryptography.md +++ b/docs/cryptography.md @@ -1,22 +1,25 @@ --- layout: page title: Cryptography -nav_order: 4 +nav_order: 3 permalink: /cryptography/ --- # Cryptographic Algorithms in OpenNHP {: .fs-9 } +Cryptography is at the heart of OpenNHP, providing robust security, excellent performance, and scalability by utilizing cutting-edge cryptographic algorithms. +{: .fs-6 .fw-300 } + [中文版](/zh-cn/cryptography/){: .label .fs-4 } --- -Cryptography is at the heart of OpenNHP, providing robust security, excellent performance, and scalability by utilizing cutting-edge cryptographic algorithms. This article explains how OpenNHP takes advantages of modern cryptographic algorithms in several critical areas: +This article explains how OpenNHP takes advantages of modern cryptographic algorithms in several critical areas: -1. Public Key Cryptography -2. Key Exchange, Data Encryption and Identity Verification -3. Key Distribution and Management +1. [Public Key Cryptography](#1-public-key-cryptography) +2. [Key Exchange, Data Encryption and Identity Verification](#2-key-exchange-data-encryption-and-identity-verification) +3. [Key Distribution and Management](#3-key-distribution-and-management) ## 1) Public Key Cryptography diff --git a/docs/zh-cn/about.zh-cn.md b/docs/zh-cn/about.zh-cn.md index b3b86a93..75c33965 100644 --- a/docs/zh-cn/about.zh-cn.md +++ b/docs/zh-cn/about.zh-cn.md @@ -9,6 +9,9 @@ permalink: /zh-cn/about/ # 关于OpenNHP开源项目 {: .fs-9 } +[English Version](/about/){: .label .fs-4 } + + --- diff --git a/docs/zh-cn/build.zh-cn.md b/docs/zh-cn/build.zh-cn.md index b4688b48..a627d468 100644 --- a/docs/zh-cn/build.zh-cn.md +++ b/docs/zh-cn/build.zh-cn.md @@ -9,6 +9,8 @@ permalink: /zh-cn/build/ # 编译OpenNHP {: .fs-9 } +[English Version](/build/){: .label .fs-4 } + --- ## 1. WSL环境准备 diff --git a/docs/zh-cn/code.zh-cn.md b/docs/zh-cn/code.zh-cn.md index ca356b25..38328f25 100644 --- a/docs/zh-cn/code.zh-cn.md +++ b/docs/zh-cn/code.zh-cn.md @@ -9,6 +9,8 @@ permalink: /zh-cn/code/ # OpeNHP代码解读 {: .fs-9 } +[English Version](/code/){: .label .fs-4 } + --- ## 1. 层级架构 diff --git a/docs/zh-cn/comparison.zh-cn.md b/docs/zh-cn/comparison.zh-cn.md index d3be8211..640f7e52 100644 --- a/docs/zh-cn/comparison.zh-cn.md +++ b/docs/zh-cn/comparison.zh-cn.md @@ -2,17 +2,19 @@ layout: page title: 对比NHP与SPA parent: 中文版 -nav_order: 3 +nav_order: 4 permalink: /zh-cn/comparison/ --- -- {: .fs-9 } +# 对比NHP与SPA +{: .fs-9 } -*       ( 注:以下内容摘自《Applied Sciences》杂志2024年第14卷第13期的期刊论文《AHAC: Advanced Network-Hiding Access Control Framework》论文,值得特别指出的是,AHAC框架是NHP(OpenNHP)技术体系中的一个关键组成部分。本文详细介绍和比较 NHP(Next-Generation Host Protocol)与 SPA(Secure Protocol Architecture)在不同方面的表现。)* +[English Version](/comparison/){: .label .fs-4 } -# NHP与SPA的对比 +注: 以下内容摘自《Applied Sciences》杂志2024年第14卷第13期的期刊论文《AHAC: Advanced Network-Hiding Access Control Framework》论文,值得特别指出的是,AHAC框架是NHP(OpenNHP)技术体系中的一个关键组成部分。 + +--- -# 目录: - [NHP与SPA的对比](#nhp与spa的对比) - [目录:](#目录) - [1. 优势对比](#1-优势对比) @@ -26,10 +28,9 @@ permalink: /zh-cn/comparison/ - [4.2 与FIDO集成](#42-与fido集成) - [5. 兼容性对比](#5-兼容性对比) - ## 1. 优势对比 -       NHP通过结合噪声协议、密钥对和ECDH算法,提供强大的双向认证机制。与传统方法相比,NHP在性能、可扩展性和安全性上有显著优势。它支持多种编程语言(如C/C++、Python、Java和Go),并提供高度可扩展的架构,增强设备验证能力,防御重放攻击,彻底解决IP放大问题。NHP特别适合企业IAM系统和安全资源访问等需要强认证和加密的场景,优化了性能并提升了高可用性,确保在复杂环境中的无缝兼容性和高安全性。相比之下,SPA虽然具有一定优势,但在安全性、性能和可扩展性方面仍无法与NHP媲美。 +NHP通过结合噪声协议、密钥对和ECDH算法,提供强大的双向认证机制。与传统方法相比,NHP在性能、可扩展性和安全性上有显著优势。它支持多种编程语言(如C/C++、Python、Java和Go),并提供高度可扩展的架构,增强设备验证能力,防御重放攻击,彻底解决IP放大问题。NHP特别适合企业IAM系统和安全资源访问等需要强认证和加密的场景,优化了性能并提升了高可用性,确保在复杂环境中的无缝兼容性和高安全性。相比之下,SPA虽然具有一定优势,但在安全性、性能和可扩展性方面仍无法与NHP媲美。 | | SPA | NHP | | ------------ | ------------------------------ | ------------------------------ | @@ -50,7 +51,7 @@ permalink: /zh-cn/comparison/ ### 2.1 加密算法开销 -       SPA 采用的是 RSA 加密算法,而 NHP 采用的是 ECC 加密算法。我们根据安全强度和密钥长度比较了 RSA 和 ECC 的性价比,如下表所示。在相同的安全标准下,ECC 算法的密钥长度显著短于 RSA 算法。此外,RSA 消息签名生成的密文大小大致等于密钥长度。因此,在验证网络消息身份时,NHP 使用更短的 ECC 随机密钥(32 字节或 64 字节)进行 ECDH 交换,而不是传输较大的 RSA2048 消息签名(256 字节)进行验证,不仅降低了计算开销,还更加高效地节省了宝贵的带宽资源。这一策略表明,NHP 在提高系统效率和资源利用率方面相较于 SPA 具有显著优势。 +SPA 采用的是 RSA 加密算法,而 NHP 采用的是 ECC 加密算法。我们根据安全强度和密钥长度比较了 RSA 和 ECC 的性价比,如下表所示。在相同的安全标准下,ECC 算法的密钥长度显著短于 RSA 算法。此外,RSA 消息签名生成的密文大小大致等于密钥长度。因此,在验证网络消息身份时,NHP 使用更短的 ECC 随机密钥(32 字节或 64 字节)进行 ECDH 交换,而不是传输较大的 RSA2048 消息签名(256 字节)进行验证,不仅降低了计算开销,还更加高效地节省了宝贵的带宽资源。这一策略表明,NHP 在提高系统效率和资源利用率方面相较于 SPA 具有显著优势。 | 安全强度(比特) | SPA (最小值公钥长度(位)) | NHP(最小值公钥长度(位)) | NHP vs SPA(密钥长度比) | 有效期 | @@ -62,7 +63,7 @@ permalink: /zh-cn/comparison/ | 256 | 15360 | 512+ | 1:30 | | -       我们通过实验测量了 RSA 和 ECC 的加解密时间,具体结果见下表。实验增加了加密和解密的循环次数,测试两种算法在不同情况下的性能。结果显示,尽管 RSA 和 ECC 的加解密时间随着循环次数的增加而上升,但 ECC 的时间开销始终远低于 RSA。尤其在循环次数增多时,ECC 的优势更加明显,RSA 的时间开销最高达到 ECC 的约 800 倍。这一显著差距表明,NHP 在加解密效率上明显优于 SPA,为实际应用中选择更高效的加密算法提供了有力的依据。 +我们通过实验测量了 RSA 和 ECC 的加解密时间,具体结果见下表。实验增加了加密和解密的循环次数,测试两种算法在不同情况下的性能。结果显示,尽管 RSA 和 ECC 的加解密时间随着循环次数的增加而上升,但 ECC 的时间开销始终远低于 RSA。尤其在循环次数增多时,ECC 的优势更加明显,RSA 的时间开销最高达到 ECC 的约 800 倍。这一显著差距表明,NHP 在加解密效率上明显优于 SPA,为实际应用中选择更高效的加密算法提供了有力的依据。 | 循环次数(次) | SPA | NHP | | -------------- | -------- | ------ | @@ -77,36 +78,34 @@ permalink: /zh-cn/comparison/ ### 2.2 性能开销 -       为了全面评估 NHP 的性能表现,我们搭建了一个下图所示的实验环境,针对 NHP 和 SPA 进行了负载性能测试。该环境由两个主要区域组成:Agent 部署区域和网络隐身部署区域。 +为了全面评估 NHP 的性能表现,我们搭建了一个下图所示的实验环境,针对 NHP 和 SPA 进行了负载性能测试。该环境由两个主要区域组成:Agent 部署区域和网络隐身部署区域。 ![部署图](/images/Deploment_diagram.png) -       在网络隐身部署区域,我们集成了网络隐身服务器和应用服务器作为关键组件。为了确保测试环境的稳定性和一致性,我们选用了三台配置相同的机器,每台配备 4 核 CPU 和 8G 内存。在 agent 部署区域,我们启动了 n 个 agent 服务,这些服务以每秒发送一次敲门请求的频率与网络隐身服务器通信。同时,在网络隐身服务器上部署了 JMeter 组件,用于模拟和监控其性能表现。应用服务器端同样部署了 JMeter 服务,实时跟踪网络隐身服务器的性能资源消耗情况。通过这种设置,我们能够全面监控和比较 NHP 与 SPA 的性能表现。 +在网络隐身部署区域,我们集成了网络隐身服务器和应用服务器作为关键组件。为了确保测试环境的稳定性和一致性,我们选用了三台配置相同的机器,每台配备 4 核 CPU 和 8G 内存。在 agent 部署区域,我们启动了 n 个 agent 服务,这些服务以每秒发送一次敲门请求的频率与网络隐身服务器通信。同时,在网络隐身服务器上部署了 JMeter 组件,用于模拟和监控其性能表现。应用服务器端同样部署了 JMeter 服务,实时跟踪网络隐身服务器的性能资源消耗情况。通过这种设置,我们能够全面监控和比较 NHP 与 SPA 的性能表现。 -       在保持实验环境一致性的前提下,我们按照部署方案分别选取了1、10、20、30、40、50个agent,对NHP和SPA进行了性能测试。测试结果如表4所示,其中横轴表示参与实验的agent数量,纵轴则显示测试期间的CPU占用率变化。通过这种设置,我们能够直观地观察到随着agent数量的增加,NHP和SPA在CPU资源消耗方面的不同表现。 +在保持实验环境一致性的前提下,我们按照部署方案分别选取了1、10、20、30、40、50个agent,对NHP和SPA进行了性能测试。测试结果如表4所示,其中横轴表示参与实验的agent数量,纵轴则显示测试期间的CPU占用率变化。通过这种设置,我们能够直观地观察到随着agent数量的增加,NHP和SPA在CPU资源消耗方面的不同表现。 ![CPU对比](/images/CPU_compare.png) -       实验结果显示,随着 Agent 数量的增加,NHP 和 SPA 的 CPU 负载均呈现上升趋势。然而,随着 Agent 数量的进一步增加,NHP 的性能优势逐渐凸显,其 CPU 负载大约维持在 SPA 的一半左右,展现出显著的效率提升。
-*       ( 注:尽管理论上 NHP 的性能应较 SPA 提升约 1000 倍,但实际测试中仅提升约 1 倍。分析原因,主要因素包括网络开销对性能的显著影响、垃圾回收机制导致的性能损失,以及硬件环境差异。此外,尽管出于代码安全性和加密算法实现的考虑,我们选择了内存安全的 Go 语言开发,但其垃圾回收机制也对性能产生了一定影响。)* -## +实验结果显示,随着 Agent 数量的增加,NHP 和 SPA 的 CPU 负载均呈现上升趋势。然而,随着 Agent 数量的进一步增加,NHP 的性能优势逐渐凸显,其 CPU 负载大约维持在 SPA 的一半左右,展现出显著的效率提升。 +> 注:尽管理论上 NHP 的性能应较 SPA 提升约 1000 倍,但实际测试中仅提升约 1 倍。分析原因,主要因素包括网络开销对性能的显著影响、垃圾回收机制导致的性能损失,以及硬件环境差异。此外,尽管出于代码安全性和加密算法实现的考虑,我们选择了内存安全的 Go 语言开发,但其垃圾回收机制也对性能产生了一定影响。 ## 3. 高可用性对比 -       NHP 通过分布式架构实现零信任服务的高可用性,确保敲门模块和门禁模块在不同主机上部署,以避免资源占用和提升弹性扩展。即使发生故障,也能无缝切换服务,维持系统功能和响应速度。这种设计增强了系统的稳健性和稳定性,降低了服务故障对整体系统的影响,如下图所示。 +NHP 通过分布式架构实现零信任服务的高可用性,确保敲门模块和门禁模块在不同主机上部署,以避免资源占用和提升弹性扩展。即使发生故障,也能无缝切换服务,维持系统功能和响应速度。这种设计增强了系统的稳健性和稳定性,降低了服务故障对整体系统的影响,如下图所示。 ![高可用架构](/images/High-availability.png) -       NHP 支持敲门验证服务的横向弹性扩展,能够根据实时负载动态调整服务实例数。这一功能提供了极高的弹性和可扩展性,确保在高负载下服务依然快速响应且稳定。每个服务实例均能处理敲门请求并维持业务会话,这种设计不仅提升了处理能力,还增强了容错性,保证了业务连续性和稳定性。从测试结果来看,NHP 在高可用性方面相较于 SPA 显著提升 +NHP 支持敲门验证服务的横向弹性扩展,能够根据实时负载动态调整服务实例数。这一功能提供了极高的弹性和可扩展性,确保在高负载下服务依然快速响应且稳定。每个服务实例均能处理敲门请求并维持业务会话,这种设计不仅提升了处理能力,还增强了容错性,保证了业务连续性和稳定性。从测试结果来看,NHP 在高可用性方面相较于 SPA 显著提升 ![负载图](/images/Load_diagram.png) - ## 4. 扩展性对比 -       尽管NHP设计为数据通信提供了可信、可控、可靠和可证的基础保障,但考虑到通信场景和环境的多样性和复杂性,NHP还需具备良好的扩展性以适应不同的定制需求。NHP的扩展性体现在几个方面: +尽管NHP设计为数据通信提供了可信、可控、可靠和可证的基础保障,但考虑到通信场景和环境的多样性和复杂性,NHP还需具备良好的扩展性以适应不同的定制需求。NHP的扩展性体现在几个方面: - 其双向通信机制相比SPA的单向敲门机制,提供了更丰富的扩展能力,可以隐藏资源的真实IP地址并支持数据通信前后的密钥交换,增强隐私计算和数据流通场景的安全性。 @@ -114,11 +113,11 @@ permalink: /zh-cn/comparison/ - NHP的资源标识支持任意字符串形式,包括中英文及符号,为数据资源提供更强的描述性,并具备DNS解析功能,提供更安全、加密和隐私的域名解析服务。 -       因此,NHP的扩展性架构涵盖了与DNS和FIDO的集成等典型应用场景。 +因此,NHP的扩展性架构涵盖了与DNS和FIDO的集成等典型应用场景。 ### 4.1 与DNS集成 -       DNS作为互联网基础服务在网站运行中至关重要,但其安全性长期未被重视,且因使用不可靠的UDP协议,存在诸多安全漏洞,如DNS劫持和拒绝服务攻击。因此,加强DNS安全至关重要。通过集成网络隐身技术,DNS解析通过双向加密通道进行,确保了保密性和防篡改能力,同时只有经过身份认证的用户才能解析,从而有效防御DDoS攻击和劫持。具体实现方案如下图所示,我们的方法能够显著提升了DNS的安全性,为用户提供了更可靠的DNS服务。 +DNS作为互联网基础服务在网站运行中至关重要,但其安全性长期未被重视,且因使用不可靠的UDP协议,存在诸多安全漏洞,如DNS劫持和拒绝服务攻击。因此,加强DNS安全至关重要。通过集成网络隐身技术,DNS解析通过双向加密通道进行,确保了保密性和防篡改能力,同时只有经过身份认证的用户才能解析,从而有效防御DDoS攻击和劫持。具体实现方案如下图所示,我们的方法能够显著提升了DNS的安全性,为用户提供了更可靠的DNS服务。 ![DNS集成方案](/images/DNS_integration.png) @@ -138,7 +137,7 @@ permalink: /zh-cn/comparison/ ### 4.2 与FIDO集成 -       尽管FIDO在Web身份认证方面表现出色,但服务器的潜在漏洞仍可能被黑客利用,从而绕过FIDO的认证,直接入侵服务器进行数据盗窃或破坏。将FIDO与NHP集成,可以有效弥补FIDO在漏洞防护方面的不足,为互联网暴露面提供更全面的防御方案。具体实现方案如下图所示,详细实现步骤如下。 +尽管FIDO在Web身份认证方面表现出色,但服务器的潜在漏洞仍可能被黑客利用,从而绕过FIDO的认证,直接入侵服务器进行数据盗窃或破坏。将FIDO与NHP集成,可以有效弥补FIDO在漏洞防护方面的不足,为互联网暴露面提供更全面的防御方案。具体实现方案如下图所示,详细实现步骤如下。 ![FIDO集成方案](/images/FIDO_integration.png) @@ -168,7 +167,7 @@ permalink: /zh-cn/comparison/ ## 5. 兼容性对比 -       与SPA协议相比,NHP的一个关键目标是对信创环境以及国内零信任标准体系的良好兼容性。在加密算法方面,NHP支持国际密码算法(如RSA、SHA256、AES)和国密算法(如SM2、SM3、SM4),并能根据数据包头的长度调整加密时间。在软硬件兼容性方面,NHP适配了国内外主流的CPU硬件和操作系统,包括鲲鹏、x86、龙芯、申威等。此外,NHP符合即将颁布的国家标准《信息安全技术零信任参考体系架构》的规范要求,确保了与该标准的兼容性,如下图所示。 +与SPA协议相比,NHP的一个关键目标是对信创环境以及国内零信任标准体系的良好兼容性。在加密算法方面,NHP支持国际密码算法(如RSA、SHA256、AES)和国密算法(如SM2、SM3、SM4),并能根据数据包头的长度调整加密时间。在软硬件兼容性方面,NHP适配了国内外主流的CPU硬件和操作系统,包括鲲鹏、x86、龙芯、申威等。此外,NHP符合即将颁布的国家标准《信息安全技术零信任参考体系架构》的规范要求,确保了与该标准的兼容性,如下图所示。 ![兼容性对比](/images/Compatibility_comparison.png) diff --git a/docs/zh-cn/cryptography.zh-cn.md b/docs/zh-cn/cryptography.zh-cn.md index e5ca4116..8dbbccea 100644 --- a/docs/zh-cn/cryptography.zh-cn.md +++ b/docs/zh-cn/cryptography.zh-cn.md @@ -2,11 +2,285 @@ layout: page title: 加密算法 parent: 中文版 -nav_order: 4 +nav_order: 3 permalink: /zh-cn/cryptography/ --- # 加密算法 {: .fs-9 } ---- \ No newline at end of file +[English Version](/cryptography/){: .label .fs-4 } + +加密是 OpenNHP 的核心,通过利用尖端的加密算法提供强大的安全性、卓越的性能和可扩展性。 +{: .fs-6 .fw-300 } + +--- + +本文解释了 OpenNHP 如何在多个关键领域中利用现代加密算法的优势: + +1. [公私钥加密算法](#1-public-key-cryptography) +2. [密钥交换、数据加密和身份认证](#2-key-exchange-data-encryption-and-identity-verification) +3. [密钥分发和管理](#3-key-distribution-and-management) + + +## 1) 公私钥加密算法 +### 1.1 简介 +在不断变化的网络安全环境中,保护通信和网络资源至关重要,特别是在网络威胁日益复杂的情况下。网络基础设施隐藏协议(NHP),作为一种零信任安全机制,致力于通过隐藏网络基础设施细节来防止攻击者入侵,并确保只有受信任的实体能够与网络资源交互。NHP 安全模型的关键组件是椭圆曲线加密(ECC)用于公钥加密。在本文中,我们将探讨 ECC 如何集成到 NHP 零信任协议中,以提供强大且高效的安全性。 + +椭圆曲线加密(ECC)是一种现代公钥加密方法,相较于传统方法如 RSA,它能在显著更小的密钥尺寸下提供相同级别的安全性。ECC 依赖于有限域上椭圆曲线的数学特性,提供了安全性与性能之间的良好平衡。由于其降低了计算开销,ECC 特别适用于资源受限的环境,如嵌入式系统或移动设备。公钥加密是基于非对称密钥对的加密方法,通常包括一个公开的公钥和一个私密的私钥。通过公钥加密,可以实现安全的数据传输、身份验证和数字签名等功能,从而确保通信双方的数据安全性和身份真实性。 + +### 1.2 什么是椭圆曲线加密? + +椭圆曲线加密(ECC)是一种基于椭圆曲线数学理论的公钥加密技术。它通过椭圆曲线方程上的点运算,提供与传统方法(如 RSA)相同的安全性,但密钥尺寸更小,计算效率更高。ECC 的安全性源于椭圆曲线离散对数问题,其计算复杂度使得破解难度极大。 + +在 ECC 中,参与方通过生成公私钥对,利用椭圆曲线 Diffie-Hellman(ECDH)协议来交换密钥。ECC 的数学基础是使用有限域上的椭圆曲线方程: + +y^2 = x^3 + ax + b + +其中 a 和 b 是定义曲线特性的常数,曲线上的点集具有特定的加法运算规则。 + +ECC 的主要优势包括: +- **更小的密钥尺寸**:ECC 能在更小的密钥长度下实现相同的安全性,从而降低了存储和计算的负担。 +- **增强的安全性**:ECC 基于椭圆曲线离散对数问题,其数学复杂性使其非常难以破解。 +- **高效性**:相比传统加密方法如 RSA,ECC 的加密和解密操作速度更快,适用于资源受限的设备(如嵌入式系统和移动设备)。 + +NHP 使用 ECC 进行密钥交换、数据加密和身份验证,以及通过无证书公钥加密(CL-PKC)进行密钥分发和管理。 + +### 1.3 安全通信中的 ECC + +#### 1.3.1 密钥交换机制 + +加密密钥的安全交换是任何安全通信协议的核心。NHP 使用椭圆曲线 Diffie-Hellman(ECDH)作为其密钥交换机制。在 ECDH 密钥交换中,通信双方使用椭圆曲线生成公私密钥对,然后交换公钥,以便双方计算出共享密钥,而无需直接在网络上传递。 + +使用 ECDH 的好处有两个方面:首先,它提供了前向安全性,即使在未来某一方的私钥被泄露,先前建立的会话密钥仍然是安全的。其次,由于 ECC 的高效性,密钥交换过程计算负担较轻,确保密钥建立过程快速完成且计算成本低。 + +#### 1.3.2 数字签名身份验证 + +在零信任环境中,身份验证至关重要。NHP 使用椭圆曲线数字签名算法(ECDSA)来验证试图访问网络资源的实体的身份。ECDSA 是一种基于 ECC 的数字签名方案,它允许设备在不暴露敏感私钥的情况下证明其身份。 + +在 NHP 协议中,当某个实体希望与网络通信时,它必须使用其私钥生成数字签名,接收方可以使用相应的公钥来验证签名的有效性。这确保了只有合法的实体可以参与网络,从而有效地实施零信任模型的 "永不信任,始终验证" 原则。 + +#### 1.3.3 数据保密加密 + +NHP 在通信过程中使用对称加密来确保数据的保密性,但对称密钥必须在实体之间安全地分发和共享。ECC 通过 ECDH 提供安全的对称密钥分发渠道,确保对称密钥可以安全地交换。 + +一旦这些密钥交换完成,NHP 就会切换到对称加密进行数据传输,从中受益于对称加密算法的速度和效率。ECC 确保对称密钥交换既安全又高效。 + +#### 1.3.4 无证书公钥加密中的密钥管理与分发 + +NHP 还通过无证书公钥加密(CL-PKC)使用 ECC 进行密钥管理和分发。在传统的公钥基础设施中,证书被用来验证公钥,这在证书管理方面引入了复杂性。CL-PKC 通过允许实体与受信任的中心合作生成部分私钥,同时独立生成自己的密钥对,从而消除了证书的需要。 + +这种方法简化了密钥管理,确保公钥可以在没有证书颁发和验证的情况下安全使用。通过在 CL-PKC 中使用 ECC,NHP 提供了一种轻量级且安全的密钥分发方式,通过消除对集中式证书机构的依赖,进一步增强了零信任模型。 + +### 1.4 使用 ECC 的优势 + +NHP 零信任协议中使用 ECC 提供了众多符合其安全目标的优势: + +- **可扩展安全性**:ECC 较小的密钥尺寸提供了强大的安全性,能很好地适应对抗对手计算能力不断增强的情况。随着 NHP 致力于为多样化的网络部署提供零信任环境,ECC 的可扩展性是一项关键资产。 +- **资源效率**:相比传统公钥加密,ECC 减少了网络设备的计算负担。在网络资源可能受限的环境中——如边缘设备或物联网组件——这种高效性对于在不牺牲安全性的情况下保持高性能至关重要。 +- **性能提升**:结合 ECDH 的密钥交换、ECDSA 的身份验证以及高效的对称加密提供了一个平衡的安全通信解决方案。这种平衡的方法使得 NHP 能够实现零信任的目标,同时保持较低的延迟,这对时间敏感的网络应用尤为关键。 + +### 1.5 结论 + +将椭圆曲线加密集成到 NHP 零信任协议中,提供了一种在最小性能影响下保护网络通信的强大手段。通过利用 ECDH 进行安全的密钥交换、ECDSA 进行可靠的身份验证,以及高效的对称加密进行数据传输,ECC 支持零信任模型的目标,即隐藏网络基础设施,确保只有受信任的实体可以访问资源,并以低开销保持安全性。 + +随着网络威胁变得越来越复杂,像 ECC 这样的先进加密技术在 NHP 协议中的应用对于保持对攻击者的优势至关重要。ECC 和 NHP 之间的协同作用不仅有助于保护关键的网络基础设施,还确保安全措施既强大又高效——这是任何现代网络安全项目成功的关键组合。 + +网络基础设施隐藏协议(NHP)基于零信任安全模型构建,确保即使在潜在攻击者的存在下也能实现安全通信。为此,NHP 集成了 Noise 协议框架,这是一个用于安全且灵活的密钥交换、数据加密和身份验证的加密框架。该组合以最小的计算开销提供了强大的安全性。 + +## 2)密钥交换、数据加密和身份认证 + +### 2.1 简介 + +#### 2.1.1. 密钥交换机制 + +NHP 利用 Noise 协议的密钥交换机制来确保通信双方之间的安全认证通道。密钥交换从握手阶段开始,双方交换 Diffie-Hellman (DH) 公钥。在 Noise 中,每一方生成一个临时密钥对,并使用交换的公钥派生出共享密钥,该共享密钥随后用于加密后续通信。 + +Noise 允许 NHP 支持长期静态密钥和临时密钥以增强安全性。Noise 框架的握手模式的灵活性使得 NHP 能够根据特定使用场景定制握手过程,提供相互认证、匿名发起者或初始握手本身加密的选项。通过利用 Noise 的基于令牌的握手系统,NHP 可以精确控制密钥交换消息的顺序,同时保持身份信息的机密性。 + +#### 2.1.2 数据加密 + +共享密钥在握手期间派生出来后,Noise 框架使用对称加密来保护数据。NHP 利用 Noise 的 CipherState 和 SymmetricState 对象,这些是 Noise 状态机的核心组件,用于管理通信会话的加密和解密密钥。 + +特别地,握手期间派生的共享密钥用于初始化对称加密密钥(k)和随机数(n),用于数据加密。Noise 支持高级加密方案,如 ChaCha20-Poly1305 或 AES-GCM,提供带有附加数据认证加密(AEAD),以维护数据的保密性和完整性。链式密钥(ck)和握手散列(h)用于在会话过程中不断派生新的密钥,增强前向安全性,确保一个密钥的泄露不会危及通信的其他部分。 + +NHP 通过这些加密属性提供网络数据的加密通道,确保任何被拦截的数据在没有派生密钥的情况下无法被解密。 + +#### 2.1.3 身份验证 + +Noise 通过将静态密钥的交换与 Diffie-Hellman 操作相结合来实现身份验证。在 NHP 中,身份验证发生在握手期间,其中静态密钥被加密并通过共享的 DH 操作进行验证,有效地将双方的公钥绑定到派生的会话密钥上。 + +在握手过程中,Noise 使用诸如 "s"(静态)和 "e"(临时)等令牌来指示正在交换和验证哪些密钥。这种基于令牌的方法使得 NHP 能够根据具体的使用场景选择性地认证单方或双方。例如,Noise 中的 "XX" 模式提供相互认证,而 "NK" 模式允许单方认证的握手,赋予 NHP 在身份验证严格性方面的灵活性。 + +为了进一步保护身份信息,Noise 可以在握手期间加密静态密钥。NHP 利用这一特性来防止窃听者发现参与者的身份,从而支持零信任模型,确保参与者的身份只对预期的对方可见,而不对第三方泄露。 + +### 2.2 算法和公式 + +#### 2.2.1 Diffie-Hellman 密钥交换 + +Diffie-Hellman(DH)密钥交换用于在两方之间派生共享密钥,每一方生成一个私钥(a 对于 A,b 对于 B)并计算公共密钥: + +- A 计算其公钥:A_pub = g^a mod p +- B 计算其公钥:B_pub = g^b mod p + +共享密钥 s 通过以下方式计算: + +- A 计算:s = B_pub^a mod p +- B 计算:s = A_pub^b mod p + +该共享密钥 s 对于双方是相同的,用于派生加密密钥。 + +#### 2.2.2 对称加密 + +NHP 使用对称加密确保数据机密性。密钥(k)和随机数(n)用于加密函数。对于带有附加数据认证加密(AEAD),通常使用 ChaCha20-Poly1305 算法,该算法结合了流密码(ChaCha20)和消息验证码(Poly1305)。 + +- 加密:c = ChaCha20(k, n, plaintext) +- 认证:tag = Poly1305(k, associated data || c) + +密文(c)和标签一起传输,确保数据的机密性和完整性。 + +#### 2.2.3 密钥派生和散列 + +Noise 使用基于 HMAC 的密钥派生函数(KDF)来派生密钥。HKDF(基于 HMAC 的密钥派生函数)用于从共享密钥(s)生成多个密钥。 + +HKDF 步骤: + +- temp_key = HMAC(chaining_key, input_key_material) +- output1 = HMAC(temp_key, 0x01) +- output2 = HMAC(temp_key, output1 || 0x02) + +派生的密钥用于加密和维护链式密钥(ck),以确保前向安全性。 + +#### 2.2.4 身份认证 + +身份验证在 NHP 中涉及静态和临时密钥的交换,以验证参与方。静态(s)和临时(e)密钥之间的 Diffie-Hellman 操作产生唯一的共享值,用于验证参与方的身份。 + +身份验证操作包括: + +- ss = DH(s_A, s_B) +- es = DH(e_A, s_B) 或 DH(s_A, e_B) +- ee = DH(e_A, e_B) + +这些值通过散列结合起来派生最终的会话密钥,有效地将身份绑定到密钥交换过程中,确保只有预期的参与方能够派生出正确的会话密钥。 + +### 2.3 结论 + +Noise 协议框架为 NHP 提供了灵活且强大的加密机制,确保了通信的安全性和参与方身份的验证。通过支持多种握手模式和加密方案,Noise 框架增强了网络的前向安全性和身份保护能力,有效支持了零信任环境下的安全通信需求。结合 Diffie-Hellman 密钥交换、对称加密和基于令牌的身份验证,Noise 框架为 NHP 提供了实现其零信任目标的强大工具。 + +## 3) 密钥管理与分发 + +### 3.1 简介 + +无证书公钥加密(Certificateless Public Key Cryptography,CL-PKC),最初由 Al-Riyami 和 Paterson 在 2003 年提出,提供了一种混合解决方案,在不依赖传统证书机构(CA)的情况下确保强加密保证。本文探讨了 NHP 如何利用 CL-PKC 在不依赖证书的情况下实现高效且安全的密钥管理。 + +在传统的公钥基础设施(PKI)中,证书机构(CAs)作为可信的第三方,负责签发和管理公钥证书以验证用户密钥的真实性。虽然这种模型有效,但它引入了复杂性和风险,例如对 CA 的依赖以及 CA 受到攻击时的风险。无证书公钥加密旨在通过消除证书的使用来缓解这些问题,同时确保公钥的真实性。 + +在 CL-PKC 系统中,一个称为密钥生成中心(KGC)的可信第三方负责为用户生成部分私钥。然而,与 CA 不同的是,KGC 无法访问完整的私钥,因此不可能冒充用户。每个用户将 KGC 提供的部分私钥与他们自己的秘密值结合起来,生成完整的私钥和公钥。这种方法减少了对任何单一实体的信任,并提供了额外的安全层。 + +NHP 零信任协议集成了 CL-PKC 来管理其安全通信框架的密钥分发和验证。下面,我们解释 CL-PKC 的各种机制如何为 NHP 的密钥管理过程做出贡献。 + +#### 3.1.1. 部分密钥生成 + +KGC 负责创建系统范围的参数,包括主公私钥对。主私钥由 KGC 保密,而主公钥则分发给所有参与者。当新用户希望加入网络时,KGC 执行以下步骤: + +- 生成用户的部分私钥,使用他们的唯一标识符(例如电子邮件或其他身份信息)。这确保每个用户的部分密钥与其身份绑定,提供基于身份的安全性。 + +##### 3.1.2 用户特定密钥对生成 + +用户随后选择自己的秘密值,并将其与 KGC 提供的部分私钥结合起来,生成完整的私钥。具体步骤如下: + +- 用户选择一个秘密值 (d'\_A),并使用它来生成一个点 U\_A: + + U\_A = [d'\_A]G + +- 用户将 KGC 提供的部分私钥 (t\_A) 与自己的秘密值 (d'\_A) 相结合,计算出完整的私钥 (d\_A): + + d\_A = (t\_A + d'\_A) mod n + +- 用户使用完整的私钥生成相应的公钥 (P\_A): + + P\_A = W\_A + [l]P\_pub + +用户随后选择自己的秘密值,并将其与 KGC 提供的部分私钥结合起来,生成完整的私钥。用户的公钥也相应生成。 + +这种密钥分发方法确保 KGC 无法单方面确定用户的私钥,从而降低了密钥生成中心被攻破的风险。此外,不需要传统证书意味着用户无需依赖外部证书机构来验证密钥,从而减少了中间人(MITM)攻击的攻击面。 + +在像 NHP 实施的这种无证书系统中,公钥的真实性通过隐式的方法而不是依赖 CA 签发的证书来验证。具体来说,用户的公钥是使用系统参数、用户标识符和 KGC 的主公钥计算出来的。该计算是确定性的,允许任何一方在无需信任 CA 或存储大量证书数据库的情况下验证公钥的真实性。 + +通过消除传统证书的需要,NHP 能够简化密钥验证过程,消除证书吊销列表(CRLs)和其他 PKI 复杂性。这种方法不仅减少了通信开销,还通过消除对可信第三方的依赖增强了安全性,因为这些第三方可能成为攻击者的目标。 + + +### 3.2 算法和公式 + +#### 3.2.1 系统参数生成 + +密钥生成中心(KGC)负责生成系统参数,这些参数包括椭圆曲线 (E) 定义在有限域 (ℚ_q) 上,基点 (G) 的素数阶 (n),以及主私钥 (ms)。KGC 计算主公钥 (P_pub) 如下: + +P_pub = [ms]G + +其中 [ms]G 表示基点 G 与主私钥 ms 的标量乘法。 + +#### 3.2.2 部分私钥生成 + +对于每个用户(标识符为 ID_A),KGC 生成部分私钥。首先,KGC 根据用户的标识符和系统参数计算哈希值 (H_A): + +H_A = H(ENTL_A || ID_A || a || b || x_G || y_G || x_P_pub || y_P_pub) + +其中 (ENTL_A) 是由标识符派生的长度值,(x_G, y_G) 和 (x_P_pub, y_P_pub) 分别是点 G 和 P_pub 的坐标。 + +KGC 选择一个随机值 (w ∈ [1, n-1]) 并计算: + +W_A = [w]G + U_A + +其中 (U_A = [d'_A]G) 是用户使用其自身的秘密值 (d'_A) 生成的点。 + +部分私钥 (t_A) 计算如下: + +t_A = (w + l · ms) mod n + +其中 (l) 是根据点 (W_A) 和哈希 (H_A) 计算的值。 + +#### 3.2.3 用户完整私钥生成 + +用户通过将部分私钥 (t_A) 与其秘密值 (d'_A) 结合生成完整的私钥: + +d_A = (t_A + d'_A) mod n + +这确保只有用户自己知道其完整的私钥。 + +#### 3.2.4 公钥计算 + +用户的公钥 (P_A) 计算如下: + +P_A = W_A + [l]P_pub + +任何人可以使用系统参数、用户标识符和 KGC 的公钥验证该公钥。 + +#### 3.2.5 签名生成与验证 + +用户对消息 (M) 生成数字签名时,计算哈希 (e) 如下: + +e = H(H_A || x_W_A || y_W_A || M) + +签名 (r, s) 使用用户私钥 (d_A) 和一个随机值 (k) 生成: + +[r]G = (x_1, y_1) +r = x_1 mod n +s = (k^{-1}(e + d_A · r)) mod n + +验证签名时,验证者计算 (P_A),然后检查是否满足: + +[r]G = [s]G + [e + r]P_A + +如果等式成立,签名即为有效。 + + +### 3.3 结论 + +NHP 实施的无证书公钥加密为零信任环境中的密钥管理提供了一种强大且高效的方法。通过利用 CL-PKC,NHP 能够缓解传统 PKI 相关的风险,减少对集中可信机构的依赖,并简化密钥分发过程。结果是一个更安全且可扩展的系统,适合在面对不断发展的网络威胁时保护关键网络基础设施。 + +将无证书加密与 NHP 的零信任原则相结合,使其成为在最小化集中机构引入的风险的同时保护网络资源的理想解决方案。 + +Copyright © 2024 OpenNHP Open Source Project. + + diff --git a/docs/zh-cn/deploy.zh-cn.md b/docs/zh-cn/deploy.zh-cn.md index d38b3a20..9ff32f4f 100644 --- a/docs/zh-cn/deploy.zh-cn.md +++ b/docs/zh-cn/deploy.zh-cn.md @@ -9,6 +9,8 @@ permalink: /zh-cn/deploy/ # 部署OpenNHP {: .fs-9 } +[English Version](/deploy/){: .label .fs-4 } + --- ## 1. OpenNHP组件说明 diff --git a/docs/zh-cn/features.zh-cn.md b/docs/zh-cn/features.zh-cn.md index 65a63098..058be859 100644 --- a/docs/zh-cn/features.zh-cn.md +++ b/docs/zh-cn/features.zh-cn.md @@ -9,6 +9,9 @@ permalink: /zh-cn/features/ # OpenNHP功能列表 {: .fs-9 } +[English Version](/features/){: .label .fs-4 } + + --- diff --git a/docs/zh-cn/index.zh-cn.md b/docs/zh-cn/index.zh-cn.md index bbd1f56d..97f06c1e 100644 --- a/docs/zh-cn/index.zh-cn.md +++ b/docs/zh-cn/index.zh-cn.md @@ -9,7 +9,6 @@ permalink: /zh-cn/ # OpenNHP中文版文档 {: .fs-9 } - [English Version](/){: .label .fs-4 } - +--- diff --git a/docs/zh-cn/overview.zh-cn.md b/docs/zh-cn/overview.zh-cn.md index 60394761..4c1c31ae 100644 --- a/docs/zh-cn/overview.zh-cn.md +++ b/docs/zh-cn/overview.zh-cn.md @@ -10,6 +10,8 @@ permalink: /zh-cn/overview/ # OpenNHP:零信任网络隐身协议 {: .fs-9 } +[English Version](/){: .label .fs-4 } + --- ## 第一章:导读 diff --git a/docs/zh-cn/server_plugin.zh-cn.md b/docs/zh-cn/server_plugin.zh-cn.md index fc6eb017..d00ad5f4 100644 --- a/docs/zh-cn/server_plugin.zh-cn.md +++ b/docs/zh-cn/server_plugin.zh-cn.md @@ -7,8 +7,11 @@ permalink: /zh-cn/server_plugin/ --- # OpenNHP插件开发教程 +{: .fs-9 } -# 目录 +[English Version](/server_plugin/){: .label .fs-4 } + +--- - [简介 ](#简介 ) From 5286dfab254787c87bb6de088f5a23494795b4bf Mon Sep 17 00:00:00 2001 From: WinGeek Date: Wed, 16 Oct 2024 12:36:19 -0700 Subject: [PATCH 33/41] Formmating the documents --- docs/build.md | 6 ++++++ docs/comparison.md | 6 +++--- docs/zh-cn/about.zh-cn.md | 4 +--- docs/zh-cn/build.zh-cn.md | 2 +- docs/zh-cn/code.zh-cn.md | 2 +- docs/zh-cn/comparison.zh-cn.md | 4 ++-- docs/zh-cn/cryptography.zh-cn.md | 4 ++-- docs/zh-cn/deploy.zh-cn.md | 2 +- docs/zh-cn/features.zh-cn.md | 3 +-- docs/zh-cn/index.zh-cn.md | 3 ++- docs/zh-cn/server_plugin.zh-cn.md | 2 +- 11 files changed, 21 insertions(+), 17 deletions(-) diff --git a/docs/build.md b/docs/build.md index 53ebf028..c1a7a202 100644 --- a/docs/build.md +++ b/docs/build.md @@ -7,6 +7,12 @@ permalink: /build/ # Build OpenNHP Source Code {: .fs-9 } + +This article explains how to build OpenNHP from source code. + +[中文版](/zh-cn/build/){: .label .fs-4 } +--- + ## 1. WSL Environment Setup **Note:** You can run Linux through the WSL subsystem on Windows 10/11. For details, see the official WSL documentation: https://learn.microsoft.com/en-us/windows/wsl/install diff --git a/docs/comparison.md b/docs/comparison.md index 650093b5..51ecda81 100644 --- a/docs/comparison.md +++ b/docs/comparison.md @@ -8,10 +8,10 @@ permalink: /comparison/ # Comparison between NHP and SPA {: .fs-9 } -[中文版](/zh-cn/comparison/){: .label .fs-4 } - Note: The following content is extracted from the journal paper "AHAC: Advanced Network-Hiding Access Control Framework" published in Volume 14, Issue 13 of the journal *Applied Sciences* in 2024. It is worth noting that the AHAC framework is a key component of the NHP (OpenNHP) technology system. +[中文版](/zh-cn/comparison/){: .label .fs-4 } + --- - [Comparison between NHP and SPA](#comparison-between-nhp-and-spa) @@ -191,6 +191,6 @@ FIDO-based authentication response to the Server. ![Compatibility comparison](/images/Compatibility_comparison.png) -- [中文版](/docs/zh-cn/comparison.zh-cn.md){: .label .fs-4 } + --- \ No newline at end of file diff --git a/docs/zh-cn/about.zh-cn.md b/docs/zh-cn/about.zh-cn.md index 75c33965..1289082b 100644 --- a/docs/zh-cn/about.zh-cn.md +++ b/docs/zh-cn/about.zh-cn.md @@ -9,9 +9,7 @@ permalink: /zh-cn/about/ # 关于OpenNHP开源项目 {: .fs-9 } -[English Version](/about/){: .label .fs-4 } - - +[English](/about/){: .label .fs-4 } --- diff --git a/docs/zh-cn/build.zh-cn.md b/docs/zh-cn/build.zh-cn.md index a627d468..4a94a74a 100644 --- a/docs/zh-cn/build.zh-cn.md +++ b/docs/zh-cn/build.zh-cn.md @@ -9,7 +9,7 @@ permalink: /zh-cn/build/ # 编译OpenNHP {: .fs-9 } -[English Version](/build/){: .label .fs-4 } +[English](/build/){: .label .fs-4 } --- diff --git a/docs/zh-cn/code.zh-cn.md b/docs/zh-cn/code.zh-cn.md index 38328f25..533edf6a 100644 --- a/docs/zh-cn/code.zh-cn.md +++ b/docs/zh-cn/code.zh-cn.md @@ -9,7 +9,7 @@ permalink: /zh-cn/code/ # OpeNHP代码解读 {: .fs-9 } -[English Version](/code/){: .label .fs-4 } +[English](/code/){: .label .fs-4 } --- diff --git a/docs/zh-cn/comparison.zh-cn.md b/docs/zh-cn/comparison.zh-cn.md index 640f7e52..27d5cd03 100644 --- a/docs/zh-cn/comparison.zh-cn.md +++ b/docs/zh-cn/comparison.zh-cn.md @@ -9,10 +9,10 @@ permalink: /zh-cn/comparison/ # 对比NHP与SPA {: .fs-9 } -[English Version](/comparison/){: .label .fs-4 } - 注: 以下内容摘自《Applied Sciences》杂志2024年第14卷第13期的期刊论文《AHAC: Advanced Network-Hiding Access Control Framework》论文,值得特别指出的是,AHAC框架是NHP(OpenNHP)技术体系中的一个关键组成部分。 +[English](/comparison/){: .label .fs-4 } + --- - [NHP与SPA的对比](#nhp与spa的对比) diff --git a/docs/zh-cn/cryptography.zh-cn.md b/docs/zh-cn/cryptography.zh-cn.md index 8dbbccea..a4131416 100644 --- a/docs/zh-cn/cryptography.zh-cn.md +++ b/docs/zh-cn/cryptography.zh-cn.md @@ -9,11 +9,11 @@ permalink: /zh-cn/cryptography/ # 加密算法 {: .fs-9 } -[English Version](/cryptography/){: .label .fs-4 } - 加密是 OpenNHP 的核心,通过利用尖端的加密算法提供强大的安全性、卓越的性能和可扩展性。 {: .fs-6 .fw-300 } +[English](/cryptography/){: .label .fs-4 } + --- 本文解释了 OpenNHP 如何在多个关键领域中利用现代加密算法的优势: diff --git a/docs/zh-cn/deploy.zh-cn.md b/docs/zh-cn/deploy.zh-cn.md index 9ff32f4f..b0118f78 100644 --- a/docs/zh-cn/deploy.zh-cn.md +++ b/docs/zh-cn/deploy.zh-cn.md @@ -9,7 +9,7 @@ permalink: /zh-cn/deploy/ # 部署OpenNHP {: .fs-9 } -[English Version](/deploy/){: .label .fs-4 } +[English](/deploy/){: .label .fs-4 } --- diff --git a/docs/zh-cn/features.zh-cn.md b/docs/zh-cn/features.zh-cn.md index 058be859..6efe0883 100644 --- a/docs/zh-cn/features.zh-cn.md +++ b/docs/zh-cn/features.zh-cn.md @@ -9,8 +9,7 @@ permalink: /zh-cn/features/ # OpenNHP功能列表 {: .fs-9 } -[English Version](/features/){: .label .fs-4 } - +[English](/features/){: .label .fs-4 } --- diff --git a/docs/zh-cn/index.zh-cn.md b/docs/zh-cn/index.zh-cn.md index 97f06c1e..6a161313 100644 --- a/docs/zh-cn/index.zh-cn.md +++ b/docs/zh-cn/index.zh-cn.md @@ -9,6 +9,7 @@ permalink: /zh-cn/ # OpenNHP中文版文档 {: .fs-9 } -[English Version](/){: .label .fs-4 } + +[English](/){: .label .fs-4 } --- diff --git a/docs/zh-cn/server_plugin.zh-cn.md b/docs/zh-cn/server_plugin.zh-cn.md index d00ad5f4..f407e69b 100644 --- a/docs/zh-cn/server_plugin.zh-cn.md +++ b/docs/zh-cn/server_plugin.zh-cn.md @@ -9,7 +9,7 @@ permalink: /zh-cn/server_plugin/ # OpenNHP插件开发教程 {: .fs-9 } -[English Version](/server_plugin/){: .label .fs-4 } +[English](/server_plugin/){: .label .fs-4 } --- From 81db27c996bd9fa028457d70c6733d142c317244 Mon Sep 17 00:00:00 2001 From: WinGeek Date: Wed, 16 Oct 2024 12:39:42 -0700 Subject: [PATCH 34/41] Update the links of documents --- README.md | 1 + docs/zh-cn/cryptography.zh-cn.md | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 7677049e..7a4ce8b8 100644 --- a/README.md +++ b/README.md @@ -129,6 +129,7 @@ Cryptography is at the heart of OpenNHP, providing robust security, excellent pe > CL-PKC is a scheme that enhances security by avoiding key escrow and addressing the limitations of Identity-Based Cryptography (IBC). In most IBC systems, a user's private key is generated by a Key Generation Center (KGC), which introduces significant risks. A compromised KGC can lead to the exposure of all users' private keys, requiring full trust in the KGC. CL-PKC mitigates this issue by splitting the key generation process, so the KGC only has knowledge of a partial private key. As a result, CL-PKC combines the strengths of both PKI and IBC, offering stronger security without the drawbacks of centralized key management. +> Please refer to the [OpenNHP Documentation](https://opennhp.org/cryptography/) for detailed explanation of cryptographic algorithms used in OpenNHP. ## Key Features diff --git a/docs/zh-cn/cryptography.zh-cn.md b/docs/zh-cn/cryptography.zh-cn.md index a4131416..6acd429b 100644 --- a/docs/zh-cn/cryptography.zh-cn.md +++ b/docs/zh-cn/cryptography.zh-cn.md @@ -18,9 +18,9 @@ permalink: /zh-cn/cryptography/ 本文解释了 OpenNHP 如何在多个关键领域中利用现代加密算法的优势: -1. [公私钥加密算法](#1-public-key-cryptography) -2. [密钥交换、数据加密和身份认证](#2-key-exchange-data-encryption-and-identity-verification) -3. [密钥分发和管理](#3-key-distribution-and-management) +1. [公私钥加密算法](#1-%E5%85%AC%E7%A7%81%E9%92%A5%E5%8A%A0%E5%AF%86%E7%AE%97%E6%B3%95) +2. [密钥交换、数据加密和身份认证](#2%E5%AF%86%E9%92%A5%E4%BA%A4%E6%8D%A2%E6%95%B0%E6%8D%AE%E5%8A%A0%E5%AF%86%E5%92%8C%E8%BA%AB%E4%BB%BD%E8%AE%A4%E8%AF%81) +3. [密钥分发和管理](#3-%E5%AF%86%E9%92%A5%E7%AE%A1%E7%90%86%E4%B8%8E%E5%88%86%E5%8F%91) ## 1) 公私钥加密算法 From 71192eb820cdb4d20fd2dea1eae7c4a29ceab307 Mon Sep 17 00:00:00 2001 From: WinGeek Date: Wed, 16 Oct 2024 13:19:52 -0700 Subject: [PATCH 35/41] Update the document --- docs/about.md | 3 +++ docs/build.md | 3 ++- docs/code.md | 2 ++ docs/deploy.md | 3 +++ docs/features.md | 3 +++ docs/index.md | 2 +- 6 files changed, 14 insertions(+), 2 deletions(-) diff --git a/docs/about.md b/docs/about.md index d5a3fb3e..32afb01f 100644 --- a/docs/about.md +++ b/docs/about.md @@ -8,6 +8,9 @@ permalink: /about/ # About OpenNHP Project {: .fs-9 } +OpenNHP is developed by a global community of passionate modern security enthusiasts. +{: .fs-6 .fw-300 } + [中文版](/zh-cn/about/){: .label .fs-4 } --- diff --git a/docs/build.md b/docs/build.md index c1a7a202..c12b2ed6 100644 --- a/docs/build.md +++ b/docs/build.md @@ -8,7 +8,8 @@ permalink: /build/ # Build OpenNHP Source Code {: .fs-9 } -This article explains how to build OpenNHP from source code. +This article explains how to build OpenNHP from source code. +{: .fs-6 .fw-300 } [中文版](/zh-cn/build/){: .label .fs-4 } --- diff --git a/docs/code.md b/docs/code.md index 54a6c06e..b91a35d0 100644 --- a/docs/code.md +++ b/docs/code.md @@ -8,6 +8,8 @@ permalink: /code/ # Understand the Source Code {: .fs-9 } +This article explains how to read the source code of OpenNHP. +{: .fs-6 .fw-300 } [中文版](/zh-cn/code/){: .label .fs-4 } diff --git a/docs/deploy.md b/docs/deploy.md index b9c12e4d..aaccdd5a 100644 --- a/docs/deploy.md +++ b/docs/deploy.md @@ -8,6 +8,9 @@ permalink: /deploy/ # Deploy OpenNHP Binaries {: .fs-9 } +OpenNHP is cross-platform software that is easy to deploy. +{: .fs-6 .fw-300 } + [中文版](/zh-cn/deploy/){: .label .fs-4 } --- diff --git a/docs/features.md b/docs/features.md index d9d96e5e..7bf3dcfd 100644 --- a/docs/features.md +++ b/docs/features.md @@ -8,6 +8,9 @@ permalink: /features/ # OpenNHP Feature List {: .fs-9 } +OpenNHP offers robust security, excellent performance, and scalability to protect your network resources. +{: .fs-6 .fw-300 } + [中文版](/zh-cn/features/){: .label .fs-4 } --- diff --git a/docs/index.md b/docs/index.md index adb41a71..9472e755 100644 --- a/docs/index.md +++ b/docs/index.md @@ -9,7 +9,7 @@ permalink: / # OpenNHP Documentation {: .fs-9 } - OpenNHP implements the Zero Trust communication protocol NHP. +A lightweight cryptography-driven zero trust networking protocol at the OSI 5th layer to hide your server and data from attackers. {: .fs-6 .fw-300 } [中文版](/zh-cn/){: .label .fs-4 } From 0023dc6bb1982e5437a2daebd6ded89e9281577c Mon Sep 17 00:00:00 2001 From: WinGeek Date: Wed, 16 Oct 2024 13:25:32 -0700 Subject: [PATCH 36/41] formatting the documents --- README.md | 2 ++ docs/build.md | 1 + docs/zh-cn/overview.zh-cn.md | 2 +- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 7a4ce8b8..8c5dc14a 100644 --- a/README.md +++ b/README.md @@ -129,6 +129,8 @@ Cryptography is at the heart of OpenNHP, providing robust security, excellent pe > CL-PKC is a scheme that enhances security by avoiding key escrow and addressing the limitations of Identity-Based Cryptography (IBC). In most IBC systems, a user's private key is generated by a Key Generation Center (KGC), which introduces significant risks. A compromised KGC can lead to the exposure of all users' private keys, requiring full trust in the KGC. CL-PKC mitigates this issue by splitting the key generation process, so the KGC only has knowledge of a partial private key. As a result, CL-PKC combines the strengths of both PKI and IBC, offering stronger security without the drawbacks of centralized key management. +Further reading: + > Please refer to the [OpenNHP Documentation](https://opennhp.org/cryptography/) for detailed explanation of cryptographic algorithms used in OpenNHP. ## Key Features diff --git a/docs/build.md b/docs/build.md index c12b2ed6..1ee9d0c8 100644 --- a/docs/build.md +++ b/docs/build.md @@ -12,6 +12,7 @@ This article explains how to build OpenNHP from source code. {: .fs-6 .fw-300 } [中文版](/zh-cn/build/){: .label .fs-4 } + --- ## 1. WSL Environment Setup diff --git a/docs/zh-cn/overview.zh-cn.md b/docs/zh-cn/overview.zh-cn.md index 4c1c31ae..12d0b2b8 100644 --- a/docs/zh-cn/overview.zh-cn.md +++ b/docs/zh-cn/overview.zh-cn.md @@ -10,7 +10,7 @@ permalink: /zh-cn/overview/ # OpenNHP:零信任网络隐身协议 {: .fs-9 } -[English Version](/){: .label .fs-4 } +[English](/){: .label .fs-4 } --- From f3b252e3dac470ad389e4f85192e9c880b5c18c2 Mon Sep 17 00:00:00 2001 From: WinGeek Date: Wed, 16 Oct 2024 23:11:48 -0700 Subject: [PATCH 37/41] Add README translations for a few languages --- README.de.md | 213 +++++++++++++++++++++++++++ README.es.md | 213 +++++++++++++++++++++++++++ README.fr.md | 213 +++++++++++++++++++++++++++ README.ja.md | 148 +++++++++++++++++++ README.md | 8 +- README.zh-cn.md | 374 +++++++++++++++++++++++++++--------------------- 6 files changed, 1004 insertions(+), 165 deletions(-) diff --git a/README.de.md b/README.de.md index e69de29b..54369bf3 100644 --- a/README.de.md +++ b/README.de.md @@ -0,0 +1,213 @@ +[![en](https://img.shields.io/badge/lang-en-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.md) +[![zh-cn](https://img.shields.io/badge/lang-zh--cn-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.zh-cn.md) +[![de](https://img.shields.io/badge/lang-de-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.de.md) +[![ja](https://img.shields.io/badge/lang-ja-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.ja.md) +[![fr](https://img.shields.io/badge/lang-fr-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.fr.md) +[![es](https://img.shields.io/badge/lang-es-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.es.md) + +![OpenNHP Logo](docs/images/logo11.png) +# OpenNHP: Zero Trust Netzwerk-Infrastruktur-Verbergungsprotokoll +Ein leichtgewichtiges, kryptographisch getriebenes Zero Trust Netzwerkprotokoll auf der OSI-Schicht 5, um Ihren Server und Ihre Daten vor Angreifern zu verbergen. + +![Build Status](https://img.shields.io/badge/build-passing-brightgreen) +![Version](https://img.shields.io/badge/version-1.0.0-blue) +![Lizenz](https://img.shields.io/badge/license-Apache%202.0-green) + +--- + +## Herausforderung: KI verwandelt das Internet in einen "Dunklen Wald" + +Der schnelle Fortschritt der **KI**-Technologien, insbesondere großer Sprachmodelle (LLMs), verändert die Cybersicherheitslandschaft erheblich. Das Aufkommen der **autonomen Ausnutzung von Schwachstellen (AVE)** stellt einen großen Fortschritt im KI-Zeitalter dar, indem es die Ausnutzung von Schwachstellen automatisiert, wie in [diesem Forschungspapier](https://arxiv.org/abs/2404.08144) gezeigt wird. Diese Entwicklung erhöht das Risiko für alle exponierten Netzwerkdienste erheblich und erinnert an die [Dunkle Wald-Hypothese](https://de.wikipedia.org/wiki/Dunkler_Wald) des Internets. KI-gesteuerte Tools scannen kontinuierlich die digitale Umgebung, identifizieren schnell Schwachstellen und nutzen sie aus. Folglich entwickelt sich das Internet zu einem **"dunklen Wald"**, in dem **Sichtbarkeit Verwundbarkeit bedeutet**. + +![Verwundbarkeitsrisiken](docs/images/Vul_Risks.png) + +Gartner prognostiziert einen [schnellen Anstieg von KI-gesteuerten Cyberangriffen](https://www.gartner.com/en/newsroom/press-releases/2024-08-28-gartner-forecasts-global-information-security-spending-to-grow-15-percent-in-2025). Dieser Wandel erfordert eine Neubewertung traditioneller Cybersicherheitsstrategien mit einem Fokus auf proaktive Verteidigungsmaßnahmen, schnelle Reaktionsmechanismen und die Einführung von Netzwerkverbergungstechnologien zum Schutz kritischer Infrastrukturen. + +--- + +## Schnelle Demo: OpenNHP in Aktion sehen + +Bevor wir in die Details von OpenNHP eintauchen, beginnen wir mit einer kurzen Demonstration, wie OpenNHP einen Server vor unbefugtem Zugriff schützt. Sie können dies in Aktion sehen, indem Sie den geschützten Server unter https://acdemo.opennhp.org aufrufen. + +### 1) Der geschützte Server ist für nicht authentifizierte Benutzer "unsichtbar" + +Standardmäßig führt jeder Versuch, eine Verbindung zum geschützten Server herzustellen, zu einem TIME OUT-Fehler, da alle Ports geschlossen sind, wodurch der Server *"unsichtbar"* und scheinbar offline wird. + +![OpenNHP Demo](docs/images/OpenNHP_ACDemo0.png) + +Das Scannen der Ports des Servers führt ebenfalls zu einem TIME OUT-Fehler. + +![OpenNHP Demo](docs/images/OpenNHP_ScanDemo.png) + +### 2) Nach der Authentifizierung wird der geschützte Server zugänglich + +OpenNHP unterstützt eine Vielzahl von Authentifizierungsmethoden, wie OAuth, SAML, QR-Codes und mehr. Für diese Demonstration verwenden wir einen einfachen Benutzernamen/Passwort-Authentifizierungsdienst unter https://demologin.opennhp.org. + +![OpenNHP Demo](docs/images/OpenNHP_DemoLogin.png) + +Sobald Sie auf die Schaltfläche "Login" klicken, ist die Authentifizierung erfolgreich und Sie werden zum geschützten Server weitergeleitet. Zu diesem Zeitpunkt wird der Server *"sichtbar"* und auf Ihrem Gerät zugänglich. + +![OpenNHP Demo](docs/images/OpenNHP_ACDemo1.png) + +--- + +## Vision: Das Internet vertrauenswürdig machen + +Die Offenheit der TCP/IP-Protokolle hat das explosive Wachstum von Internetanwendungen vorangetrieben, aber auch Schwachstellen offengelegt, die es böswilligen Akteuren ermöglichen, unbefugten Zugriff zu erhalten und jede exponierte IP-Adresse auszunutzen. Obwohl das [OSI-Netzwerkmodell](https://de.wikipedia.org/wiki/OSI-Modell) die *5. Schicht (Sitzungsschicht)* zur Verwaltung von Verbindungen definiert, wurden bisher nur wenige effektive Lösungen hierfür implementiert. + +**NHP**, oder das **"Netzwerk-Infrastruktur-Verbergungsprotokoll"**, ist ein leichtgewichtiges, kryptographisch getriebenes Zero Trust Netzwerkprotokoll, das auf der *OSI-Sitzungsschicht* arbeitet und sich ideal zur Verwaltung der Netzwerkvisibilität und Verbindungen eignet. Das Hauptziel von NHP ist es, geschützte Ressourcen vor unbefugten Entitäten zu verbergen und den Zugriff nur verifizierten, autorisierten Benutzern durch kontinuierliche Überprüfung zu gewähren, um so zu einem vertrauenswürdigeren Internet beizutragen. + +![Vertrauenswürdiges Internet](docs/images/TrustworthyCyberspace.png) + +--- + +## Lösung: OpenNHP stellt die Kontrolle über die Netzwerkvisibilität wieder her + +**OpenNHP** ist die Open-Source-Implementierung des NHP-Protokolls. Es basiert auf der Kryptographie und wurde mit Sicherheitsprinzipien im Vordergrund entwickelt, um eine echte Zero Trust-Architektur auf der *OSI-Sitzungsschicht* zu implementieren. + +![OpenNHP als OSI 5. Schicht](docs/images/OSI_OpenNHP.png) + +OpenNHP baut auf früheren Forschungen zur Netzwerkverbergungstechnologie auf und nutzt moderne kryptographische Rahmenwerke und Architektur, um Sicherheit und hohe Leistung zu gewährleisten und die Einschränkungen früherer Technologien zu überwinden. + +| Netzwerk-Infrastruktur-Verbergungsprotokoll | 1. Generation | 2. Generation | 3. Generation | +|:---|:---|:---|:---| +| **Kerntechnologie** | [Port Knocking](https://de.wikipedia.org/wiki/Port_knocking) | [Single Packet Authorization (SPA)](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2) | Netzwerk-Infrastruktur-Verbergungsprotokoll (NHP) | +| **Authentifizierung** | Port-Sequenzen | Geteilte Geheimnisse | Modernes Kryptographie-Rahmenwerk | +| **Architektur** | Kein Kontrollplan | Kein Kontrollplan | Skalierbarer Kontrollplan | +| **Fähigkeit** | Ports verbergen | Ports verbergen | Ports, IPs und Domains verbergen | +| **Zugriffskontrolle** | IP-Ebene | Port-Ebene | Anwendungsebene | +| **Open-Source-Projekte** | [knock](https://github.com/jvinet/knock) *(C)* | [fwknop](https://github.com/mrash/fwknop) *(C++)* | [OpenNHP](https://github.com/OpenNHP/opennhp) *(Go)* | + +> Es ist entscheidend, eine **speichersichere** Sprache wie *Go* für die Entwicklung von OpenNHP zu wählen, wie im [technischen Bericht der US-Regierung](https://www.whitehouse.gov/wp-content/uploads/2024/02/Final-ONCD-Technical-Report.pdf) betont wird. Für einen detaillierten Vergleich zwischen **SPA und NHP** lesen Sie bitte die [Abschnitt unten](#comparison-between-spa-and-nhp). + +## Sicherheitsvorteile + +Da OpenNHP Zero Trust-Prinzipien auf der *OSI-Sitzungsschicht* implementiert, bietet es erhebliche Vorteile: + +- Reduziert die Angriffsfläche durch Verbergen der Infrastruktur +- Verhindert unbefugte Netzwerkaufklärung +- Mildert die Ausnutzung von Schwachstellen +- Verhindert Phishing durch verschlüsseltes DNS +- Schützt vor DDoS-Angriffen +- Ermöglicht granulare Zugriffskontrolle +- Bietet verbindungsbasierte Identitätsverfolgung +- Angriffszurechnung + +## Architektur + +Die Architektur von OpenNHP orientiert sich an der [NIST Zero Trust-Architektur](https://www.nist.gov/publications/zero-trust-architecture). Sie folgt einem modularen Design mit drei Hauptkomponenten: **NHP-Server**, **NHP-AC** und **NHP-Agent**, wie in der folgenden Abbildung dargestellt. + +![OpenNHP Architektur](docs/images/OpenNHP_Arch.png) + +> Weitere Informationen zur Architektur und zum Workflow finden Sie in der [OpenNHP-Dokumentation](https://opennhp.org/). + +## Kern: Kryptographische Algorithmen + +Kryptographie steht im Mittelpunkt von OpenNHP und bietet robuste Sicherheit, hervorragende Leistung und Skalierbarkeit durch den Einsatz modernster kryptographischer Algorithmen. Nachfolgend sind die wichtigsten kryptographischen Algorithmen und Frameworks aufgeführt, die von OpenNHP verwendet werden: + +- **[Elliptische Kurvenkryptographie (ECC)](https://de.wikipedia.org/wiki/Elliptische-Kurven-Kryptographie)**: Wird für effiziente asymmetrische Kryptographie verwendet. + +> Im Vergleich zu RSA bietet ECC eine höhere Effizienz mit stärkerer Verschlüsselung bei kürzeren Schlüssellängen, was sowohl die Netzwerkübertragung als auch die Rechenleistung verbessert. Die folgende Tabelle zeigt die Unterschiede in der Sicherheitsstärke, den Schlüssellängen und dem Verhältnis zwischen RSA und ECC sowie die jeweiligen Gültigkeitszeiträume. + +| Sicherheitsstärke (Bits) | DSA/RSA-Schlüssellänge (Bits) | ECC-Schlüssellänge (Bits) | Verhältnis: ECC zu DSA/RSA | Gültigkeit | +|:------------------------:|:-----------------------------:|:------------------------:|:--------------------------:|:---------:| +| 80 | 1024 | 160-223 | 1:6 | Bis 2010 | +| 112 | 2048 | 224-255 | 1:9 | Bis 2030 | +| 128 | 3072 | 256-383 | 1:12 | Nach 2031 | +| 192 | 7680 | 384-511 | 1:20 | | +| 256 | 15360 | 512+ | 1:30 | | + +- **[Noise Protocol Framework](https://noiseprotocol.org/)**: Ermöglicht sicheren Schlüsselaustausch, Nachrichtenverschlüsselung/-entschlüsselung und gegenseitige Authentifizierung. + +> Das Noise-Protokoll basiert auf dem [Diffie-Hellman-Schlüsselaustausch](https://de.wikipedia.org/wiki/Diffie-Hellman-Schl%C3%BCsselaustausch) und bietet moderne kryptographische Lösungen wie gegenseitige und optionale Authentifizierung, Identitätsverbergung, Vorwärtsgeheimnis und null Round-Trip-Verschlüsselung. Es hat sich bereits durch seine Sicherheit und Leistung bewährt und wird von beliebten Anwendungen wie [WhatsApp](https://www.whatsapp.com/security/WhatsApp-Security-Whitepaper.pdf), [Slack](https://github.com/slackhq/nebula) und [WireGuard](https://www.wireguard.com/) verwendet. + +- **[Identitätsbasierte Kryptographie (IBC)](https://de.wikipedia.org/wiki/Identit%C3%A4tsbasierte_Kryptographie)**: Vereinfacht die Schlüsselverteilung im großen Maßstab. + +> Eine effiziente Schlüsselverteilung ist entscheidend für die Umsetzung von Zero Trust. OpenNHP unterstützt sowohl PKI als auch IBC. Während PKI seit Jahrzehnten weit verbreitet ist, hängt es von zentralisierten Zertifizierungsstellen (CA) zur Identitätsprüfung und Schlüsselverwaltung ab, was zeitaufwändig und kostspielig sein kann. Im Gegensatz dazu ermöglicht IBC einen dezentralisierten und selbstverwalteten Ansatz für die Identitätsprüfung und Schlüsselverwaltung, was es kostengünstiger für die Zero Trust-Umgebung von OpenNHP macht, in der Milliarden von Geräten oder Servern in Echtzeit geschützt und eingebunden werden müssen. + +- **[Zertifikatslose Kryptographie (CL-PKC)](https://de.wikipedia.org/wiki/Zertifikatslose_Kryptographie)**: Empfohlener IBC-Algorithmus + +> CL-PKC ist ein Schema, das die Sicherheit verbessert, indem es die Schlüsselverwaltung vermeidet und die Einschränkungen der identitätsbasierten Kryptographie (IBC) angeht. In den meisten IBC-Systemen wird der private Schlüssel eines Benutzers von einer Schlüsselgenerierungsstelle (KGC) erstellt, was erhebliche Risiken birgt. Ein kompromittierter KGC kann zur Offenlegung der privaten Schlüssel aller Benutzer führen, wodurch volles Vertrauen in den KGC erforderlich ist. CL-PKC mindert dieses Problem, indem der Schlüsselerstellungsprozess aufgeteilt wird, sodass der KGC nur einen Teil des privaten Schlüssels kennt. Dadurch kombiniert CL-PKC die Stärken von PKI und IBC und bietet eine stärkere Sicherheit ohne die Nachteile der zentralisierten Schlüsselverwaltung. + +Weiterführende Informationen: + +> Weitere Details zu den in OpenNHP verwendeten kryptographischen Algorithmen finden Sie in der [OpenNHP-Dokumentation](https://opennhp.org/cryptography/). + +## Hauptfunktionen + +- Mildert die Ausnutzung von Schwachstellen, indem standardmäßig "deny-all"-Regeln angewendet werden +- Verhindert Phishing-Angriffe durch verschlüsselte DNS-Auflösung +- Schützt vor DDoS-Angriffen, indem die Infrastruktur verborgen wird +- Ermöglicht Angriffszurechnung durch identitätsbasierte Verbindungen +- Standardmäßig verweigerter Zugriff auf alle geschützten Ressourcen +- Authentifizierung basierend auf Identität und Geräten vor dem Netzwerkzugang +- Verschlüsselte DNS-Auflösung, um DNS-Hijacking zu verhindern +- Verteilte Infrastruktur zur Minderung von DDoS-Angriffen +- Skalierbare Architektur mit entkoppelten Komponenten +- Integration mit bestehenden Systemen zur Verwaltung von Identitäten und Zugriffen +- Unterstützung für verschiedene Bereitstellungsmodelle (Client-zu-Gateway, Client-zu-Server usw.) +- Kryptographisch sicher unter Verwendung moderner Algorithmen (ECC, Noise Protocol, IBC) + +

+Klicken Sie hier, um die Funktionsdetails zu erweitern + +- **Standardmäßig verweigerter Zugriff**: Alle Ressourcen sind standardmäßig verborgen und werden nur nach Authentifizierung und Autorisierung zugänglich. +- **Authentifizierung basierend auf Identität und Geräten**: Stellt sicher, dass nur bekannte Benutzer auf zugelassenen Geräten Zugriff erhalten. +- **Verschlüsselte DNS-Auflösung**: Verhindert DNS-Hijacking und damit verbundene Phishing-Angriffe. +- **DDoS-Minderung**: Das verteilte Infrastruktursystem hilft beim Schutz vor DDoS-Angriffen. +- **Skalierbare Architektur**: Entkoppelte Komponenten ermöglichen flexiblen Einsatz und Skalierung. +- **IAM-Integration**: Funktioniert mit Ihren bestehenden Systemen zur Verwaltung von Identitäten und Zugriffen. +- **Flexibler Einsatz**: Unterstützt verschiedene Modelle, einschließlich Client-zu-Gateway, Client-zu-Server und mehr. +- **Starke Kryptographie**: Nutzt moderne Algorithmen wie ECC, Noise Protocol und IBC für robuste Sicherheit. +
+ +## Bereitstellung + +OpenNHP unterstützt mehrere Bereitstellungsmodelle für unterschiedliche Anwendungsfälle: + +- Client-zu-Gateway: Sichert den Zugriff auf mehrere Server hinter einem Gateway +- Client-zu-Server: Sichert direkt einzelne Server/Anwendungen +- Server-zu-Server: Sichert die Kommunikation zwischen Backend-Diensten +- Gateway-zu-Gateway: Sichert Standort-zu-Standort-Verbindungen + +> Weitere Details zur Bereitstellung finden Sie in der [OpenNHP-Dokumentation](https://opennhp.org/deploy/). + +## Vergleich zwischen SPA und NHP +Das Single Packet Authorization (SPA)-Protokoll ist in der vom [Cloud Security Alliance (CSA)](https://cloudsecurityalliance.org/) veröffentlichten [Software Defined Perimeter (SDP)-Spezifikation](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2) enthalten. NHP verbessert die Sicherheit, Zuverlässigkeit, Skalierbarkeit und Erweiterbarkeit durch ein modernes kryptographisches Framework und eine moderne Architektur, wie im [AHAC-Forschungspapier](https://www.mdpi.com/2076-3417/14/13/5593) gezeigt. + +| - | SPA | NHP | Vorteile von NHP | +|:---|:---|:---|:---| +| **Architektur** | Das SPA-Paketentschlüsselungs- und Benutzer-/Geräteauthentifizierungskomponente ist mit der Netzwerkzugriffskontrollkomponente im SPA-Server gekoppelt. | NHP-Server (die Paketentschlüsselungs- und Benutzer-/Geräteauthentifizierungskomponente) und NHP-AC (die Zugriffskontrollkomponente) sind entkoppelt. Der NHP-Server kann auf separaten Hosts bereitgestellt werden und unterstützt horizontale Skalierung. |
  • Performance: Die ressourcenintensive Komponente NHP-Server ist vom geschützten Server getrennt.
  • Skalierbarkeit: Der NHP-Server kann im verteilten oder Cluster-Modus bereitgestellt werden.
  • Sicherheit: Die IP-Adresse des geschützten Servers ist für den Client nicht sichtbar, solange die Authentifizierung nicht erfolgreich war.
| +| **Kommunikation** | Einfache Richtung | Bidirektional | Bessere Zuverlässigkeit durch Statusbenachrichtigung der Zugriffskontrolle | +| **Kryptographisches Framework** | Geteilte Geheimnisse | PKI oder IBC, Noise Framework |
  • Sicherheit: Bewährter Schlüsselvereinbarungsmechanismus zur Abschwächung von MITM-Bedrohungen
  • Niedrige Kosten: Effiziente Schlüsselverteilung für das Zero Trust-Modell
  • Performance: Hochleistungs-Verschlüsselung/Entschlüsselung
| +| **Fähigkeit zur Verbergung der Netzwerkinfrastruktur** | Nur Serverports | Domains, IPs und Ports | Stärker gegen verschiedene Angriffe (z.B. Schwachstellen, DNS-Hijacking und DDoS-Angriffe) | +| **Erweiterbarkeit** | Keine, nur für SDP | Universell | Unterstützt jedes Szenario, das eine Dienstverschleierung erfordert | +| **Interoperabilität** | Nicht verfügbar | Anpassbar | NHP kann nahtlos mit bestehenden Protokollen (z.B. DNS, FIDO usw.) integriert werden | + +## Beitrag leisten + +Wir begrüßen Beiträge zu OpenNHP! Bitte lesen Sie unsere [Beitragsrichtlinien](CONTRIBUTING.md), um mehr darüber zu erfahren, wie Sie sich beteiligen können. + +## Lizenz + +OpenNHP wird unter der [Apache 2.0-Lizenz](LICENSE) veröffentlicht. + +## Kontakt + +- Projekt-Website: [https://github.com/OpenNHP/opennhp](https://github.com/OpenNHP/opennhp) +- E-Mail: [opennhp@gmail.com](mailto:opennhp@gmail.com) +- Slack-Kanal: [Treten Sie unserem Slack bei](https://slack.opennhp.org) + +Für eine detaillierte Dokumentation besuchen Sie bitte unsere [Offizielle Dokumentation](https://opennhp.org). + +## Referenzen + +- [Software-Defined Perimeter (SDP) Specification v2.0](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2). Jason Garbis, Juanita Koilpillai, Junaid lslam, Bob Flores, Daniel Bailey, Benfeng Chen, Eitan Bremler, Michael Roza, Ahmed Refaey Hussein. [*Cloud Security Alliance (CSA)*](https://cloudsecurityalliance.org/). März 2022. +- [AHAC: Fortschrittliches Netzwerk-Verbergung-Zugriffskontroll-Framework](https://www.mdpi.com/2076-3417/14/13/5593). Mudi Xu, Benfeng Chen, Zhizhong Tan, Shan Chen, Lei Wang, Yan Liu, Tai Io San, Sou Wang Fong, Wenyong Wang und Jing Feng. *Zeitschrift für Angewandte Wissenschaften*. Juni 2024. +- Noise Protocol Framework. https://noiseprotocol.org/ +- Vulnerability Management Framework-Projekt. https://phoenix.security/web-vuln-management/ + +--- + +🌟 Vielen Dank für Ihr Interesse an OpenNHP! Wir freuen uns auf Ihre Beiträge und Ihr Feedback. + diff --git a/README.es.md b/README.es.md index e69de29b..68fd9f45 100644 --- a/README.es.md +++ b/README.es.md @@ -0,0 +1,213 @@ +[![en](https://img.shields.io/badge/lang-en-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.md) +[![zh-cn](https://img.shields.io/badge/lang-zh--cn-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.zh-cn.md) +[![de](https://img.shields.io/badge/lang-de-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.de.md) +[![ja](https://img.shields.io/badge/lang-ja-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.ja.md) +[![fr](https://img.shields.io/badge/lang-fr-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.fr.md) +[![es](https://img.shields.io/badge/lang-es-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.es.md) + +![Logo OpenNHP](docs/images/logo11.png) +# OpenNHP: Protocolo de Ocultación de Infraestructura de Red Zero Trust +Un protocolo de red de confianza cero impulsado por criptografía en la capa 5 del modelo OSI para ocultar su servidor y sus datos de los atacantes. + +![Estado de Construcción](https://img.shields.io/badge/build-passing-brightgreen) +![Versión](https://img.shields.io/badge/version-1.0.0-blue) +![Licencia](https://img.shields.io/badge/license-Apache%202.0-green) + +--- + +## Desafío: La IA transforma Internet en un "Bosque Oscuro" + +El rápido avance de las tecnologías de **IA**, especialmente los grandes modelos de lenguaje (LLM), está transformando significativamente el panorama de la ciberseguridad. El surgimiento de la **Explotación Autónoma de Vulnerabilidades (AVE)** representa un gran avance en la era de la IA, al automatizar la explotación de vulnerabilidades, como se muestra en [este artículo de investigación](https://arxiv.org/abs/2404.08144). Este desarrollo aumenta significativamente el riesgo para todos los servicios de red expuestos, evocando la [Hipótesis del Bosque Oscuro](https://es.wikipedia.org/wiki/Hip%C3%B3tesis_del_bosque_oscuro) en Internet. Las herramientas impulsadas por IA escanean continuamente el entorno digital, identifican rápidamente las debilidades y las explotan. Como resultado, Internet está evolucionando hacia un **"bosque oscuro"** donde **la visibilidad equivale a vulnerabilidad**. + +![Riesgos de Vulnerabilidad](docs/images/Vul_Risks.png) + +La investigación de Gartner pronostica un [rápido aumento de los ciberataques impulsados por IA](https://www.gartner.com/en/newsroom/press-releases/2024-08-28-gartner-forecasts-global-information-security-spending-to-grow-15-percent-in-2025). Este cambio de paradigma requiere una reevaluación de las estrategias tradicionales de ciberseguridad, con un enfoque en defensas proactivas, mecanismos de respuesta rápida y la adopción de tecnologías de ocultación de red para proteger la infraestructura crítica. + +--- + +## Demostración rápida: Ver OpenNHP en acción + +Antes de profundizar en los detalles de OpenNHP, comencemos con una breve demostración de cómo OpenNHP protege un servidor del acceso no autorizado. Puede verlo en acción accediendo al servidor protegido en https://acdemo.opennhp.org. + +### 1) El servidor protegido es "invisible" para los usuarios no autenticados + +Por defecto, cualquier intento de conectar con el servidor protegido resultará en un error TIME OUT, ya que todos los puertos están cerrados, haciendo que el servidor parezca *"invisible"* y efectivamente fuera de línea. + +![Demostración de OpenNHP](docs/images/OpenNHP_ACDemo0.png) + +El escaneo de puertos del servidor también devolverá un error TIME OUT. + +![Demostración de OpenNHP](docs/images/OpenNHP_ScanDemo.png) + +### 2) Después de la autenticación, el servidor protegido se vuelve accesible + +OpenNHP admite una variedad de métodos de autenticación, como OAuth, SAML, códigos QR, y más. Para esta demostración, utilizamos un servicio de autenticación básica de nombre de usuario/contraseña en https://demologin.opennhp.org. + +![Demostración de OpenNHP](docs/images/OpenNHP_DemoLogin.png) + +Una vez que haga clic en el botón "Login", la autenticación se completará con éxito y será redirigido al servidor protegido. En ese momento, el servidor se vuelve *"visible"* y accesible en su dispositivo. + +![Demostración de OpenNHP](docs/images/OpenNHP_ACDemo1.png) + +--- + +## Visín: Hacer de Internet un lugar confiable + +La apertura de los protocolos TCP/IP ha impulsado el crecimiento explosivo de las aplicaciones de Internet, pero también ha expuesto vulnerabilidades, permitiendo que actores malintencionados obtengan acceso no autorizado y exploten cualquier dirección IP expuesta. Aunque el [modelo de red OSI](https://es.wikipedia.org/wiki/Modelo_OSI) define la *capa 5 (capa de sesión)* para la gestión de conexiones, pocas soluciones efectivas se han implementado para abordar este problema. + +**NHP**, o el **"Protocolo de Ocultación de la Infraestructura de Red"**, es un protocolo de red ligero y basado en criptografía Zero Trust, diseñado para funcionar en la *capa de sesión OSI*, óptimo para gestionar la visibilidad y las conexiones de la red. El objetivo principal de NHP es ocultar los recursos protegidos de entidades no autorizadas, otorgando acceso solo a los usuarios verificados y autorizados mediante una verificación continua, contribuyendo así a un Internet más confiable. + +![Internet confiable](docs/images/TrustworthyCyberspace.png) + +--- + +## Solución: OpenNHP restablece el control de la visibilidad de la red + +**OpenNHP** es la implementación de código abierto del protocolo NHP. Está impulsado por criptografía y diseñado con principios de seguridad en primer lugar, implementando una verdadera arquitectura de confianza cero en la *capa de sesión OSI*. + +![OpenNHP como la capa 5 del OSI](docs/images/OSI_OpenNHP.png) + +OpenNHP se basa en investigaciones anteriores sobre tecnología de ocultación de redes, utilizando un marco criptográfico moderno y una arquitectura que garantiza seguridad y alto rendimiento, superando las limitaciones de tecnologías anteriores. + +| Protocolo de Ocultación de Infraestructura de Red | 1ª Generación | 2ª Generación | 3ª Generación | +|:---|:---|:---|:---| +| **Tecnología Clave** | [Port Knocking](https://es.wikipedia.org/wiki/Port_knocking) | [Single Packet Authorization (SPA)](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2) | Protocolo de Ocultación de Infraestructura de Red (NHP) | +| **Autenticación** | Secuencias de puertos | Secretos compartidos | Marco Criptográfico Moderno | +| **Arquitectura** | Sin plano de control | Sin plano de control | Plano de control escalable | +| **Capacidad** | Ocultar puertos | Ocultar puertos | Ocultar puertos, IPs y dominios | +| **Control de Acceso** | Nivel IP | Nivel de Puertos | Nivel de Aplicación | +| **Proyectos de Código Abierto** | [knock](https://github.com/jvinet/knock) *(C)* | [fwknop](https://github.com/mrash/fwknop) *(C++)* | [OpenNHP](https://github.com/OpenNHP/opennhp) *(Go)* | + +> Es crucial elegir un lenguaje **seguro para la memoria** como *Go* para el desarrollo de OpenNHP, como se destaca en el [informe técnico del gobierno de los EE.UU.](https://www.whitehouse.gov/wp-content/uploads/2024/02/Final-ONCD-Technical-Report.pdf). Para una comparación detallada entre **SPA y NHP**, consulte la [sección a continuación](#comparison-between-spa-and-nhp). + +## Beneficios de Seguridad + +Dado que OpenNHP implementa los principios de confianza cero en la *capa de sesión OSI*, ofrece beneficios significativos: + +- Reduce la superficie de ataque ocultando la infraestructura +- Evita el reconocimiento no autorizado de la red +- Mitiga la explotación de vulnerabilidades +- Previene ataques de phishing mediante DNS cifrado +- Protege contra ataques DDoS +- Permite el control de acceso granular +- Proporciona seguimiento de conexiones basado en identidad +- Atribución de ataques + +## Arquitectura + +La arquitectura de OpenNHP se inspira en el [estándar de Arquitectura de Confianza Cero del NIST](https://www.nist.gov/publications/zero-trust-architecture). Sigue un diseño modular con los tres componentes principales: **NHP-Server**, **NHP-AC** y **NHP-Agent**, como se ilustra en el siguiente diagrama. + +![Arquitectura de OpenNHP](docs/images/OpenNHP_Arch.png) + +> Consulte la [documentación de OpenNHP](https://opennhp.org/) para obtener información detallada sobre la arquitectura y el flujo de trabajo. + +## Centro: Algoritmos Criptográficos + +La criptografía es el centro de OpenNHP, proporcionando seguridad robusta, un excelente rendimiento y escalabilidad mediante el uso de algoritmos criptográficos de vanguardia. A continuación se muestran los principales algoritmos y marcos criptográficos utilizados por OpenNHP: + +- **[Criptografía de Curva Elíptica (ECC)](https://es.wikipedia.org/wiki/Criptograf%C3%ADa_de_curva_el%C3%ADptica)**: Utilizada para criptografía asimétrica eficiente. + +> En comparación con RSA, ECC ofrece una mayor eficiencia con una encriptación más fuerte en longitudes de clave más cortas, mejorando tanto la transmisión en la red como el rendimiento computacional. La tabla a continuación muestra las diferencias en la fortaleza de la seguridad, las longitudes de clave y la proporción de longitud de clave entre RSA y ECC, junto con sus respectivos períodos de validez. + +| Fortaleza de Seguridad (bits) | Longitud de Clave DSA/RSA (bits) | Longitud de Clave ECC (bits) | Relación: ECC vs. DSA/RSA | Validez | +|:----------------------------:|:-------------------------------:|:---------------------------:|:--------------------------:|:-------:| +| 80 | 1024 | 160-223 | 1:6 | Hasta 2010 | +| 112 | 2048 | 224-255 | 1:9 | Hasta 2030 | +| 128 | 3072 | 256-383 | 1:12 | Después de 2031 | +| 192 | 7680 | 384-511 | 1:20 | | +| 256 | 15360 | 512+ | 1:30 | | + +- **[Marco de Protocolo Noise](https://noiseprotocol.org/)**: Permite el intercambio seguro de claves, el cifrado/descifrado de mensajes y la autenticación mutua. + +> El Protocolo Noise se basa en el [acuerdo de clave Diffie-Hellman](https://es.wikipedia.org/wiki/Intercambio_de_claves_Diffie-Hellman) y proporciona soluciones criptográficas modernas como la autenticación mutua y opcional, el ocultamiento de identidad, la confidencialidad directa y el cifrado de ida y vuelta. Probado por su seguridad y rendimiento, ya es utilizado por aplicaciones populares como [WhatsApp](https://www.whatsapp.com/security/WhatsApp-Security-Whitepaper.pdf), [Slack](https://github.com/slackhq/nebula) y [WireGuard](https://www.wireguard.com/). + +- **[Criptografía Basada en Identidad (IBC)](https://es.wikipedia.org/wiki/Criptograf%C3%ADa_basada_en_la_identidad)**: Simplifica la distribución de claves a escala. + +> Una distribución eficiente de claves es esencial para implementar Zero Trust. OpenNHP admite tanto PKI como IBC. Mientras que PKI se ha utilizado ampliamente durante décadas, depende de Autoridades Certificadoras (CA) centralizadas para la verificación de identidad y la gestión de claves, lo que puede ser costoso y llevar tiempo. En contraste, IBC permite un enfoque descentralizado y autogestionado para la verificación de identidad y la gestión de claves, haciéndolo más rentable para el entorno Zero Trust de OpenNHP, donde miles de millones de dispositivos o servidores pueden necesitar protección e integración en tiempo real. + +- **[Criptografía sin Certificados (CL-PKC)](https://es.wikipedia.org/wiki/Criptograf%C3%ADa_sin_certificado)**: Algoritmo IBC recomendado + +> CL-PKC es un esquema que mejora la seguridad al evitar la custodia de claves y abordar las limitaciones de la Criptografía Basada en Identidad (IBC). En la mayoría de los sistemas IBC, la clave privada de un usuario es generada por un Centro de Generación de Claves (KGC), lo cual conlleva riesgos significativos. Un KGC comprometido puede llevar a la exposición de todas las claves privadas de los usuarios, requiriendo plena confianza en el KGC. CL-PKC mitiga este problema dividiendo el proceso de generación de claves, de modo que el KGC solo tiene conocimiento de una clave privada parcial. Como resultado, CL-PKC combina las fortalezas de PKI e IBC, ofreciendo una mayor seguridad sin los inconvenientes de la gestión centralizada de claves. + +Lectura adicional: + +> Consulte la [documentación de OpenNHP](https://opennhp.org/cryptography/) para una explicación detallada de los algoritmos criptográficos utilizados en OpenNHP. + +## Características Clave + +- Mitiga la explotación de vulnerabilidades mediante la aplicación de reglas "denegar todo" por defecto +- Previene ataques de phishing mediante la resolución DNS cifrada +- Protege contra ataques DDoS ocultando la infraestructura +- Permite la atribución de ataques mediante conexiones basadas en identidad +- Control de acceso predeterminado para todos los recursos protegidos +- Autenticación basada en identidad y dispositivos antes del acceso a la red +- Resolución DNS cifrada para prevenir secuestro de DNS +- Infraestructura distribuida para mitigar ataques DDoS +- Arquitectura escalable con componentes desacoplados +- Integración con sistemas de gestión de identidades y accesos existentes +- Compatible con varios modelos de despliegue (cliente a puerta de enlace, cliente a servidor, etc.) +- Seguridad criptográfica con algoritmos modernos (ECC, Noise Protocol, IBC) + +
+Haga clic para expandir los detalles de las características + +- **Control de acceso predeterminado**: Todos los recursos están ocultos por defecto, solo siendo accesibles tras la autenticación y autorización. +- **Autenticación basada en identidad y dispositivos**: Garantiza que solo los usuarios conocidos en dispositivos aprobados puedan acceder. +- **Resolución DNS cifrada**: Evita el secuestro de DNS y los ataques de phishing asociados. +- **Mitigación de DDoS**: El diseño de infraestructura distribuida ayuda a proteger contra los ataques de denegación de servicio distribuidos. +- **Arquitectura escalable**: Los componentes desacoplados permiten un despliegue y escalado flexibles. +- **Integración IAM**: Funciona con sus sistemas de gestión de identidades y accesos existentes. +- **Despliegue flexible**: Compatible con varios modelos, incluido cliente a puerta de enlace, cliente a servidor y más. +- **Criptografía robusta**: Utiliza algoritmos modernos como ECC, Noise Protocol e IBC para una seguridad robusta. +
+ +## Despliegue + +OpenNHP admite varios modelos de despliegue para adaptarse a diferentes casos de uso: + +- Cliente a puerta de enlace: Asegura el acceso a varios servidores detrás de una puerta de enlace +- Cliente a servidor: Asegura directamente servidores/aplicaciones individuales +- Servidor a servidor: Asegura la comunicación entre servicios backend +- Puerta de enlace a puerta de enlace: Asegura conexiones entre sitios + +> Consulte la [documentación de OpenNHP](https://opennhp.org/deploy/) para obtener instrucciones detalladas de despliegue. + +## Comparación entre SPA y NHP +El protocolo Single Packet Authorization (SPA) está incluido en la [especificación del Perímetro Definido por Software (SDP)](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2) publicada por la [Cloud Security Alliance (CSA)](https://cloudsecurityalliance.org/). NHP mejora la seguridad, la fiabilidad, la escalabilidad y la extensibilidad mediante un marco criptográfico moderno y una arquitectura moderna, como se demuestra en el [artículo de investigación AHAC](https://www.mdpi.com/2076-3417/14/13/5593). + +| - | SPA | NHP | Ventajas de NHP | +|:---|:---|:---|:---| +| **Arquitectura** | El componente de descifrado de paquetes SPA y autenticación de usuario/dispositivo está acoplado con el componente de control de acceso a la red en el servidor SPA. | NHP-Server (el componente de descifrado de paquetes y autenticación de usuario/dispositivo) y NHP-AC (el componente de control de acceso) están desacoplados. NHP-Server se puede desplegar en hosts separados y admite la escalabilidad horizontal. |
  • Rendimiento: el componente que consume muchos recursos, NHP-server, está separado del servidor protegido.
  • Escalabilidad: NHP-server se puede desplegar en modo distribuido o clúster.
  • Seguridad: la dirección IP del servidor protegido no es visible para el cliente a menos que la autenticación sea exitosa.
| +| **Comunicación** | Dirección única | Bidireccional | Mejor fiabilidad con la notificación de estado del control de acceso | +| **Marco criptográfico** | Secretos compartidos | PKI o IBC, Marco Noise |
  • Seguridad: mecanismo comprobado de intercambio de claves para mitigar las amenazas MITM
  • Bajo costo: distribución de claves eficiente para el modelo de confianza cero
  • Rendimiento: cifrado/descifrado de alto rendimiento
| +| **Capacidad de Ocultación de Infraestructura de Red** | Solo puertos de servidor | Dominios, IPs y puertos | Más poderoso contra varios ataques (p. ej., vulnerabilidades, secuestro de DNS y ataques DDoS) | +| **Extensibilidad** | Ninguna, solo para SDP | Todo uso | Compatible con cualquier escenario que necesite oscurecimiento del servicio | +| **Interoperabilidad** | No disponible | Personalizable | NHP puede integrarse sin problemas con protocolos existentes (p. ej., DNS, FIDO, etc.) | + +## Contribuir + +¡Damos la bienvenida a las contribuciones a OpenNHP! Consulte nuestras [Directrices de Contribución](CONTRIBUTING.md) para obtener más información sobre cómo participar. + +## Licencia + +OpenNHP se publica bajo la [Licencia Apache 2.0](LICENSE). + +## Contacto + +- Sitio web del proyecto: [https://github.com/OpenNHP/opennhp](https://github.com/OpenNHP/opennhp) +- Correo electrónico: [opennhp@gmail.com](mailto:opennhp@gmail.com) +- Canal de Slack: [Únase a nuestro Slack](https://slack.opennhp.org) + +Para obtener una documentación más detallada, visite nuestra [Documentación Oficial](https://opennhp.org). + +## Referencias + +- [Especificación del Perímetro Definido por Software (SDP) v2.0](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2). Jason Garbis, Juanita Koilpillai, Junaid lslam, Bob Flores, Daniel Bailey, Benfeng Chen, Eitan Bremler, Michael Roza, Ahmed Refaey Hussein. [*Cloud Security Alliance (CSA)*](https://cloudsecurityalliance.org/). Marzo 2022. +- [AHAC: Marco Avanzado de Control de Acceso Oculto en Red](https://www.mdpi.com/2076-3417/14/13/5593). Mudi Xu, Benfeng Chen, Zhizhong Tan, Shan Chen, Lei Wang, Yan Liu, Tai Io San, Sou Wang Fong, Wenyong Wang y Jing Feng. *Revista de Ciencias Aplicadas*. Junio 2024. +- Noise Protocol Framework. https://noiseprotocol.org/ +- Proyecto de Marco de Gestión de Vulnerabilidades. https://phoenix.security/web-vuln-management/ + +--- + +🌟 ¡Gracias por su interés en OpenNHP! Esperamos sus contribuciones y comentarios. + diff --git a/README.fr.md b/README.fr.md index e69de29b..28149129 100644 --- a/README.fr.md +++ b/README.fr.md @@ -0,0 +1,213 @@ +[![en](https://img.shields.io/badge/lang-en-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.md) +[![zh-cn](https://img.shields.io/badge/lang-zh--cn-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.zh-cn.md) +[![de](https://img.shields.io/badge/lang-de-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.de.md) +[![ja](https://img.shields.io/badge/lang-ja-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.ja.md) +[![fr](https://img.shields.io/badge/lang-fr-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.fr.md) +[![es](https://img.shields.io/badge/lang-es-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.es.md) + +![Logo OpenNHP](docs/images/logo11.png) +# OpenNHP : Protocole de Masquage de l'Infrastructure Réseau en Zéro Confiance +Un protocole réseau de zéro confiance, basé sur la cryptographie, au niveau 5 du modèle OSI, permettant de cacher votre serveur et vos données des attaquants. + +![Statut de Construction](https://img.shields.io/badge/build-passing-brightgreen) +![Version](https://img.shields.io/badge/version-1.0.0-blue) +![Licence](https://img.shields.io/badge/license-Apache%202.0-green) + +--- + +## Défi : L'IA transforme Internet en une "Forêt Sombre" + +L'avancement rapide des technologies d'**IA**, en particulier les grands modèles de langage (LLM), transforme de manière significative le paysage de la cybersécurité. L'émergence de l'**exploitation autonome des vulnérabilités (AVE)** représente un bond majeur dans l'ère de l'IA, automatisant l'exploitation des vulnérabilités, comme le montre [cet article de recherche](https://arxiv.org/abs/2404.08144). Ce développement augmente de manière significative le risque pour tous les services réseau exposés, évoquant l'hypothèse de la [forêt sombre](https://fr.wikipedia.org/wiki/For%C3%AAt_sombre) sur Internet. Les outils pilotés par l'IA scannent continuellement l'environnement numérique, identifiant rapidement les faiblesses et les exploitant. Ainsi, Internet devient une **"forêt sombre"** où **la visibilité équivaut à la vulnérabilité**. + +![Risques de Vulnérabilité](docs/images/Vul_Risks.png) + +Selon les recherches de Gartner, les [cyberattaques pilotées par l'IA vont augmenter rapidement](https://www.gartner.com/en/newsroom/press-releases/2024-08-28-gartner-forecasts-global-information-security-spending-to-grow-15-percent-in-2025). Ce paradigme en évolution impose une réévaluation des stratégies de cybersécurité traditionnelles, avec un accent sur les défenses proactives, des mécanismes de réponse rapide, et l'adoption de technologies de masquage réseau pour protéger les infrastructures critiques. + +--- + +## Démo rapide : Voir OpenNHP en action + +Avant de plonger dans les détails d'OpenNHP, commençons par une démonstration rapide de la façon dont OpenNHP protège un serveur contre les accès non autorisés. Vous pouvez le voir en action en accédant au serveur protégé à l'adresse suivante : https://acdemo.opennhp.org. + +### 1) Le serveur protégé est "invisible" aux utilisateurs non authentifiés + +Par défaut, toute tentative de connexion au serveur protégé résultera en une erreur de TYPE OUT, car tous les ports sont fermés, rendant le serveur *"invisible"* et apparemment hors ligne. + +![Démo OpenNHP](docs/images/OpenNHP_ACDemo0.png) + +Le scan des ports du serveur retournera également une erreur de TYPE OUT. + +![Démo OpenNHP](docs/images/OpenNHP_ScanDemo.png) + +### 2) Après authentification, le serveur protégé devient accessible + +OpenNHP supporte une variété de méthodes d'authentification, telles que OAuth, SAML, QR codes, et plus encore. Pour cette démonstration, nous utilisons un service d'authentification basé sur un nom d'utilisateur/mot de passe simple à l'adresse https://demologin.opennhp.org. + +![Démo OpenNHP](docs/images/OpenNHP_DemoLogin.png) + +Une fois que vous cliquez sur le bouton "Login", l'authentification est réussie, et vous êtes redirigé vers le serveur protégé. Le serveur devient alors *"visible"* et accessible sur votre appareil. + +![Démo OpenNHP](docs/images/OpenNHP_ACDemo1.png) + +--- + +## Vision : Faire d'Internet un espace de confiance + +L'ouverture des protocoles TCP/IP a stimulé la croissance des applications Internet, mais a aussi exposé des vulnérabilités, permettant aux acteurs malveillants d'accéder de manière non autorisée à toute adresse IP exposée. Bien que le [modèle réseau OSI](https://fr.wikipedia.org/wiki/Mod%C3%A8le_OSI) définisse la *couche 5 (couche session)* pour la gestion des connexions, peu de solutions efficaces ont été mises en place à cet égard. + +**NHP**, ou **"Protocole de Masquage de l'Infrastructure Réseau"**, est un protocole réseau de zéro confiance, basé sur la cryptographie, conçu pour fonctionner au *niveau de la couche session OSI*, idéal pour gérer la visibilité réseau et les connexions. L'objectif principal de NHP est de dissimuler les ressources protégées des entités non autorisées, accordant l'accès uniquement aux utilisateurs vérifiés et autorisés par une vérification continue, contribuant ainsi à un Internet plus digne de confiance. + +![Internet de Confiance](docs/images/TrustworthyCyberspace.png) + +--- + +## Solution : OpenNHP rétablit le contrôle de la visibilité réseau + +**OpenNHP** est l'implémentation open source du protocole NHP. Il est basé sur la cryptographie et conçu avec des principes de sécurité en priorité, implémentant une véritable architecture de zéro confiance au *niveau de la couche session OSI*. + +![OpenNHP en tant que couche 5 OSI](docs/images/OSI_OpenNHP.png) + +OpenNHP s'appuie sur des recherches antérieures sur la technologie de masquage réseau, en utilisant des cadres et une architecture modernes de cryptographie pour garantir la sécurité et des performances élevées, surmontant ainsi les limitations des technologies précédentes. + +| Protocole de Masquage de l'Infrastructure | 1ère Génération | 2ème Génération | 3ème Génération | +|:---|:---|:---|:---| +| **Technologie Clé** | [Port Knocking](https://fr.wikipedia.org/wiki/Port_knocking) | [Autorisation par Paquet Unique (SPA)](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2) | Protocole de Masquage de l'Infrastructure Réseau (NHP) | +| **Authentification** | Séquences de ports | Secrets partagés | Cadre cryptographique moderne | +| **Architecture** | Pas de plan de contrôle | Pas de plan de contrôle | Plan de contrôle scalable | +| **Capacité** | Masquer les ports | Masquer les ports | Masquer les ports, IPs et domaines | +| **Contrôle d'Accès** | Niveau IP | Niveau Port | Niveau Application | +| **Projets Open Source** | [knock](https://github.com/jvinet/knock) *(C)* | [fwknop](https://github.com/mrash/fwknop) *(C++)* | [OpenNHP](https://github.com/OpenNHP/opennhp) *(Go)* | + +> Il est crucial de choisir un langage **sûr pour la mémoire** comme *Go* pour le développement d'OpenNHP, comme le souligne le [rapport technique du gouvernement des États-Unis](https://www.whitehouse.gov/wp-content/uploads/2024/02/Final-ONCD-Technical-Report.pdf). Pour une comparaison détaillée entre **SPA et NHP**, référez-vous à la [section ci-dessous](#comparison-between-spa-and-nhp). + +## Bénéfices en matière de sécurité + +Puisqu'OpenNHP implémente les principes de zéro confiance au *niveau de la couche session OSI*, il offre des avantages significatifs : + +- Réduit la surface d'attaque en cachant l'infrastructure +- Empêche la reconnaissance réseau non autorisée +- Atténue l'exploitation des vulnérabilités +- Empêche le phishing via DNS chiffré +- Protège contre les attaques DDoS +- Permet un contrôle d'accès granulaire +- Fournit un suivi des connexions basé sur l'identité +- Attribution des attaques + +## Architecture + +L'architecture d'OpenNHP s'inspire de la [norme d'architecture Zero Trust du NIST](https://www.nist.gov/publications/zero-trust-architecture). Elle suit une conception modulaire avec trois composants principaux : **NHP-Server**, **NHP-AC** et **NHP-Agent**, comme illustré dans le diagramme ci-dessous. + +![Architecture OpenNHP](docs/images/OpenNHP_Arch.png) + +> Veuillez consulter la [documentation d'OpenNHP](https://opennhp.org/) pour des informations détaillées sur l'architecture et le flux de travail. + +## Cœur : Algorithmes Cryptographiques + +La cryptographie est au cœur d'OpenNHP, fournissant une sécurité robuste, d'excellentes performances et une bonne évolutivité en utilisant des algorithmes cryptographiques de pointe. Voici les principaux algorithmes et cadres cryptographiques employés par OpenNHP : + +- **[Cryptographie à Courbes Elliptiques (ECC)](https://fr.wikipedia.org/wiki/Cryptographie_sur_courbe_elliptique)** : Utilisée pour la cryptographie asymétrique efficace. + +> Comparée à RSA, l'ECC offre une efficacité supérieure avec un chiffrement plus fort à des longueurs de clé plus courtes, améliorant la transmission réseau et les performances de calcul. Le tableau ci-dessous montre les différences de force de sécurité, de longueurs de clé et du ratio entre RSA et ECC, ainsi que leurs périodes de validité respectives. + +| Force de Sécurité (bits) | Longueur de Clé DSA/RSA (bits) | Longueur de Clé ECC (bits) | Ratio : ECC vs DSA/RSA | Validité | +|:--------------------------:|:------------------------------:|:--------------------------:|:-----------------------:|:---------:| +| 80 | 1024 | 160-223 | 1:6 | Jusqu'en 2010 | +| 112 | 2048 | 224-255 | 1:9 | Jusqu'en 2030 | +| 128 | 3072 | 256-383 | 1:12 | Après 2031 | +| 192 | 7680 | 384-511 | 1:20 | | +| 256 | 15360 | 512+ | 1:30 | | + +- **[Cadre de Protocole Noise](https://noiseprotocol.org/)** : Permet l'échange de clés sécurisé, le chiffrement/déchiffrement des messages, et l'authentification mutuelle. + +> Le protocole Noise est basé sur l'[accord de clé Diffie-Hellman](https://fr.wikipedia.org/wiki/%C3%89change_de_cl%C3%A9_Diffie-Hellman) et offre des solutions cryptographiques modernes telles que l'authentification mutuelle et optionnelle, le masquage de l'identité, la sécurité persistante, et le chiffrement à tour de passezà-tour de zéro. Déjà prouvé pour sa sécurité et ses performances, il est utilisé par des applications populaires comme [WhatsApp](https://www.whatsapp.com/security/WhatsApp-Security-Whitepaper.pdf), [Slack](https://github.com/slackhq/nebula), et [WireGuard](https://www.wireguard.com/). + +- **[Cryptographie basée sur l'Identité (IBC)](https://fr.wikipedia.org/wiki/Cryptographie_bas%C3%A9e_sur_l%27identit%C3%A9)** : Simplifie la distribution des clés à grande échelle. + +> Une distribution efficace des clés est essentielle pour implémenter le Zéro Confiance. OpenNHP prend en charge à la fois PKI et IBC. Alors que PKI est utilisée depuis des décennies, elle dépend de Certificats d'Autorité centralisés (CA) pour la vérification de l'identité et la gestion des clés, ce qui peut être long et coûteux. En revanche, l'IBC permet une approche décentralisée et autonome de la vérification de l'identité et de la gestion des clés, la rendant plus rentable pour l'environnement Zero Trust d'OpenNHP, où des milliards d'appareils ou de serveurs peuvent avoir besoin de protection et d'intégration en temps réel. + +- **[Cryptographie à Clé Publique sans Certificat (CL-PKC)](https://fr.wikipedia.org/wiki/Cryptographie_sans_certificat)** : Algorithme IBC recommandé + +> CL-PKC est un schéma qui améliore la sécurité en évitant la garde des clés et en répondant aux limites de la cryptographie basée sur l'identité (IBC). Dans la plupart des systèmes IBC, la clé privée d'un utilisateur est générée par un Centre de Génération de Clés (KGC), ce qui introduit des risques importants. Un KGC compromis peut entraîner l'exposition des clés privées de tous les utilisateurs, nécessitant une confiance totale dans le KGC. CL-PKC atténue ce problème en divisant le processus de génération de clés, de sorte que le KGC n'a connaissance que d'une clé privée partielle. En conséquence, CL-PKC combine les forces du PKI et de l'IBC, offrant une sécurité renforcée sans les inconvénients de la gestion centralisée des clés. + +Pour en savoir plus : + +> Veuillez consulter la [documentation OpenNHP](https://opennhp.org/cryptography/) pour une explication détaillée des algorithmes cryptographiques utilisés dans OpenNHP. + +## Principales Fonctionnalités + +- Atténue l'exploitation des vulnérabilités en appliquant par défaut des règles "deny-all" +- Empêche les attaques de phishing via la résolution DNS chiffrée +- Protège contre les attaques DDoS en cachant l'infrastructure +- Permet l'attribution des attaques via des connexions basées sur l'identité +- Contrôle d'accès par défaut pour toutes les ressources protégées +- Authentification basée sur l'identité et les appareils avant l'accès au réseau +- Résolution DNS chiffrée pour empêcher le piratage DNS +- Infrastructure distribuée pour atténuer les attaques DDoS +- Architecture évolutive avec des composants découplés +- Intégration avec les systèmes existants de gestion des identités et des accès +- Prend en charge divers modèles de déploiement (client-à-passerelle, client-à-serveur, etc.) +- Sécurité cryptographique avec des algorithmes modernes (ECC, Noise Protocol, IBC) + +
+Cliquez pour développer les détails des fonctionnalités + +- **Contrôle d'accès par défaut** : Toutes les ressources sont cachées par défaut, ne devenant accessibles qu'après authentification et autorisation. +- **Authentification basée sur l'identité et les appareils** : Garantit que seuls les utilisateurs connus sur des appareils approuvés peuvent accéder. +- **Résolution DNS chiffrée** : Empêche le piratage DNS et les attaques de phishing associées. +- **Atténuation des DDoS** : Conception d'infrastructure distribuée aide à protéger contre les attaques par DDoS. +- **Architecture évolutive** : Les composants découplés permettent un déploiement et une évolution flexibles. +- **Intégration IAM** : Fonctionne avec vos systèmes de gestion des identités et des accès. +- **Déploiement flexible** : Prend en charge divers modèles, y compris client-à-passerelle, client-à-serveur, et plus encore. +- **Cryptographie forte** : Utilise des algorithmes modernes comme ECC, Noise Protocol, et IBC pour une sécurité robuste. +
+ +## Déploiement + +OpenNHP prend en charge plusieurs modèles de déploiement pour répondre à différents cas d'utilisation : + +- Client-à-Passerelle : Sécurise l'accès à plusieurs serveurs derrière une passerelle +- Client-à-Serveur : Sécurise directement des serveurs/applications individuels +- Serveur-à-Serveur : Sécurise la communication entre les services backend +- Passerelle-à-Passerelle : Sécurise les connexions site-à-site + +> Veuillez consulter la [documentation OpenNHP](https://opennhp.org/deploy/) pour des instructions de déploiement détaillées. + +## Comparaison entre SPA et NHP +Le protocole d'Autorisation par Paquet Unique (SPA) est inclus dans la [spécification du Périmètre Défini par Logiciel (SDP)](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2) publiée par l'[Alliance pour la Sécurité Cloud (CSA)](https://cloudsecurityalliance.org/). NHP améliore la sécurité, la fiabilité, la scalabilité et l'extensibilité grâce à un cadre et une architecture de cryptographie modernes, comme démontré dans l'article de recherche [AHAC](https://www.mdpi.com/2076-3417/14/13/5593). + +| - | SPA | NHP | Avantages de NHP | +|:---|:---|:---|:---| +| **Architecture** | Le déchiffrement du paquet SPA et le composant d'authentification de l'utilisateur/appareil sont couplés au composant de contrôle d'accès réseau dans le serveur SPA. | NHP-Server (le composant de déchiffrement de paquet et d'authentification utilisateur/appareil) et NHP-AC (le composant de contrôle d'accès) sont découplés. NHP-Server peut être déployé sur des hôtes distincts et prend en charge la mise à l'échelle horizontale. |
  • Performance : le composant gourmand en ressources NHP-server est séparé du serveur protégé.
  • Scalabilité : NHP-server peut être déployé en mode distribué ou en cluster.
  • Sécurité : l'adresse IP du serveur protégé n'est pas visible par le client tant que l'authentification n'a pas réussi.
| +| **Communication** | Simple direction | Bidirectionnelle | Meilleure fiabilité avec la notification d'état du contrôle d'accès | +| **Cadre cryptographique** | Secrets partagés | PKI ou IBC, Cadre Noise |
  • Sécurité : mécanisme éprouvé d'échange de clés pour atténuer les menaces MITM
  • Coût faible : distribution efficace des clés pour le modèle de zéro confiance
  • Performance : chiffrement/déchiffrement haute performance
| +| **Capacité de Masquage de l'Infrastructure Réseau** | Uniquement les ports de serveur | Domaines, IP et ports | Plus puissant contre diverses attaques (e.g., vulnérabilités, piratage DNS, et attaques DDoS) | +| **Extensibilité** | Aucune, uniquement pour SDP | Tout usage | Prise en charge de tout scénario nécessitant un obscurcissement de service | +| **Interopérabilité** | Non disponible | Personnalisable | NHP peut s'intégrer de manière transparente avec les protocoles existants (e.g., DNS, FIDO, etc.) | + +## Contribuer + +Nous accueillons avec plaisir les contributions à OpenNHP ! Veuillez consulter nos [lignes directrices de contribution](CONTRIBUTING.md) pour plus d'informations sur la manière de participer. + +## Licence + +OpenNHP est publié sous la [licence Apache 2.0](LICENSE). + +## Contact + +- Site Web du Projet : [https://github.com/OpenNHP/opennhp](https://github.com/OpenNHP/opennhp) +- E-mail : [opennhp@gmail.com](mailto:opennhp@gmail.com) +- Canal Slack : [Rejoignez notre Slack](https://slack.opennhp.org) + +Pour plus de documentation détaillée, veuillez visiter notre [Documentation Officielle](https://opennhp.org). + +## Références + +- [Spécification du Périmètre Défini par Logiciel (SDP) v2.0](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2). Jason Garbis, Juanita Koilpillai, Junaid lslam, Bob Flores, Daniel Bailey, Benfeng Chen, Eitan Bremler, Michael Roza, Ahmed Refaey Hussein. [*Cloud Security Alliance (CSA)*](https://cloudsecurityalliance.org/). Mar 2022. +- [AHAC : Cadre Avancé de Contrôle d'Accès Caché au Réseau](https://www.mdpi.com/2076-3417/14/13/5593). Mudi Xu, Benfeng Chen, Zhizhong Tan, Shan Chen, Lei Wang, Yan Liu, Tai Io San, Sou Wang Fong, Wenyong Wang, et Jing Feng. *Journal des Sciences Appliquées*. Juin 2024. +- Noise Protocol Framework. https://noiseprotocol.org/ +- Projet de Cadre de Gestion des Vulnérabilités. https://phoenix.security/web-vuln-management/ + +--- + +🌟 Merci pour votre intérêt dans OpenNHP ! Nous attendons vos contributions et vos commentaires avec impatience. + diff --git a/README.ja.md b/README.ja.md index e69de29b..100560a7 100644 --- a/README.ja.md +++ b/README.ja.md @@ -0,0 +1,148 @@ +[![en](https://img.shields.io/badge/lang-en-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.md) +[![zh-cn](https://img.shields.io/badge/lang-zh--cn-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.zh-cn.md) +[![de](https://img.shields.io/badge/lang-de-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.de.md) +[![ja](https://img.shields.io/badge/lang-ja-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.ja.md) +[![fr](https://img.shields.io/badge/lang-fr-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.fr.md) +[![es](https://img.shields.io/badge/lang-es-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.es.md) + +![OpenNHP Logo](docs/images/logo11.png) +# OpenNHP: ゼロトラストネットワークインフラストラクチャ隠蔽プロトコル +攻撃者からサーバーとデータを隠すためのOSI第5層に位置する、軽量の暗号化駆動型ゼロトラストネットワークプロトコルです。 + +![Build Status](https://img.shields.io/badge/build-passing-brightgreen) +![Version](https://img.shields.io/badge/version-1.0.0-blue) +![License](https://img.shields.io/badge/license-Apache%202.0-green) + +--- + +## セキュリティの利点 + +OpenNHPは*OSIセッション層*でゼロトラストの原則を実装しているため、次のような大きな利点があります。 + +- インフラの隠蔽による攻撃面の削減 +- 不正なネットワーク偵察の防止 +- 脆弱性の悪用を防ぐ +- 暗号化されたDNSによるフィッシング防止 +- DDoS攻撃に対する防御 +- 細粒度のアクセス制御を実現 +- アイデンティティベースの接続追跡 +- 攻撃の帰属 + +## アーキテクチャ + +OpenNHPのアーキテクチャは[NISTゼロトラストアーキテクチャ標準](https://www.nist.gov/publications/zero-trust-architecture)に触発されています。以下の図に示すように、3つの主要なコンポーネント(**NHP-Server**、**NHP-AC**、**NHP-Agent**)を持つモジュール設計に従います。 + +![OpenNHP architecture](docs/images/OpenNHP_Arch.png) + +> アーキテクチャとワークフローの詳細については、[OpenNHPドキュメント](https://opennhp.org/)を参照してください。 + +## コア: 暗号化アルゴリズム + +暗号化はOpenNHPの中心にあり、強力なセキュリティ、高いパフォーマンス、およびスケーラビリティを提供するために最新の暗号化アルゴリズムを利用しています。以下は、OpenNHPで使用されている主要な暗号化アルゴリズムとフレームワークです。 + +- **[楕円曲線暗号(ECC)](https://en.wikipedia.org/wiki/Elliptic-curve_cryptography)**:効率的な公開鍵暗号に使用されています。 + +> RSAと比較して、ECCは短い鍵長で強力な暗号化を提供し、ネットワーク伝送と計算パフォーマンスを向上させます。以下の表は、RSAとECCのセキュリティ強度、鍵長、および鍵長の比率の違いを示し、それぞれの有効期間を示しています。 + +| セキュリティ強度(ビット) | DSA/RSA鍵長(ビット) | ECC鍵長(ビット) | 比率:ECC対DSA/RSA | 有効期限 | +|:------------------------:|:-------------------------:|:---------------------:|:----------------------:|:--------:| +| 80 | 1024 | 160-223 | 1:6 | 2010年まで | +| 112 | 2048 | 224-255 | 1:9 | 2030年まで | +| 128 | 3072 | 256-383 | 1:12 | 2031年以降 | +| 192 | 7680 | 384-511 | 1:20 | | +| 256 | 15360 | 512+ | 1:30 | | + +- **[ノイズプロトコルフレームワーク](https://noiseprotocol.org/)**:安全な鍵交換、メッセージの暗号化/復号化、および相互認証を可能にします。 + +> ノイズプロトコルは[ディフィー・ヘルマン鍵共有](https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange)に基づいており、相互およびオプションの認証、アイデンティティの隠蔽、前方秘匿性、ゼロラウンドトリップ暗号化などの最新の暗号化ソリューションを提供します。そのセキュリティとパフォーマンスは、[WhatsApp](https://www.whatsapp.com/security/WhatsApp-Security-Whitepaper.pdf)、[Slack](https://github.com/slackhq/nebula)、および[WireGuard](https://www.wireguard.com/)などの人気アプリケーションで既に証明されています。 + +- **[アイデンティティベース暗号(IBC)](https://en.wikipedia.org/wiki/Identity-based_cryptography)**:大規模な鍵配布を簡素化します。 + +> 効率的な鍵配布は、ゼロトラストの実装に不可欠です。OpenNHPはPKIとIBCの両方をサポートしています。PKIは数十年にわたって広く使用されてきましたが、アイデンティティの確認と鍵管理に中央集権的な認証局(CA)に依存しており、時間とコストがかかることがあります。一方、IBCは、アイデンティティの確認と鍵管理を分散型で自己管理可能な方法で行うことができ、リアルタイムで何十億ものデバイスやサーバーを保護し、オンボーディングする必要があるOpenNHPのゼロトラスト環境において、よりコスト効率的です。 + +- **[証明書レス公開鍵暗号(CL-PKC)](https://en.wikipedia.org/wiki/Certificateless_cryptography)**:推奨されるIBCアルゴリズム + +> CL-PKCは、鍵エスクローを回避し、アイデンティティベース暗号(IBC)の制限に対処することでセキュリティを強化するスキームです。ほとんどのIBCシステムでは、ユーザーの秘密鍵は鍵生成センター(KGC)によって生成され、これは重大なリスクをもたらします。KGCが侵害された場合、すべてのユーザーの秘密鍵が公開される可能性があり、KGCへの完全な信頼が必要です。CL-PKCは鍵生成プロセスを分割し、KGCは部分的な秘密鍵のみを知っているため、CL-PKCはPKIとIBCの両方の強みを組み合わせ、中央集権的な鍵管理の欠点なしに強力なセキュリティを提供します。 + +詳細について: + +> OpenNHPで使用されている暗号化アルゴリズムの詳細な説明については、[OpenNHPドキュメント](https://opennhp.org/cryptography/)を参照してください。 + +## 主な機能 + +- デフォルトで「すべて拒否」ルールを適用することにより、脆弱性の悪用を軽減 +- 暗号化されたDNS解決を通じてフィッシング攻撃を防止 +- インフラの隠蔽によるDDoS攻撃の防御 +- アイデンティティベースの接続による攻撃の帰属 +- 保護されたリソースに対するすべてのアクセスをデフォルトで拒否 +- ネットワークアクセス前にアイデンティティおよびデバイスベースの認証 +- DNSハイジャックを防止するための暗号化されたDNS解決 +- DDoS攻撃を緩和するための分散インフラ +- 分離されたコンポーネントによるスケーラブルなアーキテクチャ +- 既存のアイデンティティおよびアクセス管理システムとの統合 +- さまざまな展開モデルをサポート(クライアント対ゲートウェイ、クライアント対サーバーなど) +- 最新のアルゴリズム(ECC、ノイズプロトコル、IBC)を使用した暗号化によるセキュリティの確保 + +
+機能の詳細を表示 + +- **デフォルト拒否のアクセス制御**:すべてのリソースはデフォルトで隠蔽され、認証と認可が行われた後にのみアクセス可能になります。 +- **アイデンティティおよびデバイスベースの認証**:既知のユーザーと承認されたデバイスのみがアクセス可能です。 +- **暗号化されたDNS解決**:DNSハイジャックとそれに伴うフィッシング攻撃を防止します。 +- **DDoS緩和**:分散型インフラ設計により、分散型サービス拒否攻撃を防御します。 +- **スケーラブルなアーキテクチャ**:分離されたコンポーネントにより柔軟な展開とスケーリングが可能です。 +- **IAM統合**:既存のアイデンティティおよびアクセス管理システムと連携します。 +- **柔軟な展開**:クライアント対ゲートウェイ、クライアント対サーバーなど、さまざまなモデルをサポートします。 +- **強力な暗号化**:ECC、ノイズプロトコル、IBCなどの最新アルゴリズムを使用して強力なセキュリティを提供します。 +
+ +## 展開 + +OpenNHPは、さまざまなユースケースに合わせた複数の展開モデルをサポートしています。 + +- クライアント対ゲートウェイ:ゲートウェイの背後にある複数のサーバーへのアクセスを保護します +- クライアント対サーバー:個々のサーバー/アプリケーションを直接保護します +- サーバー対サーバー:バックエンドサービス間の通信を保護します +- ゲートウェイ対ゲートウェイ:サイト間接続を保護します + +> 詳細な展開手順については、[OpenNHPドキュメント](https://opennhp.org/deploy/)を参照してください。 + +## SPAとNHPの比較 +[クラウドセキュリティアライアンス(CSA)](https://cloudsecurityalliance.org/)がリリースした[ソフトウェア定義境界(SDP)仕様](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2)には、シングルパケット認証(SPA)プロトコルが含まれています。NHPは、最新の暗号化フレームワークとアーキテクチャを通じてセキュリティ、信頼性、スケーラビリティ、拡張性を向上させ、[AHAC研究論文](https://www.mdpi.com/2076-3417/14/13/5593)で示されているように従来の技術の限界を克服しています。 + +| - | SPA |NHP | NHPの利点 | +|:---|:---|:---|:---| +| **アーキテクチャ** | SPAサーバーのパケット復号化およびユーザー/デバイス認証コンポーネントがネットワークアクセス制御コンポーネントと結合されています。 | NHP-Server(パケット復号化およびユーザー/デバイス認証コンポーネント)とNHP-AC(アクセス制御コンポーネント)が分離されています。NHP-Serverは別のホストに展開でき、水平スケーリングをサポートします。 |
  • パフォーマンス:リソース消費の多いコンポーネントNHP-Serverが保護されたサーバーから分離されています。
  • スケーラビリティ:NHP-Serverは分散またはクラスター化モードで展開可能です。
  • セキュリティ:認証が成功するまでは、保護されたサーバーのIPアドレスがクライアントには見えません。
| +| **通信** | 単方向 | 双方向 | アクセス制御のステータス通知による信頼性の向上 | +| **暗号化フレームワーク** | 共有シークレット | PKIまたはIBC、ノイズフレームワーク |
  • セキュリティ:MITM脅威を軽減する証明された安全な鍵交換メカニズム
  • 低コスト:ゼロトラストモデルにおける効率的な鍵配布
  • パフォーマンス:高パフォーマンスの暗号化/復号化
| +| **ネットワークインフラストラクチャ隠蔽能力** | サーバーポートのみ | ドメイン、IP、ポート | 脆弱性、DNSハイジャック、DDoS攻撃など、さまざまな攻撃に対する強力な防御 | +| **拡張性** | なし、SDP専用 | 汎用 | あらゆるサービス暗黒化の必要があるシナリオに対応 | +| **相互運用性** | 利用不可 | カスタマイズ可能| NHPは既存のプロトコル(例:DNS、FIDOなど)とシームレスに統合可能 | + +## コントリビューション + +OpenNHPへの貢献を歓迎します!貢献方法の詳細については、[コントリビューションガイドライン](CONTRIBUTING.md)を参照してください。 + +## ライセンス + +OpenNHPは[Apache 2.0ライセンス](LICENSE)の下でリリースされています。 + +## 連絡先 + +- プロジェクトウェブサイト:[https://github.com/OpenNHP/opennhp](https://github.com/OpenNHP/opennhp) +- メール:[opennhp@gmail.com](mailto:opennhp@gmail.com) +- Slackチャンネル:[Slackに参加する](https://slack.opennhp.org) + +詳細なドキュメントについては、[公式ドキュメント](https://opennhp.org)をご覧ください。 + +## 参考文献 + +- [ソフトウェア定義境界(SDP)仕様 v2.0](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2)。Jason Garbis、Juanita Koilpillai、Junaid Islam、Bob Flores、Daniel Bailey、Benfeng Chen、Eitan Bremler、Michael Roza、Ahmed Refaey Hussein。[*クラウドセキュリティアライアンス(CSA)*](https://cloudsecurityalliance.org/)。2022年3月。 +- [AHAC:高度なネットワーク隠蔽アクセス制御フレームワーク](https://www.mdpi.com/2076-3417/14/13/5593)。Mudi Xu、Benfeng Chen、Zhizhong Tan、Shan Chen、Lei Wang、Yan Liu、Tai Io San、Sou Wang Fong、Wenyong Wang、Jing Feng。*応用科学ジャーナル*。2024年6月。 +- ノイズプロトコルフレームワーク。https://noiseprotocol.org/ +- 脆弱性管理フレームワークプロジェクト。https://phoenix.security/web-vuln-management/ + +--- + +✨ OpenNHPにご関心をお寄せいただき、ありがとうございます!皆様の貢献とフィードバックをお待ちしております。 + diff --git a/README.md b/README.md index 8c5dc14a..4d42e130 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,9 @@ [![en](https://img.shields.io/badge/lang-en-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.md) [![zh-cn](https://img.shields.io/badge/lang-zh--cn-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.zh-cn.md) -[![de](https://img.shields.io/badge/lang-de-red.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.de.md) -[![ja](https://img.shields.io/badge/lang-ja-red.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.ja.md) -[![fr](https://img.shields.io/badge/lang-fr-red.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.fr.md) -[![es](https://img.shields.io/badge/lang-es-red.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.es.md) +[![de](https://img.shields.io/badge/lang-de-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.de.md) +[![ja](https://img.shields.io/badge/lang-ja-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.ja.md) +[![fr](https://img.shields.io/badge/lang-fr-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.fr.md) +[![es](https://img.shields.io/badge/lang-es-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.es.md) ![OpenNHP Logo](docs/images/logo11.png) # OpenNHP: Zero Trust Network-infrastructure Hiding Protocol diff --git a/README.zh-cn.md b/README.zh-cn.md index 47fe0e1a..f2a10d65 100644 --- a/README.zh-cn.md +++ b/README.zh-cn.md @@ -1,161 +1,213 @@ -[![en](https://img.shields.io/badge/lang-en-red.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.md) - -# 零信任网络隐身协议 - -## 当今挑战:AI 将互联网变成一个“黑暗森林” -人工智能技术,尤其是大型语言模型(LLM)的快速发展正在深刻改变网络安全领域的格局。自主漏洞利用(AVE)的出现标志着人工智能时代的重大升级,它简化了漏洞利用的过程,正如本研究论文中所讨论的那样。这一发展使任何暴露的网络服务都面临着更高的风险,与互联网的 “黑暗森林假说 ”产生了共鸣。人工智能工具不断扫描数字环境,快速识别并利用弱点。因此,互联网演变成了 “黑暗森林”,可见性等同于脆弱性。 - -![OpenNHP Logo](docs/Vul_Risks.png) - -这种模式的转变要求我们重新评估传统的网络安全方法,强调主动防御、快速反应机制,并在可能的情况下采用网络隐藏技术来保护关键基础设施。 - -## 解决方案:零信任网络隐身协议 -NHP,或者 **网络隐身协议** 是一种零信任通信协议,在 OSI网络模型的会话层运行,是网络可见性和连接管理的最佳场所。它的主要目标是使受保护的资源不被未经授权的实体发现,同时通过持续验证只允许经过验证的授权主体访问。NHP 从云安全联盟(CSA)发布的软件定义边界(SDP)规范中的单包授权(SPA)协议中汲取灵感。除了 SPA 的功能外,NHP 还增强了安全性、可靠性、可扩展性和可扩展性。这里列出了 NHP 和 SPA 的详细比较。 - -![OpenNHP as the OSI 5th layer](docs/OSI_OpenNHP.png) - -**OpenNHP** 是用 *Golang* 开发的 NHP 协议开源实现。它的设计遵循安全第一的原则,在 OSI 网络模型的会话层(第 5 层)协议上实现了真正的零信任架构。由于会话层负责连接建立和对话控制,因此在会话层实施零信任具有显著的优势: -- **降低漏洞风险:** TCP/IP 协议的开放性导致了 “默认信任 ”连接模式,允许任何人与提供服务的服务器端口建立连接。攻击者利用这种开放性来攻击服务器漏洞。NHP 协议通过在服务器端默认执行 “拒绝所有 ”规则,只允许授权主机建立连接,从而实现了 “绝不信任,始终验证 ”的零信任原则。这能有效减少漏洞利用,尤其是零日漏洞利用。 -- **减少网络钓鱼攻击:** DNS 劫持是对互联网安全的严重威胁,被用于网络钓鱼、窃取敏感信息或传播恶意软件等恶意目的。NHP 协议可作为加密 DNS 解析服务来缓解这一问题。当客户端的 NHP-Agent 向控制器组件 NHP-Server 发送带有受保护资源标识符(如域名)的敲击请求时,如果 NHP-Agent 成功通过验证,NHP-Server 将返回受保护资源的 IP 地址和端口号。由于 NHP 通信是经过加密和相互验证的,因此可以有效降低 DNS 劫持的风险。 -- **减轻DDoS攻击:** 如上所述,客户端无法在未经验证的情况下获取受保护资源的 IP 地址和端口号。如果受保护的资源分布在多个地点,NHP 服务器可能会向不同的客户端返回不同的 IP 地址,从而大大增加了 DDoS 攻击的难度和实施成本。 攻击归属: TCP/IP 协议的连接模式是基于 IP 的。有了 NHP,连接模式就变成了基于身份(ID)。在建立连接之前,必须对连接发起者的身份进行验证,从而大大提高了攻击的可识别性和可追溯性。 - -## 安全优势 - -- 通过隐藏基础设施减少攻击面 -- 防止未经授权的网络侦察 -- 减少漏洞利用 -- 通过加密DNS阻止网络钓鱼 -- 防止DDoS攻击 -- 实现细粒度访问控制 -- 提供基于身份的连接跟踪 - -## 主要功能 - -- 默认执行 “全部拒绝 ”规则 -- 减少漏洞利用 -- 通过加密DNS解析防止网络钓鱼攻击 -- 通过隐藏基础设施防止DDoS攻击 -- 通过基于身份的连接实现攻击归因 -- 默认拒绝所有受保护资源的访问控制 -- 网络访问前基于身份和设备的身份验证 -- 加密 DNS 解析 -- 防止 DNS 劫持 -- 可缓解 DDoS 攻击的分布式基础设施 -- 具有解耦组件的可扩展架构 与现有身份和访问管理系统集成 -- 支持各种部署模式(客户端到网关、客户端到服务器等) -- 使用现代算法(ECC、噪声协议、IBC)确保加密安全 - -## 架构和工作流程 -OpenNHP 架构受 NIST 零信任架构标准的启发。它采用模块化设计,核心组件如下: - -![OpenNHP architecture](docs/OpenNHP_Arch.png) - -### OpenNHP核心组件: -#### NHP-Agent -NHP-Agent是一个客户端组件,用于启动通信和请求访问受保护的资源。它可以通过以下方式实现: -- 独立的客户端应用程序 -- 集成到现有应用程序中的SDK -- 浏览器插件 -- 移动应用程序 - -NHP-Agent负责: -- 生成并向NHP服务器发送敲击请求 -- 维护安全通信渠道 -- 处理身份验证流程 - -#### NHP服务器 -NHP服务器是中央控制器,功能: - - 处理和验证来自代理的验证请求 - - 与授权服务提供商互动,做出政策决定 - - 管理NHP-AC组件,允许/拒绝访问 - - 处理密钥管理和加密操作 - - NHP服务器可以部署在分布式或集群配置中,以实现高可用性和可扩展性。 - -#### NHP-AC - -NHP-AC (访问控制)组件执行受保护资源的访问策略,主要功能 : -- 执行默认的全部拒绝规则 -- 根据NHP服务器指令打开/关闭访问权限 -- 确保受保护资源的网络隐蔽性 -- 记录访问尝试 - -### 与OpenNHP交互的组件: -- **受保护资源:** 资源提供者负责保护这些资源,如API接口、应用服务器、网关、路由器、网络设备等。在SDP 方案中,受保护资源是 SDP 网关和控制器。 -- **授权服务提供商(ASP):** 该提供商负责验证访问策略,并提供受保护资源的实际访问地址。在 SDP 方案中,ASP 可以是SDP控制器。 - -### 工作流程 -1.'NHP-Agent' 向 'NHP-Server' 发送敲击请求 -2.'NHP-Server'验证请求并检索代理信息 -3.'NHP-Server'查询授权服务提供商 -4.如果获得授权,'NHP-Server'指示'NHP-AC'允许访问 -5.'NHP-AC' 打开连接并通知 'NHP-Server' -6.'NHP-Server'向'NHP-Agent'提供资源访问详情 -7.'NHP-Agent'现在可以访问受保护的资源 -8. 访问记录作为日记存储,用于审计 - -## 快速开始 -在几分钟内启动并运行 OpenNHP: -```bash -git clone https://github.com/opennhp/opennhp.git -cd opennhp -make -./nhp-server run -``` - -## 安装步骤: -1.去github clone到本地: -```bash -git clone https://github.com/opennhp/nhp.git -``` -2.进入文件夹 -``` -cd nhp -``` -3.build工程: -```bash -make -``` -4.安装(optional): -```bash -sudo make install -``` -注意:运行 `sudo make install` 需要root权限。运行此命令前,请确保您信任源代码。 - -## 部署模式 - -OpenNHP 支持多种部署模式,以适应不同的使用情况: - -- 客户端到网关:确保访问网关后面的多个服务器 -- 客户端到服务器:直接保护单个服务器/应用程序的安全 -- 服务器到服务器:确保后端服务之间的通信安全 -- 网关到网关:确保站点到站点连接的安全 - -## 加密基础 -OpenNHP 采用最先进的加密算法: -- 椭圆曲线加密算法(ECC):用于高效的公钥操作 -- 噪声协议框架:用于安全密钥交换和身份验证 -- 基于身份的加密算法(IBC):大规模简化密钥管理 - -## SPA与NHP的比较(todo) -NHP 利用现代加密算法和编程语言确保安全性和高性能,有效解决了 SPA 的局限性。 - - -## 贡献 -我们欢迎为 OpenNHP 投稿!有关如何参与的详细信息,请参阅我们的贡献指南。 - -## 许可证 -OpenNHP 根据 Apache 2.0 许可发布。 - -## 联系我们 -- 项目网站: https://github.com/OpenNHP/opennhp -- Slack频道:加入我们的Slack - -如需更详细的文档,请访问我们的官方文档。(https://docs.opennhp.org) - - -## 引用 - -- Software-Defined Perimeter (SDP) Specification v2.0. Jason Garbis, Juanita Koilpillai, Junaid lslam, Bob Flores, Daniel Bailey, Benfeng Chen, Eitan Bremler, Michael Roza, Ahmed Refaey Hussein. Cloud Security Alliance(CSA). Mar 2022. -- AHAC: Advanced Network-Hiding Access Control Framework. Mudi Xu, Benfeng Chen, Zhizhong Tan, Shan Chen, Lei Wang, Yan Liu, Tai Io San, Sou Wang Fong, Wenyong Wang, and Jing Feng. Applied Sciences Journal. June 2024. -- Vulnerability Management Framework project. https://phoenix.security/web-vuln-management/ \ No newline at end of file +[![en](https://img.shields.io/badge/lang-en-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.md) +[![zh-cn](https://img.shields.io/badge/lang-zh--cn-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.zh-cn.md) +[![de](https://img.shields.io/badge/lang-de-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.de.md) +[![ja](https://img.shields.io/badge/lang-ja-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.ja.md) +[![fr](https://img.shields.io/badge/lang-fr-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.fr.md) +[![es](https://img.shields.io/badge/lang-es-green.svg)](https://github.com/OpenNHP/opennhp/blob/master/README.es.md) + +![OpenNHP Logo](docs/images/logo11.png) +# OpenNHP: 零信任网络隐身协议 +OpenNHP是一个轻量级、基于加密算法的零信任网络协议,其工作在OSI网络模型第五层,用于隐藏您的服务器和数据,避免被攻击者发现和访问 + +![Build Status](https://img.shields.io/badge/build-passing-brightgreen) +![Version](https://img.shields.io/badge/version-1.0.0-blue) +![License](https://img.shields.io/badge/license-Apache%202.0-green) + +--- + +## 挑战:AI 将互联网变为“黑暗森林” + +**AI** 技术的快速发展,尤其是大语言模型(LLM),正在显著改变网络安全格局。**自主漏洞利用(AVE)** 的兴起是 AI 时代的一个重大飞跃,大大简化了漏洞的利用,这一点在[这篇研究论文](https://arxiv.org/abs/2404.08144)中有详细说明。这一发展显著增加了任何暴露网络服务的风险,与互联网的[黑暗森林假说](https://en.wikipedia.org/wiki/Dark_forest_hypothesis)不谋而合。AI 驱动的工具不断扫描数字环境,迅速识别和利用弱点。因此,互联网正逐渐成为一个**“黑暗森林”**,**可见性意味着脆弱性**。 + +![Vulnerability Risks](docs/images/Vul_Risks.png) + +Gartner 研究预测,[AI 驱动的网络攻击将迅速增加](https://www.gartner.com/en/newsroom/press-releases/2024-08-28-gartner-forecasts-global-information-security-spending-to-grow-15-percent-in-2025)。这一变化要求重新评估传统的网络安全策略,重点放在主动防御、快速响应机制和网络隐藏技术的采用,以保护关键基础设施。 + +--- + +## 快速演示:查看 OpenNHP 的工作原理 + +在深入了解 OpenNHP 的详细信息之前,让我们先来看一个 OpenNHP 如何保护服务器免受未经授权访问的演示。您可以通过访问 https://acdemo.opennhp.org 查看其实际效果。 + +### 1) 受保护的服务器对未经身份验证的用户“不可见” + +默认情况下,任何试图连接受保护服务器的操作都会导致超时错误,因为所有端口都是关闭的,使服务器看起来像是*“离线”*且实际上是“不可见”的。 + +![OpenNHP Demo](docs/images/OpenNHP_ACDemo0.png) + +对服务器进行端口扫描也会返回超时错误。 + +![OpenNHP Demo](docs/images/OpenNHP_ScanDemo.png) + +### 2) 身份验证后,受保护的服务器变得可访问 + +OpenNHP 支持多种身份验证方法,如 OAuth、SAML、二维码等。为了演示方便,本次演示使用 https://demologin.opennhp.org 上的基本用户名/密码身份验证服务来展示该过程。 + +![OpenNHP Demo](docs/images/OpenNHP_DemoLogin.png) + +点击“登录”按钮后,身份验证成功完成,您会被重定向到受保护的服务器。此时,服务器在您的设备上变得*“可见”*并且可以访问。 + +![OpenNHP Demo](docs/images/OpenNHP_ACDemo1.png) + +--- + +## 愿景:让互联网变得值得信赖 + +TCP/IP 协议的开放性推动了互联网应用的爆炸式增长,但也暴露了漏洞,使得恶意攻击者可以获得未经授权的访问并利用任何暴露的 IP 地址。尽管 [OSI 网络模型](https://en.wikipedia.org/wiki/OSI_model) 在*第五层(会话层)*定义了连接管理,但在实际中很少有有效的解决方案能够应对这一挑战。 + +**NHP**,即**“网络基础设施隐藏协议”**,是一种轻量级、基于加密的零信任网络协议,旨在工作于*OSI 会话层*,该层在管理网络可见性和连接方面是最佳选择。NHP 的主要目标是将受保护的资源隐藏于未授权的实体,只允许经过验证的用户通过持续认证访问,从而为更值得信赖的互联网作出贡献。 + +![Trustworthy Internet](docs/images/TrustworthyCyberspace.png) + +--- + +## 解决方案:OpenNHP 解决网络可见性控制问题 + +**OpenNHP** 是 NHP 协议的开源实现。它基于加密技术,采用安全优先的原则,在*OSI 会话层*实现了真正的零信任架构。 + +![OpenNHP as the OSI 5th layer](docs/images/OSI_OpenNHP.png) + +OpenNHP 构建在早期的网络隐藏技术研究基础之上,利用现代加密框架和架构确保安全性和高性能,从而克服了前代技术的局限性。 + +| 网络隐藏协议 | 第一代 | 第二代 | 第三代 | +|:---|:---|:---|:---| +| **核心技术** | [端口敲门](https://en.wikipedia.org/wiki/Port_knocking) | [单包认证(SPA)](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2) | 网络基础设施隐藏协议(NHP) | +| **身份认证** | 端口序列 | 共享密钥 | 现代加密框架 | +| **架构** | 无控制平面 | 无控制平面 | 可扩展控制平面 | +| **功能** | 隐藏端口 | 隐藏端口 | 隐藏端口、IP 和域名 | +| **访问控制** | IP 层级 | 端口层级 | 应用层级 | +| **开源项目** | [knock](https://github.com/jvinet/knock) *(C)* | [fwknop](https://github.com/mrash/fwknop) *(C++)* | [OpenNHP](https://github.com/OpenNHP/opennhp) *(Go)* | + +> 开发 OpenNHP 选择使用**内存安全**的语言如 *Go*,这一点在[美国政府技术报告](https://www.whitehouse.gov/wp-content/uploads/2024/02/Final-ONCD-Technical-Report.pdf)中得到了强调。有关 **SPA 和 NHP** 之间详细的比较,请参见[下文](#comparison-between-spa-and-nhp)。 + +## 安全性优势 + +由于 OpenNHP 在 *OSI 会话层*实现了零信任原则,因此具有显著的优势: + +- 通过隐藏基础设施减少攻击面 +- 防止未经授权的网络侦察 +- 减少漏洞利用的可能性 +- 通过加密的 DNS 保护防止钓鱼 +- 抵御 DDoS 攻击 +- 提供细粒度的访问控制 +- 实现基于身份的连接追踪 +- 支持攻击溯源 + +## 架构 + +OpenNHP 的架构受 [NIST 零信任架构标准](https://www.nist.gov/publications/zero-trust-architecture) 启发,采用模块化设计,包含三个核心组件:**NHP-Server**、**NHP-AC** 和 **NHP-Agent**,如下图所示。 + +![OpenNHP architecture](docs/images/OpenNHP_Arch.png) + +> 有关架构和工作流程的详细信息,请参阅 [OpenNHP 文档](https://opennhp.org/)。 + +## 核心:加密算法 + +加密是 OpenNHP 的核心,提供强大的安全性、出色的性能和可扩展性,使用了先进的加密算法。以下是 OpenNHP 采用的关键加密算法和框架: + +- **[椭圆曲线密码学(ECC)](https://en.wikipedia.org/wiki/Elliptic-curve_cryptography)**:用于高效的公钥密码学。 + +> 与 RSA 相比,ECC 具有更高的效率,以较短的密钥长度提供更强的加密能力,从而提高网络传输和计算性能。下表显示了 RSA 和 ECC 在安全强度、密钥长度和密钥长度比率上的差异,以及其有效期。 + +| 安全强度(位) | DSA/RSA 密钥长度(位) | ECC 密钥长度(位) | 比率:ECC 与 DSA/RSA | 有效期 | +|:---------------:|:----------------------:|:-----------------:|:------------------:|:------:| +| 80 | 1024 | 160-223 | 1:6 | 到 2010 年 | +| 112 | 2048 | 224-255 | 1:9 | 到 2030 年 | +| 128 | 3072 | 256-383 | 1:12 | 2031 年后 | +| 192 | 7680 | 384-511 | 1:20 | | +| 256 | 15360 | 512+ | 1:30 | | + +- **[Noise 协议框架](https://noiseprotocol.org/)**:用于安全的密钥交换、消息加密/解密和相互身份认证。 + +> Noise 协议基于[Diffie-Hellman 密钥交换](https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange),提供了现代加密解决方案,如相互和可选认证、身份隐藏、前向安全性和零轮次加密。它已被 WhatsApp、Slack 和 WireGuard 等应用广泛验证并使用,证明其安全性和性能。 + +- **[基于身份的加密(IBC)](https://en.wikipedia.org/wiki/Identity-based_cryptography)**:简化了大规模的密钥分发。 + +> 高效的密钥分发是实现零信任的关键。OpenNHP 支持 PKI 和 IBC。虽然 PKI 已经被广泛使用,但它依赖于集中式的证书颁发机构(CA)进行身份验证和密钥管理,这在时间和成本上较为昂贵。相比之下,IBC 允许在身份验证和密钥管理方面采用去中心化和自我管理的方法,使其在 OpenNHP 的零信任环境中更具成本效益,尤其是在需要实时保护和管理数十亿设备或服务器的情况下。 + +- **[无证书公钥加密(CL-PKC)](https://en.wikipedia.org/wiki/Certificateless_cryptography)**:推荐的 IBC 算法。 + +> CL-PKC 是一种通过避免密钥托管和解决基于身份的加密(IBC)局限性来增强安全性的方案。在大多数 IBC 系统中,用户的私钥由密钥生成中心(KGC)生成,这带来了显著的风险。如果 KGC 被攻破,所有用户的私钥都可能被泄露,这要求对 KGC 完全信任。CL-PKC 通过将密钥生成过程分离,使 KGC 仅了解部分私钥,从而避免这一问题。结果,CL-PKC 结合了 PKI 和 IBC 的优点,在不牺牲安全性的情况下提供更强的保护。 + +更多阅读: + +> 有关 OpenNHP 中使用的加密算法的详细说明,请参阅 [OpenNHP 文档](https://opennhp.org/cryptography/)。 + +## 主要特性 + +- 通过强制默认“全部拒绝”规则减少漏洞利用 +- 通过加密的 DNS 解决防止钓鱼攻击 +- 通过隐藏基础设施保护免受 DDoS 攻击 +- 通过身份追踪连接实现攻击溯源 +- 对所有受保护资源的默认拒绝访问控制 +- 在网络访问前进行基于身份和设备的身份认证 +- 加密的 DNS 解决防止 DNS 劫持 +- 分布式基础设施抵御 DDoS 攻击 +- 解耦组件实现可扩展架构 +- 与现有身份和访问管理系统集成 +- 支持多种部署模型(客户端到网关、客户端到服务器等) +- 使用现代算法(ECC、Noise 协议、IBC)进行加密确保安全性 + +
+点击展开特性详情 + +- **默认拒绝访问控制**:所有资源默认隐藏,只有通过身份验证和授权后才会变得可访问。 +- **基于身份和设备的身份验证**:确保只有已知用户在授权设备上可以访问。 +- **加密的 DNS 解决**:防止 DNS 劫持和相关的钓鱼攻击。 +- **DDoS 缓解**:分布式基础设施设计有助于抵御分布式拒绝服务攻击。 +- **可扩展架构**:解耦组件允许灵活部署和扩展。 +- **IAM 集成**:可以与现有身份和访问管理系统配合使用。 +- **灵活部署**:支持包括客户端到网关、客户端到服务器等多种模型。 +- **强大加密**:使用现代算法如 ECC、Noise 协议和 IBC 确保安全性。 +
+ +## 部署 + +OpenNHP 支持多种部署模型,以适应不同的使用场景: + +- 客户端到网关:保护网关后面的多个服务器的访问 +- 客户端到服务器:直接保护单个服务器/应用 +- 服务器到服务器:保护后端服务之间的通信 +- 网关到网关:保护站点到站点的连接 + +> 有关详细部署说明,请参阅 [OpenNHP 文档](https://opennhp.org/deploy/)。 + +## SPA 和 NHP 的比较 +单包认证(SPA)协议被包含在 [软件定义边界(SDP)规范](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2) 中,由 [云安全联盟(CSA)](https://cloudsecurityalliance.org/) 发布。NHP 通过现代加密框架和架构在安全性、可靠性、可扩展性和可扩展性方面进行了改进,这一点在 [AHAC 研究论文](https://www.mdpi.com/2076-3417/14/13/5593) 中得到了验证。 + +| - | SPA | NHP | NHP 优势 | +|:---|:---|:---|:---| +| **架构** | SPA 服务器中的 SPA 数据包解密和用户/设备身份验证组件与网络访问控制组件是耦合的。 | NHP-Server(数据包解密和用户/设备身份验证组件)和 NHP-AC(访问控制组件)是解耦的。NHP-Server 可以部署在独立的主机上,并支持水平扩展。 |
  • 性能:资源消耗大的组件 NHP-Server 从受保护服务器分离。
  • 可扩展性:NHP-Server 可以以分布式或集群模式部署。
  • 安全性:受保护服务器的 IP 地址在身份验证成功之前对客户端是不可见的。
| +| **通信** | 单向 | 双向 | 更好的可靠性,访问控制状态通知 | +| **加密框架** | 共享密钥 | PKI 或 IBC,Noise 框架 |
  • 安全性:经过验证的安全密钥交换机制,减轻中间人攻击威胁
  • 低成本:适合零信任模型的高效密钥分发
  • 性能:高性能加密/解密
| +| **隐藏网络基础设施的能力** | 仅服务器端口 | 域名、IP 和端口 | 更强大,针对各种攻击(如漏洞利用、DNS 劫持和 DDoS 攻击) | +| **可扩展性** | 无,仅适用于 SDP | 通用 | 支持任何需要服务暗化的场景 | +| **互操作性** | 不支持 | 可定制 | NHP 可以无缝集成现有协议(如 DNS、FIDO 等) | + +## 贡献 + +我们欢迎对 OpenNHP 的贡献!有关如何参与的更多信息,请参阅我们的[贡献指南](CONTRIBUTING.md)。 + +## 许可协议 + +OpenNHP 遵循 [Apache 2.0 许可协议](LICENSE)。 + +## 联系方式 + +- 项目网站:[https://github.com/OpenNHP/opennhp](https://github.com/OpenNHP/opennhp) +- 电子邮件:[opennhp@gmail.com](mailto:opennhp@gmail.com) +- Slack 频道:[加入我们的 Slack](https://slack.opennhp.org) + +有关更详细的文档,请访问我们的[官方网站](https://opennhp.org)。 + +## 参考文献 + +- [软件定义边界(SDP)规范 v2.0](https://cloudsecurityalliance.org/artifacts/software-defined-perimeter-zero-trust-specification-v2)。Jason Garbis、Juanita Koilpillai、Junaid lslam、Bob Flores、Daniel Bailey、Benfeng Chen、Eitan Bremler、Michael Roza、Ahmed Refaey Hussein。[*云安全联盟(CSA)*](https://cloudsecurityalliance.org/)。2022 年 3 月。 +- [AHAC:高级网络隐藏访问控制框架](https://www.mdpi.com/2076-3417/14/13/5593)。Mudi Xu、Benfeng Chen、Zhizhong Tan、Shan Chen、Lei Wang、Yan Liu、Tai Io San、Sou Wang Fong、Wenyong Wang 和 Jing Feng。*应用科学杂志*。2024 年 6 月。 +- Noise 协议框架。https://noiseprotocol.org/ +- 漏洞管理框架项目。https://phoenix.security/web-vuln-management/ + +--- + +🌟 感谢您对 OpenNHP 的关注!我们期待您的贡献和反馈。 + From 8c9e1743b9896f9bcd6f39eb32fa0608b6439dc2 Mon Sep 17 00:00:00 2001 From: Max-zs Date: Sat, 19 Oct 2024 11:14:09 +0800 Subject: [PATCH 38/41] Update the documentation for WSL settings in Windows 10 --- docs/build.md | 2 +- docs/images/win10wsl_en.png | Bin 0 -> 604938 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/images/win10wsl_en.png diff --git a/docs/build.md b/docs/build.md index 1ee9d0c8..79a76f47 100644 --- a/docs/build.md +++ b/docs/build.md @@ -21,7 +21,7 @@ This article explains how to build OpenNHP from source code. - **【Enable the WSL function】** On Win10, you need to enable WSL first to use it for installing Linux. See the settings interface in the image below. - ![Windows 10 on WSL Settings](/images/win10wsl.png) + ![Windows 10 on WSL Settings](/images/win10wsl_en.png) - **【Install Linux on WSL】** It is recommended to install Ubuntu Linux on WSL by running the following command through PowerShell: diff --git a/docs/images/win10wsl_en.png b/docs/images/win10wsl_en.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9894d96740d27c2cf049f6eebbfe867b6d84d2 GIT binary patch literal 604938 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

L4+HO8CuiNk`;)w(5dX(vmJ?-U8!vN_u!? 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 rpqH)VJyRJz6xuKGCo_R;bH85C>mrvWOg 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

Welcome to the Demo NHP-AC Server

acdemo.opennhp.org

-
+ +
This Server Will be Hidden after 15 seconds ...
+ +
The Server Has been Hidden.
+ + +

*CH#8+kvp+%s&2*FO+6A+I#(C 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⩔D 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�E{EQK4e7Q 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�a_nUZr=fbnj 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 literal 0 HcmV?d00001 From 5b3d29f14ec138b81fdd39c4c05f11ebe728ad67 Mon Sep 17 00:00:00 2001 From: Max-zs Date: Sat, 19 Oct 2024 16:41:14 +0800 Subject: [PATCH 39/41] Update build documentation --- docs/build.md | 2 +- docs/zh-cn/build.zh-cn.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/build.md b/docs/build.md index 79a76f47..d116e0ff 100644 --- a/docs/build.md +++ b/docs/build.md @@ -46,7 +46,7 @@ This article explains how to build OpenNHP from source code. ## 2. System requirement -- 2.1 'Go Language' environment: **Go 1.18** or above. Installation package download: +- 2.1 'Go Language' environment: **Go 1.21** . Installation package download: - **Windows and macOS**Environment, install Go through the downloaded installer. - **Linux** environment can be installed directly through the management tool: `sudo apt install golang` - After the installation is successful, run the command `go version`to see the Go version number. diff --git a/docs/zh-cn/build.zh-cn.md b/docs/zh-cn/build.zh-cn.md index 4a94a74a..5b3af554 100644 --- a/docs/zh-cn/build.zh-cn.md +++ b/docs/zh-cn/build.zh-cn.md @@ -42,7 +42,7 @@ permalink: /zh-cn/build/ ## 2. 系统需求 -- 2.1 `Go语言`环境:**Go 1.18** 或以上。安装包下载地址: +- 2.1 `Go语言`环境:**Go 1.21** 。安装包下载地址: - **Windows与macOS**环境下,通过下载的安装程序来安装Go。 - **Linux**环境下可以直接通过管理工具安装: `sudo apt install golang ` - 安装成功后,运行命令`go version` 来查看Go版本号。 From 0eff4f45af966d390663d3aeb2264bec39c7757a Mon Sep 17 00:00:00 2001 From: lzeng Date: Mon, 21 Oct 2024 14:33:20 -0700 Subject: [PATCH 40/41] Improve set-cookie for example plugin --- ac/httpac.go | 8 ++++++++ ac/tokenstore.go | 2 +- server/httpserver.go | 4 ++-- server/plugins/example/main.go | 24 +++++++++++++----------- 4 files changed, 24 insertions(+), 14 deletions(-) diff --git a/ac/httpac.go b/ac/httpac.go index f929ed2e..efd9328c 100644 --- a/ac/httpac.go +++ b/ac/httpac.go @@ -5,6 +5,7 @@ import ( "encoding/base64" "net" "net/http" + "net/url" "os" "path/filepath" "sync" @@ -147,6 +148,13 @@ func (ha *HttpAC) initRouter() { return } + if token, err = url.QueryUnescape(token); err != nil { + err = common.ErrUrlPathInvalid + log.Error("token error: %v", err) + ctx.String(http.StatusOK, "{\"errMsg\": \"token error: %v\"}", err) + return + } + req := &common.HttpRefreshRequest{ Token: token, SrcIp: ctx.Query("srcip"), diff --git a/ac/tokenstore.go b/ac/tokenstore.go index f81e5ca2..40cb40aa 100644 --- a/ac/tokenstore.go +++ b/ac/tokenstore.go @@ -37,7 +37,7 @@ func (a *UdpAC) GenerateAccessToken(entry *AccessEntry) string { a.tokenStoreMutex.Lock() defer a.tokenStoreMutex.Unlock() - entry.ExpireTime = time.Now().Add(time.Duration(entry.OpenTime) * time.Second) + entry.ExpireTime = time.Now().Add(time.Duration(entry.OpenTime+5) * time.Second) // keep token for additional 5 seconds in case a request is received late tokenMap, found := a.tokenStore[token[0:1]] if found { tokenMap[token] = entry diff --git a/server/httpserver.go b/server/httpserver.go index 9ff63f9a..8b6e4d50 100644 --- a/server/httpserver.go +++ b/server/httpserver.go @@ -287,8 +287,8 @@ func corsMiddleware() gin.HandlerFunc { // HTTP headers for CORS c.Writer.Header().Set("Access-Control-Allow-Origin", "*") // allow cross-origin resource sharing c.Writer.Header().Set("Access-Control-Allow-Methods", "GET, OPTIONS, POST") // methods - c.Writer.Header().Set("Access-Control-Expose-Headers", "Content-Type, Content-Length") - c.Writer.Header().Set("Access-Control-Allow-Headers", "Content-Type, Content-Length, Authorization, X-NHP-Ver") + c.Writer.Header().Set("Access-Control-Expose-Headers", "Content-Type, Content-Length, Set-Cookie") + c.Writer.Header().Set("Access-Control-Allow-Headers", "Content-Type, Content-Length, Authorization, X-NHP-Ver, Cookie") c.Writer.Header().Set("Access-Control-Allow-Credentials", "true") c.Writer.Header().Set("Access-Control-Max-Age", "300") // NHP headers diff --git a/server/plugins/example/main.go b/server/plugins/example/main.go index 8fba9fbc..19dcbe16 100644 --- a/server/plugins/example/main.go +++ b/server/plugins/example/main.go @@ -247,27 +247,29 @@ func authRegular(ctx *gin.Context, req *common.HttpKnockRequest, res *common.Res } // set cookies + // note that a dot in domain prefix used to make a difference, but now it doesn't (RFC6265). + // The cookie will be sent to any subdomain of the specified domain, with or without the leading dot. singleHost := len(ackMsg.ACTokens) == 1 for resName, token := range ackMsg.ACTokens { if singleHost { ctx.SetCookie( - "nhp-token", // Name - token, // Value - -1, // MaxAge - "/", // Path - res.CookieDomain, // Domain - true, // Secure - true) // HttpOnly + "nhp-token", // Name + url.QueryEscape(token), // Value + int(res.OpenTime), // MaxAge - use the knock interval time + "/", // Path + res.CookieDomain, // Domain + true, // Secure - if true, this cookie will only be sent on https, not http + true) // HttpOnly - if true, this cookie will only be sent on http(s) } else { domain := strings.Split(ackMsg.ResourceHost[resName], ":")[0] ctx.SetCookie( "nhp-token"+"/"+resName, // Name - token, // Value - -1, // MaxAge + url.QueryEscape(token), // Value + int(res.OpenTime), // MaxAge - use the knock interval time "/", // Path domain, // Domain - true, // Secure - true) // HttpOnly + true, // Secure - if true, this cookie will only be sent on https, not http + true) // HttpOnly - if true, this cookie will only be sent on http(s) } log.Info("ctx.SetCookie.") } From 0fde7f2772ea27475f6ab28aa7692ff95b44edcd Mon Sep 17 00:00:00 2001 From: xiaozhucheng <1115983484@qq.com> Date: Wed, 23 Oct 2024 16:16:22 +0800 Subject: [PATCH 41/41] update example_acdemo.html update example_acdemo.html --- .../example/templates/example_acdemo.html | 38 ++++++++++++++++++- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/server/plugins/example/templates/example_acdemo.html b/server/plugins/example/templates/example_acdemo.html index 5569f82e..c306c602 100644 --- a/server/plugins/example/templates/example_acdemo.html +++ b/server/plugins/example/templates/example_acdemo.html @@ -1,4 +1,4 @@ - + @@ -32,6 +32,12 @@ margin-top: 1rem; font-weight: bold; } + #countdown { + margin-top: 2rem; + color: red; + font-size: 1.5rem; + font-weight: bold; + } #message { margin-top: 1rem; color: green; @@ -45,7 +51,35 @@