From 0ccb20a34395f02e413699e1e5d006d98e73588d Mon Sep 17 00:00:00 2001 From: Roland Gruber Date: Sat, 9 Nov 2013 13:26:31 +0000 Subject: [PATCH] Windows user: support userPrincipalName --- lam/HISTORY | 1 + lam/docs/manual-sources/howto.xml | 21 +- .../images/mod_windowsUser2.png | Bin 46228 -> 56505 bytes .../images/mod_windowsUser3.png | Bin 34691 -> 37274 bytes lam/lib/baseModule.inc | 14 +- lam/lib/modules/windowsUser.inc | 221 ++++++++++++++++-- 6 files changed, 231 insertions(+), 26 deletions(-) diff --git a/lam/HISTORY b/lam/HISTORY index e193a032..3bf29d54 100644 --- a/lam/HISTORY +++ b/lam/HISTORY @@ -3,6 +3,7 @@ December 2013 4.4 - Kolab shared folder support - allow to set a custom label for each account type - Unix: switch also additional membership if primary group is changed (RFE 108) + - Windows: fixed user name handling, sAMAccountName now optional - LAM Pro: -> Bind DLZ support -> Samba/Shadow: display password change date in self service diff --git a/lam/docs/manual-sources/howto.xml b/lam/docs/manual-sources/howto.xml index 8559d0b5..87f3764b 100644 --- a/lam/docs/manual-sources/howto.xml +++ b/lam/docs/manual-sources/howto.xml @@ -698,6 +698,10 @@ Have fun! Kolab: User accounts get the object class "mailrecipient" by default. You can change this behaviour in the module settings section of your LAM server profile. + + Windows: sAMAccountName is no longer set by default. Enable it + in server profile if needed. The possible domains for the user name + can also be set in server profile.
@@ -2441,8 +2445,21 @@ Have fun! - Now you can manage your Windows users and e.g. assign - groups. + On tab "Module settings" you can specify the possible Windows + domain names and if pre-Windows 2000 user names should be + managed. + + + + + + + + + + Now you can manage your Windows users and e.g. assign groups. + You might want to set the default domain name in the profile editor. Attention: Password changes require a secure connection via ldaps://. Check your LAM server diff --git a/lam/docs/manual-sources/images/mod_windowsUser2.png b/lam/docs/manual-sources/images/mod_windowsUser2.png index a5715edf73bec27224f5f67405a8f9dcc9de9cf9..43d10859b298c411364366d059b234945378d50c 100644 GIT binary patch literal 56505 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

8rgvWhEt?I3AJ; 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 +-E!242hB! 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 literal 46228 zcmbq*1yogA+wP*2kS=MYqy*_srP*}1lr%_(lz<2bD9xskPLXa!kd_ANP`bO}PCVcL z-~Zn4j(h(x?jGZuoFp67X=NtlX~3?@1$Is`$Oa&x}4UOO)LyL}I4XskGqa3oP51%JRb8*_ue zA8;fKqFzY9yL;1o>nZK?ySF&qlW=LkPf$sOqHZQRlb5vAenf0ZR>Mou0{(t_@bb6Q zuM_tbO8e9fQ;FPoG?59?Ui0v^Bm!F&7F#l(kFpx25`V9dMXI5u7L#&GBi5R!9S|!1 zb<9}TSlV-c_*u9qpS!iz>_1D(#ew)0Qhxu+9k2HMj z>?pptgfo}svD0c4%VnwP_&&N@J8G65JzkhbQBV23Z?=)RcX#%l!ZP^pef_}VlKlH= zvrv*pfA6{C`+J7mR@WeT#J32b-r)x?# z8F7kqlh>`|$HO8b@zGIQ46kiP$&ZZCEw)~wkduDxR4ktMO^dot;_qCh$1UT@8rc zj;5cSp7LGIc3M_4g_~CF^^rXD^7N#8{CL8RfM@NKvBb6PLGzE)o-M^EtgH>L>zuaZ ztSdf=CkA>zL$_dDljZekSAr1ls>AF{jA16{e!;9W!q9LV-={rI#wP0ar$&4)qmOI_XB(fWv5p=(Dt;Vuc9WEW1cR_Vds z-meO?P!+~F`P>&TUVx{U!f6qn&H%1~frhq!e4J~o=W}s&eyHhv3i7C^<0Gw%-`QfQ zO*g|l7mM$}%5MFk=}9Y;sa1S4HElD(VNmN+E%Dh%V&vba!{E zy7=UCv%^#GxrJS#dimU8?ornpQ7R^$7tgAA&=?egBns77G+i+sQ$hr?vN9Ng=5&`C zj2+=-T4I>Jr3n^eqxp+-%|2Y5oHH{s?mIIil$1Nm%P7$8)nT+le@RJ6dFxGsajT#2 z#ZfX?#%!ZU^1;q*qwNm@H{+Yj-PRxwNy46ct+zMDvnlS?;ojqJH{i}z2V`Vq%Jplp zpfaOoJ!|a8N~x$=SXk)jdbJLQ$>mzLj`Qi<)@r+R&DAcZ!7BA^MoquUjm0W-`YbE^ z`}<|0$h{8!$XO<#mV027mS*M~>OzQ>yN9K{+%@hsXWAl#SQ z!%lbSC-9Z)O?M;GR}MqHDi7$*x$bLm$;|bddcyBp(ztK_5Dtmi*rjKUaZ!HU+N%mP zj5iNHYLu6ig#sokUkV8crKF?`zs2tXO+< zoavAg1jzTdm>_Avi;UN9Fx^6SV5)~zia8!Jps}&>hLX*=rOC1%J~Lww_T2esZRq;) z)b{k`c*0oB`$#rdjsEfDa^u#UwAx3KKfVqPaR>`H<>Ul=SzB9s{prHBZ0M80Ipkzu zxCfaUjVRhO_oWGWT%K&(RO>Osf+)4VI9gw3BbK?(BBeSy?|(a+uS~_xUM?5QV4dhV z-y-t#>0oE)>SlRsf-Ie4eQ2nRtLxF%K&0!dE2VT{5`6rTR{z_80H_~JIajSzw=z#A zno`93NT<>=QeN|BTa}2-fFIodbgiQ{=_2@M2F0X><>fJuryxPCdytTjnw#!kKi-pk zTF)QegQz(;UV(d@o14QRW;1uc?=6TNFgiL)$f6be_U#7R@ZK0G!zO;5_$vE(Y#tqM zDYg-WgoULz`(i2t zEU~(#2ISCbgWKlG?tD3un9Iuh+}!1x>q`*kJ6l`ixVTx?o+n$AV2@;^q(Xx4UW1PQ zF@wv#O;+rx$^)IzRM;38mphHSJ+rK!nAyy?T<`zx?2IHkJsc3*49hpjkAXECS{J6O z6j-rvQFkGZ0IkrRL`Yh#N>Vo2=&52)>6feV#N%38SRjbUGQg4&G0Awr zVoUS$^WDw+j`CnBKhuPW2??t$dWoQ}zP`~?^_69?_++unckkZ$U0+xaaOS+6wQqkd zdAu=ZyFQ#-s#mSoApLM34zKp+2q9qr3!ngHS&pxwbIH&u^Kf!gdD(3W-N04&mOyTQ4~VF4l{K# z%ZTDqBxt5v^R4s4!<@px!jB%km}~NaAAJ7&IXgSs_wqzaS{k05e0?(Q2-n4?5}m1c zSv>{u1-@$zgbWCw`PYa2a30&FdQfgFYidM6{pgN;3~I^k#b&v4A{j33;_fae+gG4F ztqIg1K_DPfpT1}VwdxiWvbUIIHa*H|f^N$_@pX0l{{FXAerMml?m-LVrTVQ`2fg46 zL3mfb`YnA;v9i4U#IV8j`r^1hg>M2sXR-J@`5sJ3X`KAL)Ji?EajBud+HHGSSI7ku z6LWhix6(c2^fj&RsfwD~-Ks#~-a|%?yEGd2m8sMz0n2op{L=B^;^W7Ufq{XqMd!P_ z@A3!^`p6zghL!Yb@BlEeu_w4wg*@0QvtIl9R&xzG2Ms+L9XYIf_518~OKGWneF{A< z@A$+-V!!3(<>f6%=!@S>pE85vHQNa>-ldv$v8@Pup@p43%75sL9#>yV;Q~? z(w(tGInL4d3S^AY#Ror}hiFDo4k)*J6;rc!U(Tv;k)eNrrX-qV1$g(f#nneiNz%4&nr z^Me#c^F0DU9OjXSohP+u+@xMSEXd=OynjEm4-|k=jTIL<5fNX|H2_*2X+d~+?cMGM zVmrh4WU_YNueV96nz%@rD+e#;TPP(N3`vYYg34s9}kh$D#E%XBK1 zKw9>NZD07P6pw*TZD`ij(;Mb4t=GW=u=CYa6pl(Q4atUkkZOFVqQ|} z8FCMq^&E0TyuB?ebi8ZGVzbx&ZWe)*I>CPS0t^k|>6gl)!cS*L49AD6Dlx1p>~H); zN_15p-UILc07V8N;E8^Xu+Isrn3(@a9<0`379A6F3=5uYiA8?2HF>x`lCLOm2n+H0 zVXCP3UXfvh+`t6R?J)BYx;gueU8vDR{uQOPHCoPVBkH=PT2z9rR%?S< zrWI$POfQeGj~0#q1j%kt_tbss7rjEl(-3f9AcI-7%Y?m;)^ZgRAG|MpKRm3)!oqS* z!C)I0jy*xzA_$4&AeUAfm;bB4_G+pM>I_vVAbs2P$OsDht}J$41wg>BU%#B^^WO&t zBQvltkDSCRi-x^>H&|M3*x%8STTt*W+3(;_SY8vTEGQ@_-lPd$Xv@Cdar#y!0}WeS zTLkDKf%|cbR#~j7xE-8~Y`GB@DjJCAYEEuT%o?9p__Jtq8SG4My8pP+vRKroS+VD; z@$g9Vo3_6LWTw$$H;PIuo#{n|&hO6Xe76`=1qB7L0q?(}g-9kVCS+td+S|{9*aPsT zT(26vs^uXE43wAn)KqdZvSQy))Zcx^BWplgoMQKV{rc$iDY$N2903C_v^HLvvNO!$ z4R(m=;lqbSMB|MfjzU6>pf|3qS*^^_LMD}yXlQ7nqM`%oB4%u>qfIHy-kn3-X(=f_ z0FPJOP9T1LPr@}kJe*YSWD$2B73GS8j0~vJG02C^OmU$w5?;GsAZ&x)ylFQD&?EZU zvuD-H^rN(ljB5+uf-?MX1R!#-kqch~m$lRjH5L~aL8EnXa|4L9w6W1gisEfZh}-Vm z?A%-nc(_DFM2asYBm!$|Jpc-Ec5wmA(hniLSLe2=1sD=U{piuRfq~s?p_1VZD4?`- z`*?Fg$bGA;spMbVTf8AMj|*QhVDngP3ju}EcCM-Z)2B}kt6^bb-~tz*WxLG}eUgrZ z3wbz5eR~>$bRSC?Ktq7o(J?S?LFmKI0}zn1KYaonqC|t4mWBp=M6BPTVdnaa3ZtU3 zGT-0V{bnlmx2Fc6A&8V2)DMF$4@w!hm1|Jzy_cB2OJ>#(F*1htzQ7lUaK7HFgZF%7 z3d}*>+4QMl9;>QWaiFJ}zdbC8;gH-gOoqeD3>#}+4y2n_Bz69-Z)^+=4t8A|3`{Pb zJqL9oh1g68Q{CjjXB$X6LZUHI7bd}41id`3;e;@ z@7$t(?BaBn3Ln1`^f7Spje!hG(bxQbS7(5|+0E3cR)!kYJ1<9z-K;GyA1@~w10Y56 zkPP}fxdnh=_>#=AoG16=>|qm6FK^ zKp}{Wivzi^0+4kpXu}i6{)P^A@I=u6Qb1(~%)J^Tt0|fo$!DC$yz4_!QW7AAJJYr0 z!=A1vHB5c6DwdKaH(}>F0Z$yQ3cuh4<~`-o7Abl5@#bkkZDm?G4!7E~Uu8K?$WPCC>}jBIm{1%hqX z15!6GI_`8lPH9#m79pYOA3yTSkR%H7+B-Uabo?Mu8|mnfqQhIHyhUnX{UCNUAnY@7 zWge5%ul6n&5o*xU%T~ijnv%b$`3Q--UC-SKfh4q`5dcE;ZPWL~HftQ69Fp={A-ffP zTzF{n)BdX~xPw8fjjSLe0lI+!JV{qake`2n@-}F!*y2TbLdZFN>igIDkd=9E6&?rQ zpQ4|+8Zo$j$h+vlIKu!Jz0kVu{Mg>5o}6g&dou~)-A@N)@^(5= z>0^eoX+m`DEKO;sQGtLK64IfiC5a!4O`|V$r#N1$jqOJsFFRYf*R)Sgew#^s94jZQ zwz#xpVrls?R^6aBFpK$42{8=4Q&F=#w0%gj^k5rA^0~QMT9yMDt+Gmf)QP>Iz?K^; zS5)90)-|2#j_)mgpU{O=1`+FB1^}i&#H#Zdl&7X9;b-0j345Z9pqKmp z&uhzAj@iU~XS!sSjX@+*INy8WU91HwDeZ@-1?Ydfjy_38>-|xakS=nI6-6#^0FX1_ zf1uLn>F9i*OOB0o0dNbnU|7=AEKo7rC`{~&=Q`W&G~I%PF(c`&RTno5xp2l9XZbi} zCnHSsh6diges)~co8M!6WkHHOT6`~M zV~!3F$%NcXK-bx6(6)B#d6L7p0s7(4&=6;G-`JQN;Au5AHHy%EEb>8C*+XZ*C)D#4 z(Xg=x`uoT1@GZMy&kJYeN8DHXk^ys}LtTnsZ}B`oSRVQ$1JD7_wEBSbpkYG#1?051 z@C^{Ceb1&x&)(Wi*TC@mz6IS^&JgXlth~Oy28vj>aIPP?d@qo8XMaDM!8%{7e<# zhJhzz1E9Mir>g2>@KgZBF9qleXkCCO*8=PUHo&0ewHFX6Ar%dcD%**&&53e=(81G8 z7xnc9AC-`h0OT=U$fL~t1E9PK2?>A)03}YR)*&sgDccjGrlB#N{9?h&%L_^gCI&{z z(-&|4_4MDrd-s%wXSVJYEtCp~JRqGT`N|Wm-|+G95?FPY78ab2H#99%$oZWz74PXv ztEmkGVh_UQ1aN}Ov$HFJ0lK@p74@&lBs_GzH#*zf|E#Xw0#$*Yo_>l^A#|!{PP1Xh5O~&WI3RnyN=k)&U*_>?pyRbf1+D?-x=o6i?i5qVAhhGNd zQzCH*-_NTiOAs)}owQZ6)Nk#iUq{;=-v+1_gjD;Y6VR@+yZ=BYAXYI+xu0@y?4O+Y zT^uo~*LfdrfabJ!{yI<`hk!ssN2j1QmPtJiL@E@Jm`E%a138^+=^7gw6GhN}ludY| zKMn#KAiFZ%$`!C@K$}i za&nv}n&pet9bPCZDuRyUDNGsNd3bs{5os`yBNt0fL4o#W&@NU!@*#&L9p3rbS%F3o z$R0Fg#O)eyUdj62q5?k+jZu&Z{e6AlZvz3VeEkpTu`Mkv25i~@n5+%`2GkX<3n)EM zG^VB+6u)}&M!3g@C)^E=#)PW*q?3{jQFHg7TXKA!Pld@2eT`wvO*9X2R$dfxOG!)X zUp;i|<&p6_e|-ZW8TT^Knd`g`Ew!}90XpS59WN}v_wl*pq~~*-Gx%(R00Hr+71TBm zU5e+yX!vd4zaxAFdK1nr%cZAPtWmP7N!9Usg;x>%gVNh*B7Iu{od0Po(!~#!aQd!t%MWQ z;*))k6`jv)A}Laha#9L+ldz4nsa{l9YhU98 z^t1U?qX$tN&HjdGGs1?Qc4q2<&;#mdjpO`WTbn5;6&FG;Dte-_T3(+I|M+nax|3|Z zk8NN;g=KOnGWGUu08ltRKp>TG8stmWGt-?ZOh@CaKJx6+;f*-`0*VK)k>#lKc&1T@ zYz4k9&WQ0VBkm)+VCO{5F=HCJ7%-GrPJgGXivQ2L`$0R)^3FfulvGoaOvgKj=ave9 zBNC#Zqvy~S$m&U{j0(-619Tu=sId{{XJKi{`8^oSq2T-VK=&!rs}3ib=3Zx)rWvd0cWxzD-n{ooSa-elM-P0H}=`v6l|q~mAFM3tw81h>47H_$rs%t*1x6D!)8}lk|-3@5;>ySv?88W@0%Kn4zmD8oOnUK z4XNzLY{T*K@ih<%G?>RiFo=_W*S`l$hLC`uYxy84=^-{YcAg3~4#*P__>Yy-?S6gE z8dh@Uu^J4RJoVTZWfB$!2ou~+=-anH+S|dn3*f}m)Knm###@g8*%#DM7J_i_4iNkP zNx&PxC;-!|H}C^l%)m3MnLEZ*dnbavdi4rDL^4aI{l^bpaDAqim6O_K23gh@AgKXz z9I2Gx{s=lb5pip;Z^yA+F!R{%Nd7>fdj210FD0d)pt^A{XZT%Mzkb~W)+9@JCuf2Z zrn64NJjH6EQT6<;0nZgSbF{5Wouv5vq+!I!gczald*}f<0oioUQ~M*#4;HP+o|=3G z>J`vq*Z%zB_BpYGc_p$L0>qH1RtVDMPVpj80&pB`q<*b~o2%;sbaYcThOv<_Hb=)@ zAb5CtdMbhm2{*SZUXSF{CR4PGu-uCu3&;wIaQ%i1Z zL8Ywn+&6^=e|li%yrk7A^aFJ}L&S&I?8k#F6@Je>lm1LYaq+L9{eU~j(kh;=vi@%1 zX2jM{I6`Qjz{#vf1JIhrE)I9H>QGZqDElJ7ARq=nOaKn!2G-b+-;VGVkdocm#?vuv zg&CNK8MX$yd*@f6=mQbT4g57# zRn>tEvBchG=6Gf?v0ES(fw~QZu#YFzxCP^iDZEcaMU8UR;^X3iLqmOhv=8!)sS^Jd zN*r?9*Tgo}f}l|h=PD?t3xAZQgG{WgL4)iClPIlH57g&o|KSDDYxck8mp;P+VmwIA z9l#e4&R+wN#$om&&d2vvv(eqn9$`Hop>6+Xti5LTR_31>xXSXsPxAjK(Df)#g277D z`0pm`!77G@bhIT$Jp|yc!Q~zad7i1|y6qKk-2L#wf0>v&kLsi-=E=(c?COt=OJKHT zqs~#FUYMFn@~V18gzn`=fpPZjEv}D7#ehkiK8R4WFli@xPW{^%I)O0>Wb6Mg%wIm z5Do^#G3v~(|4`q3$)FGyH|^_WeLH)5?N3?M*E+2DxoTh(P7Us1jn;fk)vVqimxMxt zk${AR1h82;xp5s6@VPtesy2fIELK_Hs<%mK)1d4_DH2jL$BHzD|EKFSU(@Dw1`Fa?*?e7lPnfiY7>|F zjCX%R8|0Q7B7mtAz?$Juc(xU(5n&5kmX(RoFac~xT$MnoSu-?`NlvcY_*OdOOnvZ+ zMJ#DJ`9G@|)sTMZv-qMmYMTMe&X7*ENLC)EMkiM|8m9*_7 z8_Urv&C|5egB8lf6h12&W-qH0esUV(Fxc$Ex5O%|B7)c;t#TtHNoL->bliG>f!Jvfw!yHt-y) zLPfccHt;+fM!UavOsnCtiaWewDJ(>W@GYA$oFVzy4+5!}ujJ43bnW2%S%Fe9ae83x zO^^eB%@grf8)g-rz0j{}hA6+BfY*H}|5N0zXGKy|)r{m3CMJ2GU8zn@O@bY-0!t_@ zWc75h$GD|WSuUaJ_0PqFK6t%;T?1OMuzVpkDi9MO>Nx`sNeBTM3jMy~Ea0&_k5sf& ztoe6KRS3rxs(*09kZ`cD#*tOsRmv9zMc0dV71v+7(-3|O#f!2w`cxJbn>byyn=?kv z7=90)$!O{M(Xvv9PEL&u?W^DI-rHycCzJVd9&M_>(brP2e~BAoKIwA97{fMG^CO$F z|4ljG!B<68SV;~WwsP*<-EeO_7InrX8)PVjdeo*!gI>FsDJDlYTn_6P6X(Zc1LM{g zweH=mGGKgDHvd^jbWsp8@eaLPaC^Zwj<#?{s+s(Z9GpDy$^c6Q7$gPtujUF(m$Xc^ zlC2 zwVA0yP(N6BG1ZP1Wb2Okmnv_>3wEJetkUYzqd!G@gMy3^0P&)zImF7;po`Z2Au*Ug z`6GxSE+J9&fK>l$Q-bX%!5}wmgg|QOf}NX}i>vxGPOIm~%>@%A=p_w)=ldOh2F_PK ze+D3GzFKisA~0ThGp@R@NK4$8c6k1AZ*6tJSWrkvF@u<)tEk4fwHI(^2+T0}o__B16KmW>% zk$4eQbE@OnY)Q z>Ab+xg3cPT#L%m!-{!U*9eFCSzrNGpCx*Ryn)P#H4suA~l z=m^p91Z0<0vXPVVKJDA|eK8Z>(;^ zeC%d;pgMoCQp4$l1{j0V!{N_aBGH}OVdDBSFubH>TBaSEtV;oOP={ z4sv&eA!|czn&c77Z`B|U+K>osg}iOXv_=_$^$Ay>+fH_=XbOITgM2jsSpsU!07V2f zl%&INu&v_@FAoAt?n6bP>j5W8t0Qq5wsU;?@5 zDC|nNWC8h_v#IPFiXVh{vm~kGj>#aBw6%3hxTHwD+x{Y`L zehO!8&UjNvfdTbGf3k?QI_0lg7OroLpF5+;xcz3RXMufcf0Ny~)yRX_WrQTMP+hc` z+xhQSPie=JJVF3wy-PIrmu$s>5D|usok>MtM_>$%)Wkh!vf^H9W(a!9gknL&2#t#O zOfkVoM{)q{xEO1G$vlAaxA?1Qj;(nGBd2sAddB04_U5t8&;&}Ua4Wz*Tk%Hpzlf#p zQHnh9y6P22kVT+_@E|7fM+G`_Iblpvh4bW`mP*vz3&Q`nGR^Bq$!Y1JUt4^%!5_#Xe2+#+Y1>`@IzkKd#*X6Y%N=fHMi#ca5ls+au^>=Vv9`}CrgRC3V#B9b zzPR$vzcC+zm>~h^zD8Ak_-{o}_)XJaUR^vU`xo3UG6Hs;VQ!%EDJuR#jzEEs5g=q( zs{ooxZk{##DPhXqRJn%baX#HkMV)8?avq&uDkbC2mCE&!2(UtH03S#p#&BMa7nM5P z5ztgX?>}h%L!gbr`wv}DKH#zv$+ZYBU0!T_;9Es$X?c@mB5?5$%Ww>x9<29U?xfut zW)wH35nLDLXGAH~0jyn#L<$PJtj{up{z0kCn(8DkRE!6hdIuiQ`?fJueQD)Oe9-EJ z#to3BD%~Kr)JN{zdwQ6lU(*c|K<74Z@^p|16cprh2AYJh3$s4|ecAxfSp?4+m7bR4 z8q~XIWGBhI$MG(Pqem*tn#EeTLq94L z2S>-oTMP$`Xg>|mkGrWr5OO2#HwTTsbimt~YAfnTm*%;i*~^!!KmvrsD=m5RXdEzu zgEtiA!b&FcKd~D&d~0HT5}y%Kk3;5hZgpmSeTgz^ZwKnRC}Q2Ga}z)d2vCuMxGJZt z?4Nq^o~|4I4sCsZ^64&o^Y!wrJx~GP#>Rf9O3}XXI0S+~M^Z(l<6KkoQK&Ju}Zx4*6r|-P23XhuN^X_BS zp2&N(ik+KhshCl5HoQ#69Nz#VtA&yI9Ua(cyA;0%Oomsp;nUD8JM?wYUzzQ8-VvKJ z2Y5QII--rSDe$_EerV)%KbTGIJGz)pD8FirwBe~2Hoxg3`JHUzu`3D}dAUAjTZ{T; zZE1Efx}U|+fOP!8{S3l|Zx?JXEGodSeuIC{&F!W{SW#-LIfU&fhiA`aVFfWwq?NV) zaTb7eU%l2JpP|vK*?4t(^ZV1Hzcpu#e(g?Q8Zq7%J0p)f(@@fCML=7+C>W-Q-0^#K zU}rG@wE}J^EP=CM5$fwJ^ag<>tL7cP&;`mpNL;4;W}^JDZBKLaw6WrY@{iTmCRQ(9 z34sxOh%7mI0O4!vbcz_f#$G>7%p<@n5%H@s3m@XwIgykc(P zlvA@W4-979K@&P8eOR(^!_!;$wS-%wfQYa~?qrFg;WEQ8C;*HSMt^MpvAD=Se#h$J z)MZHgZEaZI`u^`XE-ntfqLz%Xkw?7~q;++2#!<}7bzHC7obsshK1@~`G~!9bl5i*Q z59J5lYvXA1{zUWxRmzkvx#Y;=#GjW}Ywv`Zb!E5xN145mQJ_2i{rl6a17)_%^Kt^K zJ9AA{8f@HdJWXTQjjPoeiVvy$>95w3yDDEXF`X`MJNn$Y$t92Va)n4|uiq5v_Qv4p z{)|YesTmg#@H&ag(9zdlS($lL>jA1}1z|qsMO1HQ%s+?*OjM;=Wj*R`RJDpoe9Z|Bo{u%(4{ zIt?omDv;IeR6NrkXIR4ZQ+Cmlz4h2eXkmCcWvn6mn2?gEjL&AVpyD~r_6F7K&2frt zNiMDtssz7klN$nv|7y2;VIa?XV0)f@p?#ks^YqB*yZ*P$*eIR|Hns#&AMa`jBp+cL zkjPYl@*dm`87DH)QdpFna)&V;riQZo!}W)cp@j*1E7K*Oyj1FU+TG$P+6k$VGb6?M zRM43_h4W&Y8_a6}ns=@ojz**8k=CRoN?~ZHFuIz(s~(bB!0+pDQB~pL*!gr<4SL91 zHGk4NUf0OC>I~c3w$D={sdU`kjd$12)e@??-B@4$xq2wNJ^SQhOLS0>7|fzoe6`o3 zq$e^1Gj^sg8$)Fj*d}r`i-}}zW_xmiAe@WNfi%JDWoHzZLW1{i2T=SC-}IYPEvA8M9{q>=GrXW|A>9iNV1}lD0PS5n*DQHqrmw;&z$t3 zMxt^BM~Uq}zG=@mtGv0n+Ve%#4>RFocFCo^$zu*##T_T}q&4p)N&w9zKe2Ao+s)k{wnvV`EQFNzU)hc?( zbHmPqs5=PJocmeDdCBuCD0Ce?(EEY+6$jzoriGf-^VTQ9D!J$w^uT{1r{wi+othI5fd7;2&Iw1+ z+(Peq;@d%U5p6(y!HZNAm>B^mWF<<0!$tkGiZ*rTaHGJXoH_ni!bS|SwXTl5uD?)S zT#6g8?q`u|YsB3y+@vKu5&0t@A7HFEu{i339x~k4<|(7^C7iCNYuu_tri~sgYAThi zd`Kl$u*ta5e2G1R0F6kP3-|Sx3c7DSfat=W(TxRUGn$c6Tv;uYV~+U@#NHr5)}xkQ zR~gXW(s*P;Q~{+ra~u=^7SD{_iws#cL`9RX%KhR?-zyVaT$cakM%H}^ye@g`9=1Zj zd&!A^j3t3{eCkblB_F&|J2Tp;^=dQyxjx@M8756c6>MIhd)UQOVN0*3Y;zFkyVQ>z z!?BF;@>k*fx&^2KkLwvQOEqbI>4F3kM%}D5f0zd&?`wINrYwd4Yx(+fpPkV{^(S<@ z-Hj7fLj=ncZ509(28NAMJ8#>#$>dw)*7yDR`*W|lwu4NCb!UaJKaLCZp{h1_dRSvd zyA#eQutX5@x?3&~s7!zv$Oj2YEM0}=ncQ!g8in!94I%j05ISAXClm_Km}})Y(;Knz zEOqBi!9He2F2MpS*a(=)R8&;ph2`j0TEd!`Wvx~^FH@^h>OnVFe6In@d^cx}hG zfOiiVUGI;W1C<{f>$n?cuk@#k*&G9>H?UA4LPkbL&)z;*bmGtCf(n~wfc6YVwbIP- zHP$1RTfZt^i&8RNneXo}A*93CL5lu#%3~-%yD1KDVl0uDV}OA+4-*P(1FnvbXuuv~$$*U5;o7=k!Bu>ht4_a8jW6srOL zJ20e)c%BUgc%NjVqaJb~LN#DU@%n5J%x8fK&ZyPTuvQaDoBKU@8m$5z8&}zrAEa#u zMCujA8W=n#AD*_G@#h7NEddL@vEsw|MIfQTc}ezl_p*ZSb61)UWKa=sXGZ$;>T=~N z(BZ+n_>8GMCWv;*p4`KJATQsbX)V?nO|d=Qn5chfDRF%m6pf!he@=-UZB9h@TXL}j2s~P0CKC?i*MozD1~7xE zPqXC%LlVAN*a;Z^f|yXOm(1$w?|;I?#KFb23EbEY!ssE{H%7W|NFI69AJ{de_$W^# zh}?gW>UwMwllS`iEd_8YdtE*-yjCdCE44&Vsb2FtwozMUdnWCFqnYdnuU>0$yhXdE zq}8uOsjEMIFHANNm!E5)lvdN;$zEqsY~+jBDI@jRX5-f9kD^SuM4BMBDDEq^qk-ma zp?lVRC5-nXr4b|`6B6zLn>9XYkS^2T&4HNqr1gVE;PnN)L7nI6O^{>D_0C?_Gq^6F z27^;U|t|5P7|qIqaA40^2?u5)3V8cqH~PK`k4%vziAwzqx1y%RvZqzL1M6IOc z&~0RchAtY0vw(+tDFqCd zlfOeG13!IAbI|U6)?zc}dsL%fRz>+ifpoVyXO?VEYm_XVcXI4^#g`Tq*L&Be*B2-2XWfst zg{MByS$m2}W(|Ibb_*6Iy%RN>7@_{wEyO*?LYs}Q)S zWpF^IK!Z769?UPLfSW3Brn`H+Ed+x=%HriqD$&#xAOz@+uE=l9YQ zIyySg;Ns)sPkxyv$Cu{s_23=#Y-r9ar60`Jw4V4+HEwR{{{Cgh3+3clR@vUJP_ssN zjwuQWOlptDM<{%E?sc50qagDT;NhVaSZ+D-5S5Y9hZdY+(AT-SJVh1}j!aUE-34%x zhK6WUC{#{M&D890L!0--)~fHty|Qcj=AfV;Svs4cs<6dtYI8f%=^_P<=M@hEG6NZ` zNEt~D((2F&O9Ye(WZV86f6i1?;;St;C*S<8s%m;S^WIKO;k8E$$jrDC771{BTf2e01;zs48~_7+a1JVgX#ki@qM{Py zbAjIhpFwfZ5O&wxAK~mRJELR_m>DG`^n^$vfS~!*+l@bMY~Fh1d&pK;_2-hl5(=Oz z6k__g%G+*#xw|NXrE?yG5(m6F z!lJkC@;yHQpStk5&$YP{NoFrB3{ms)*7!tID!wrCYl$v*Jhbe0Hfj-eJIHwio@td` zyEzgDq0}pWJ493n@fW16F2G6uf#92O8W!`IE0RKPnwM{bjszd=)%EFoZz&TFDuYsL zf!E~khKgAsPH0bdel*}vMeFMguSB~fX z6BuIWIU?#mEh{H(Ys%8{W%$JAkE*INZgyYhy`FV!^=&n;XiV8$!~O2!VyrcVEh+5~ zS5BuanT!^A{&*!8v8E|2w?`5g-qvSuoQN>o5LJbq6iTY?`k|KLxr|Kj@&Pd4zk7$O ztUO?|ewe16W%M$bU)st*I+Fb1LF=(txxt^Utt2>nzm<^eMHU(xLg z)=iYq!;Q=JHPxUf$_P?1hXTp0na16-jtD;YZ3F#Rrx)*@w_y-F9cnDcbD5HG#zGZU(fR?B$gV2jswJp*vFAc ztqYHl$h6EJ0N;VcxrNr z|Co}R^z@h7CiohPr1fj;ylUS%*BiJPX*E9^G?$jTvuhtsK6UJ`s;xcsVS7&^KSrrC z#x``_J+o3#(ifLiVPds^-9$qF(}jk$G90HI}pG5+|#_S;%W$gC@9@!I`+HwC644ho1vL=z{^f| zb6qz^LrjuK-S|<*_~B~Z%W4o&3T#~S!M8MpH$sVj2r8&75+QLHAGhmnX;9&v@e}qq?khQIUTGG&W3pc#!yB9s_U_>xKe%Jm-rvW^zj&~-)T>Fw zki&n_BCY+F!QoDU9n?7!6}MpZKGJydm#~JI3?cem3;Cb{SH|U6vu}TgVE?z@yzrl7 zdQZAcrrtQSJhIfnu=9(KST{8DLUMTw4zKCb;x))9P=;*Cl7BZxG|Kkvi z4g;j}INGT%_Vb8~0JpdqS#{)@ndeuIB4cp>yGtkAp};`}XfAM`m^mHftu4^M@-7RD z4GD)lV{C^9^>~J5I19{x=lkt@)PFIeh7iDsURrYCzeS}K{k^kYIYvZO8JYMB4qlagIZGWByhdD-a3LR!FBvyFQP#XPyV}oQF zES;ZSHL&N31BT9;)yP4jP5|}jSK5q$V{zb@79?t~8fBbNioGy}v7!PNp8DTol8WX8 zckMph^6WDpaoXh!ZabXjN2|sN;(sPR`A*Zzp7>xreXt#K#qzIR~j9?J?%=4G71uOqkK)XWU!Xu zGwtzU*Z~#V@MRYz7E!=RkveKA_t zfQ6nF-PxUzeP8$L#azj2w8_4}vA&O|Umm8f1SY?mZQxMO%DM1CGbV7xHYOT#%jseS zQ-+=j$J?-^HIdevFApKh0kp}wM}Ky_Xw`mwRhP=MFUWH(o=WNcJfw$7c6d8^SepZ#KGRVI3P>F4f*!~X%8o5RZZynEjs zx5AS6UyZH}@z&JPd@RuCy9MgVn%3sZ=I@=Uw%O{Ag+K{8x!NR2;?=iPZrtol;Zp~l zmh)_Lr85Sd?@0^wv$C;pFV6nElra1~A_$LAlIf8vmfD~H0c>PcEihD0U4B`LBFP_F5~3EoNO^fHg$nF9j;Y(q4ohc2?}38e|0+^k$!`}5CA zKuuj;UKZfzUn`7_kFT~kTmkmO74uaBV&aeH^g^X2C9GMp^Kz=1+c;U?;dz1C?}$+x z~crlu&i++;h*_d;et1iQ%=KGGrx%dZS54vx3*i;lhZvb7x=NNQr{5WbpI5)@86a4T*>xnKZ0|`Q%P&p8PnQ>bm`j>0Z1{+qz2(@{XzIl*|JI7@$sIGA0^Px z^5k)!@;Ra<-+%-rNez`}iq9>${OI`Lf#{>TpZ{Hqt#4ZFzv`ozBe0r4uo zSp43LTf?WggA%C}+pk}YrJ0;XP%%f+sqB>=w=kM)E|u7I1OuM1?e2?-Vy6-bV(xwT zM3HP#fkN(?VUsHXoGi6jKv$2mwA2H;Y&j!3IS7g+zV`K?*y%mdR&yiQv3sP1GhFg%sm8=qZDV+UZ?oD) z!4%=PX~z}8{bG``ZcfvPuBsHfr&yz4Vx8b!sZ+q5MNpy@T-_%vPA}71fq?N15t?TUk zA*sR3AEp$S{l(jiM+^HqdKDTPYze_SWeNA=rmCN1b`ufFV@Qn*>6OzyY}7|O7=`|_ z?X768BD2W+NkddIbpqA>fP+~_@tpoeS;%`fqLd#;yjeeHIaY+>?X^T4wbg+7?@@A5 zQf+6FuhPJmN}+l-C|mEgm#lt!W9p-1EW)?FkhiJgBoIkB5B*P zPYRS?FVjTd)@NkYczIoS?%gvOxHh^Qai!kf7QV-)#T6AL6&1K_zXsrIbP+heQbs#a zZ(WHh4al=(hnRm+5g_zz&TKdpXgzthiu2$jeT=I9Z`_g1*Ad;5V`Y#DNC%FeuU78+ zI)yiDV-nr|Rml_f-E)S&sa|jURl17(R3ri{-WQmAFAn$ADFBaYiCI-Oeit@SS{kJ~ zMNPAlD1C0YaxbEro+{^vq}gAd0F;3nP*LsaQcXYe5k2(OR!=nF-=}y|k$-t%uM3q{ ziF%+Z_u6D+<2_KcPh|Jtdtbctxp=9c-PVQe4P931IjWW*E&9Z_%#y#1BTX8GyA<{F zT7#JZM|2<~-|(2eNKw^3i^0)d=qp5$nuMg#-pqj@NggL??C#5a_0?jj$}MIJQxA)! zw24sixmfM{VZSp+n39|OIwJc@V!_6tKtWP+efbwr%9U#nDKv6jl9`LX%i!yssd_2%q|k*2=T*dDMkJkF0U@!MG#;h0n<qI>nVjIKEX)#*MY{@&2C*BVL)n;+JmvX>9A)DESTLNTPbM~U+~i?Vg07~ zp%pFud8a{5#yM-M5dAvRqwJ@RWOS3}_ByP+_+sMBL7?|$uLoS&r+bElt{blPp&HMF zeDkmE&h*?AgvYE7&A$sPfmEA$-Tl4B)pKfkx>eT z)+_dTV~=|d?@z?5Tlj`ZWXaX=6eRWsB8pmnDFh$>v1sB!Mwzmj3_-}xmgc>|cEb0@ zcH-L2LFr;D>&ODR-A{PE?oO2=uQU$&8`LlFvSj;rrZ3S$Cj)y(30cn45InUX*M0VV zhQL$!D)fghOK{OmR>{*=BPERB&N`ngpJIR4M*3QT?}!UoZ5`xH7Q1>|fP za4o_}X~=mr2zd~uG;~4RzUTRcXXmMz8V({N#?Qjq?-B?|c=YG`SA$qmsEE9L6&Dro z^yz9OPlZtV0cd;WFa3!i#Cf(43%1UYdcu@UY5JBhyquGsmzUt8e`(!obH=Ih=F z^5fJzQHY7*x_rY=mFxChlrLcCH{FbwY)Pm_)3dwwlCcn$;!r|YOe8QYkrSVqWtnp^H{_eLU5AN2S?C| z*d0zd?R9(FxKGezUpkc$n0?S#zeezad~+%d|bIbue=7Q|?Ly=puc!7@fp!gE$l(C_zht)qs zto)pbq$yg_4l?cd4%45Ds3;(P@q{8mp$I2tj$3_AsHi6(uzBA8jng%{rGhFV7$-=c z8uQ!HlZ%~+@{Zs`qva!Tu&;bJUd~MFGAMAdp!Y@Jh?f}$UtijdZ=savi(A^-zIB=h zyAr|?T+4vm!CD#xZKpYm(8ie|yq( z$sjc8>(P$O>I|IuIR^1+|1{onoehtT0d9o?C7bijvL-&C-hgPGQ47d?#1A#X`fJJT zQUiuV3Sy0eQ$Du1k1^*zVoWUMilMgjF+r>n%)33i`l5`Z+A8Bu6$mHF7HPU=gwz$vdp|TmlROns0(nJ7t z5y(oFmVuX=PY)cVsnWV!SUgP><*N|9(E! zM`7HfqG@g}(RZrcq(aAFpQ%}b>pBqj>U=dWpy8?+C+$J))KD=AD#M2YAt*nz)s&kL zN}_G2b#J6H*lp3x9>%ZD>f^ip>qq>X{H$i@_j}fF?&f9wx)&^en#)Mru_FH_KOgum z`0Ve@*4S~psM+UfZ?PCN9W+GZR(_XuVD)Rr+C7yLC*GGNZ1DzJ#`)g6l9)QHYs4?f zDEl^FpEAV)L7bR7T#ajaw!!0en#qJ#J+P;@vv)utt}o<9Fm2Qr??s5yd>5!98@Be6 zKo(iFl~#Got)B9|*flU!6?CFXP^%3=)rJD56 zPFPKC9j=QDbN<32hvi;t2U&9lUaj@+u3brq4cOg|k;%QWgcjEC3|90+qxLlFIWO|& z+<5Dii;96d3(31V$BMYVPJU+!D0W0h6P@lmayTf+{0!|H$Dn_0h1`MOBNgtqqD>NtXD_>##o-@>qJ4(6l;-&Izw?!9ca-a!MdX z5^}@E%Em@Qp0TpL%(*rn!eqP*fPoOBGXAQnO(v6yV0^~It`KmHdGa1WlU-0icdKVF zF8)z7Ipf6Nm=+ey0m*fG&(SXQcP5Ea zRpdJPg`68x9noF5IT+7XMmj8t+U2Nrew<3)wN$e{#35Wti@3NLUzx3e(>z|N6&asp z4<#ubouJ=*I6W^Y`>`WuATo6)t!57Evs>w@n4Pxj3-R_%q~iDK1~Kgp;}g}=&mQ_P z!mV#%~$4S0-h@_y_{29g7U^kL=nQ!%N^bww3C#PfVL# z6DA_^hI%mZQ$-Y;kP)JOiO|&VGI`+lEcYW>6!y{MGB&|9>vB69$cM%v0V3^JRAO+s z&Z^_^Vr|;DG4jd z@2_%NgvM-^vCLs3U#NDG9M=`hex(sxEP8pqg{6o;DY~t(bGevSY=%!Z{oG$bk9`0fVs6JVdB1>L-HB>MgQ-erPO@P5ub!3e*1gF^{989nE#x4&(_PC^PH8Z z>EZ#)4W+6)9M(srAOs>4b2%blc|*IKtq1Q{E5f@%s5rzs+c3!Krj>U9;Cv07266qx zRH@Ry+#8*cYv&IX8}>pCR-~8fwik{4Eu))X!h-%TtU?pzrD0D_yOnTpH-c$>FM!QY zcr^eM#8k7(d!%S2DG@pDhTw6J#^0o(<1wGovG#{C;zxe`kXq2<{Nfb?HqniOoaZo? z)3ugwW@@rU(+#Tcuto@rtXD+3d|ko>We_I z9Og!?QA~ZgGsW~7?>f$j*~v!NaT4_h4s-a^`C=vo?Lo~x z-`b&A9>fSI@U7=F!_&h$A7S;(i%Ut%0BQVM$`$>PN$@+_q zJP#Fly)M;q5iT^Laf`%&~s^H&NRM(aSIAa2Mxlc9w|{WCF{RnWVH}wnB>* z6$?~*%R&cR+vs;(+Y2qPiJU?F2lLRl@_^B(oCf2t7H(s62gT22hT^uoBYkdM_25AN zlShU!Q^(D9_13YE5+gYa8`}>K%dPUd2N$P>CE@I>Sw7!RW{d3xo?bK|_DnJwJVwR2 znlR7kPppZFwgmxPBB$3{Z=#yhTAs?yKwI0&ghfYzY7IW{aEpwR+~oyOM|9MI^?%t-^;N zTpLOhEZ4GR+I`zXZeEp{j|Rdlt*oj&xJ$M_|820?fi6`rFCM^kE5XZ~UE#14fK^aL zJ)JIgSd8$&RI$NS2aM0=h!rVO%qJ0OnepgbJ6Yq+gfX*ArTQN|dJnTnZtylaDifL(rb&qSdh z|JMA0$6Wc&R7CB>c~?f#J}xoL)n-3RLsp%;F(53G)arYY6F(6p5t05SHW3ke&eNyK z?RMMG;U$-}7(Mh*UGlVLWGk_kW2v8`p8DgyMEu_i(^uGAKM&) z`DtOAG)!>t`w~k@)lpK0+8{!MT7}zC>z=vVwVE36DnubB@`GaFkKJAd)kH%3z}c3l z!b0>DqNG_x0Eh#H@gs)$x~k#zX#U1u~&07uAMpSmU;3j=T3f|chTp2`8kAn z{)PWC{;UZ4BmQhuTN)Sc3ectNzFV(Z3rH;B?L2B%TuNt6=>-1pg4x=bW(!@tl^<@H zmgfq%_NFS>_#cw(w)BCcvtpPj%o#H$)Pwp?phSq0>?Up0DzWSx zC#pId2`>-3_0dtUQc{8XOQr0;iCus6Ry=>y^%pKcz&})eHs5+TFU-KBj-2^iU55gd z0;qSGOsXH+ZR`y;uhhBNS=rh;9vo2O>=glmLaD_qeO~!nW`#Qaov}e3eXjE&&Hbh$ zY#3m|She`XZ*K!4By1o7m(y4_i))gV_1@>tiTL=+c^}BwriSK#q211OId)JxV0v_h zU@1=lYXY~kc^vDNwEF zaG#l$I1Gn4?i;`Dv&+F%ihPbvtSv-Mloh=wOqZmhDhuP-gX-}?kn9vD?OMTqfVd4M>-6) zg7E;SXMKjEQ14JbNx*#(R-}`~rBR@`KltUGYfenSJE*hU+0f{g!MIC;o}MO-IgZOr zIj($%dZ$F+!*O$@%RWyf2nj7`VN?0!7uXdr8%VS|Q0plux!{=$&Q^v)j1TMsD}en)7cW?dG@N` zH6z7sux0>_V0FL(K1(oOZKu+M>}AjbJEC^lD*3yhoZ%HRTSB#pBz4=T3_D?=!-Jjn7pU=3S+*wGNDu89p+i)ci|cv26X0?bE3xt`S4qG zLy`G+h=YQC-;&lzQtB~Fbd~UuN|r@@0-75pUdIijr)6=s7N_5v>de#tOqQd!v2Gd@ zZ$3Ln@k;G{ISQhq-Lr3Zqo@*NO$=-#3pw-~I?o+<3 z(3~#K_l~3CE;U^VFFqw~s_Ir&#>OX9O}33OeUT(YNBRMZk^~OzkL{kG9_;S!3@>#K z4o9AZ!AToPQl=}0VQv;YA2WWZ_c@=SV!LdQm!$b{{(U@eSC8c=EG;7q@UCM-R4(^} zk+g<pAVaV6zmOf&N^=CDK}p62MZG} ztFbJKf`T{iV4CP};A$yi4-5}ys~rY=6v z?6|!q%%@`R_4d3be0}{LKp|Vcv8J*8Z9rQdCCQ{X@TcHXRTv?B@YVA=lg{5i<*A+| zcX!f0gSo$zn_>i|z)-sL%Qp#P$-S=Ky-byqN<`Jsz3uTCxTks!C229nMR{A^*=UTS zUvsotE(R=tr6}NPstJkJ+3Yyq?}%`pa}pkz@e5xyJ99TEnD3X#2t*IqSJ-BXjEhqN z?)LsCA8cKYE*UrTDu6R%Li}Eq21Mcwjp!nw&Y?e477Fb>VT3}71KHnPY2>hyxV?XGZpzCJHP8xI{1ok ziC1e~c2Bt*RBKQ8e?0jhBbL?;40H_PJ2e}iuHONx1+5Wu4_x5NCGR{bJ(qm-Vi2ly zo%EKaC1rG$*z7BYCh1PTH&JW9(tfpwXcN?g126>&>RaQMU^A+gmdB;$vjC*NB~Ao2 zIt07@OWg&8ICtM7Yo|T!KO&u)i~}wt!47m{0o6KxB`8FqV|G;5Q1_thheqp)iLjaw zD~_?WL^|_O@q@rY>M(yl4tgS>Rd|;z{N{n*!-_x+3xZEc`+b|ExXh-VUH!C_lo!`CRlor_Vl!1f z2T(|W_5C>6%lozU|4M|A`I$s{NI_QU=SP!|OqmcCHAL7;>J$}VU5aWvk?lv+ z!)LoVcUNJfIx&AsqYzaO>B$z68`wfx}&EWQ_jD@E$9qz+D1V?yGd(Ib;bZRC1@%jKW%t1RsRjZ%EsVyRuEL_6#Ut%M?c@q!{k zZX11BT-Z749zqDIqfL-OO^nbM92@xI{RW=?CwK2&b^AR^;hD?4t+sTmxA>`Uids5v$QJ)4~+SM|86@tK$6d&$se84bW(@J4R4_UD7nm-8R&&$(3Lj4wjt{1 ze*_9AjYfI$AY#;6FMQ`(N{<+%oDd#unQAnQ$>xQgWBuj#9kTg0^7{_~sIM2{C&~z$ z%M*7%4p_2&f{5zA0gzrE3qqn+o@dkoB&0-fu3vTRKeNz?HltUKzZ;cYd=T6;^&PP( za&ajx%fa}DtkIqAmNl`?0!Wssr(RPSOXA?E<~vDbbV`vZt9 z{r{x&Ra%;>ddzo;>UH(NhgPY&UzcG&NH93@^Vg*=-7dnXki98Cu7V?rW+U6cxlUFpQe&C~(PYuA7g3qyL=n7K zgdxhz?=9GVmfEEeA_{$#H2ud~4jL?9md*IRa*^WeA@cPKo$0go7Vad(-AQ4}h$EB@ z=d*dT9>U@DU^~mg0+|f`tR}2p57_YVY*UlF?wM!F+D-1S!06d;-;j6pEG!HxESPPD zl3)WG#oHI}t({W^%#mAuAQwX*1quIyGLC;*`kc{hdD4n#m1?^MwO=f|)le$q=WD#&&rKK(+E2%Xklo2}e^7(oSEk4Idi$x<0jDMxYF;#3`*ZieI(-xG$xFnSVirHNmg#9g#qRi)MFJtsXCeT zA?B0u%=U1(d9P$2<`jhNf*O{1xz428aNW0IXCP|8651?@wMY~*v{xO%+}mCh7CMEf?FMo5IEN@0PftI>vql))xR%N zG%>UN1$>LxW@T`_1IGRRZU2+3f^~d-A5u&7uW$IL^A9tYiAK}pGf{B|EkKQj4Z$0v z0l-}p(9{|$=)i8@EK#3GZ-d_Qos=us!=M$cBk@d^HfSM_^$akhnCyFh0|ua9rUuL$ z)C}%RWVm z+#kE!sM~mX@0*O}T^D zG>x=WWu^N5KvwJjK&t(BAlm<1?>2J-rYdT%*ek0C2pwd~W>WmK;7@^>c_W8=5KwJ- z;`i)kA&QtBRKK9IvcJHx@guJXJOcqx{a25Pk~IS&9EQpey=m=Zj}N2S!|Cz~A8yZA zzex+ql?F7ZpH1)Elx>yo3^Dz%m??J)sgO{psuK*5Z@NT#U1nSF#8_ppCln!5vf1Cq zcM)9W#$I<|58m8S>YtXPiWILn$d_3957f)kw%L1%2Y!F+sEC?%cf&@0oFG0+lX>35 z?%k!EtyB{vuX5zjUDclW8BkKNZ|g`xg?tU+^%_3N35wa=w>>gl`C%0yd>6Ltww8y3 zIvFmUwfd7QaM;Odi3^nx5KVcKOEC<}Jsd~;IpG(+ zW@9tTS?!PwHZ8b14~G$IM(KhET`ZP`k{jNB=FlvPFV{s2e5z6ptQW`KE=ked zZrY5AfOwXh&Fo-~6Sr6Y@StGqa5gOLhAbt(E8@2NJK#fRJ<1uV{g7LDahF5La^7V~;0OOMU4cM8u75{-^!4^3dhHS( z+_B?w>k@S@jAO&*>m{nH>1Z}eB5~;(4#B&0V_=@2OR%$m`|e#Ja%j6aU^xCuwEq9G zg+|y^4U8Z!NN2Rs;>ACSfJ_FYeDi7HJ$j%ynH%4IlS;P9YRqohXBm3JEJUX`={O=K zVC`rEEqn$4lyx|d`rJ3^{xfAD=Z?-HpE8aM2olDl=D%|?7>O56<=R06y?)qTN^MlP zDd4jXr#5oK(sBIQlzie{PWj{^qMxMVdz_u(71*`)vaET2HK4uneLK1tcd_tq(P?D@y&KIRw@>8MIG zZVNoL#EY|J*(jYsQx>Z9j(MDMn~ zynaB-W5S`iP0Pu#nencJ{s^=E;<3i;yZ#>uhbs}FkpE5Ef=fU|WlYEZ0s{H*(oKB> z_H}suRb8l!yvT?$ThzxWX$o2?2`Hua84rG$x#65GuhAV20X|M|GVFZXVcPI zY|Z1mvkNM(g+bk&1n%8vCL14%=?`KYI0$E#eM!uq&ETQ80_y)H*?=m}Ii_}5bd+Bo zkN1HDhRc3?y8-Lkz`WH39*C=6Zcyi3Mm?RC<)B=#V{k4_8znb~D%ZFh9nFWJW6&E5 z%5-0sD#1eAdTph(b$hLG))`t(+ZP$@_@1`ny7A^(r#@9%iB@sd-B5Br&hU*J_A^7=c=beM0 zsRH{os%j=cy}SXM^uBa!AbkB=kh+JXleCA5IO$Y(KkR~YH2-p$|H@E)om&fBk%%fg@ zm6Nm297(NGZrnCbE)ie2eSJJp^fE_Yt;Wixvrwz$8_MfJ^Lkh!4ov-Gr^EaN?nsxEESWir$?O#ia)~yzY7UE=D`4SpxZ_H_bQnXL z!tZw8)-acJFn)aYYovjSm7jkHG=VUc4hvTU&9X-oB_%ECX=$|q>G%+fV_;sAsj?;( zDdwkei&mqu61G8RlAUDCMG|fq;OZ0Ygo? zaT#R3RZ^>Un02NrAOpR%N8&8}+7^#->rYQkRvT(v&oN+NqQl&<%Ub*Lc))Hwm&C?o zyuWDOBUEWem1)B4&HGc9(&c#fPau!bxU4VPh?lc@S+ zd_h{!J7~S)DhCB9$B-ZE2;P3^iK5A@tqc1(Z#UR906(gN4S-$(5j{~MpdSs0r?}#o zOwPxtE>5-tp`fFe*;ILnt@(7mnl>-*Bo7#K(R{h(_4Uj_!?T?q%gcZd9zvtjRlK70 zv&9wk!5vJ|I|c2GDvS=7VZ8iCDC3uZ;R0khHp_5(0l*$i&wAU9fdMQ!^N}+GiPv-W zarvXhGBVQj%Jth?t1YJ);%?ZF8n^UxHJhqaDGRDY^n)yOC)IOp?8D>~geGs*5*osc zV`o%!N-%hYz_QLyjVa;e(fi}Hy{<= zE&%CcYbsA=+Q>IG{Rb+xgo^|oEbTLS@DaqlVW2t`+LTpU#c16;xqLC?5& z2D7OP6c_=Et)n{hYnmEu6mC$28=E+PM&|NJ2wn+M6rCE*>B+<+0-AVE1Mw=W-@G|A z)|QrzJ~AI8N&&0zlX%7M`U~mQ0Fm-T>K!f#40H;TiyR8&tRHHO_d;Nv5qG>w)@nOA z*F~Qc;DPmYbq#LVju)r_`oL!IWXX9QTrBabtK%tMdz(?&RAnVM5x4qT!D$A^=ow&A z;GXX{2UuA-*Kyrk96OMUzpa>_|NI~rpEHHxE$EyA`1?ijc`7RQPA)Ej@EM~I3Y8>+ z|8eZ1QBbqV>O5cvqUYd!w0k_fJBvo3zj=HCcH)@*rc$Hf4DOvXNjZw;nG0bht%Opn zuumNYh9~Op;A|#r_QGzfkw&suJF65zPfqvczJadoSG$ImIY2Pz3%#N z>zd<=PGvxKxhLXIKf`Yxhz&M-yn(>#vsobS{RADN!1< zV!~W^wgh_UrJ|)dd`#tjq+~+fpYGn^7GrE>E${{% zRJ*h&pC}Tv#K2`s>6}l`7h0~)cRt+YaEMpxM4uj{XnWvI z=FwwR1)#=u!FLQ8{9q;wz}dc&b+-TU9GwI+kw~Ro!mS6%#|WvxKJ8$pevLv;-&XCC zJYztVeiwf(&VQNWkVL@Mn*`%>JhMJrrD@aNKa3AtV(D?2j4Xyz_i*tM;KS7IFOT)! zy+T5=c0M*W+Tu;_c0PM|da!a7eDCw!=Vib0u_>f`;g{WfO9APY14Rs|c7ilyest}x z`QkdJYN(B(9q-~5O(T13eZ3%eFjOGA6-bK8^8rCT7iHj2Jn>l>65bMQw7EOdxGaxE zD57ZpH24$ZN%;T_)L)POyK&HC_zhhF;Ys60>#z4fSG%PQ$rYiEa&oRdMtPFEu&I0Z z0LmSHx3cmwSG7tlXLPdq83gzD-{4{kgHF#d?+EUgF7u`GIY1~(Z>tzBvSNA%4~pdV z3xBE{EH!$X(B$jQ%3}z~8;}>GLL$U>=oeW;ca@t9HxWaeRn^0X2n|O7V@zg#hQ3IM zh)EoV5h}*jMql$WK9Y37cg7^z_-zs7-5r&kBjD`p*J@v#soEpRM>)%X2^hP2-0}{| z+s$%7{OM`~eEFC2l+~ZvCta5S+j8D46(S%QsN>F~s@ho?Wg^{Z9ZszKwMK9c(kNf* zOvcbo%G6>Gg^U+H$rvu77M0GTVDh@$RV>rUpP<7_$osAn{8aG)$T{Ny|AIo8JnVT$ z5+~kpy<1NR_xT0(WBONt5~Ch}qCb21E2$XcYN0~DQZuykr-suYrwQbfc@56XN$l>B zIY_^=%eDz!STwe_U)9G_8As&(41KE#q+39I%Vu?O|CaP0rO%IH?#t^&0NE0YJz3|r z)ygF5)x>hyLN{kPN&X8~X)=yM z{owBt)QHO<&=CCAYa^-5c-Ucv-Nt-YBz%G_e0S zHF!v|lcw@-x6gL~0sQaLuDzWr(z>{P!MP+3Hf{A6*YIY1kG!H0&lObZVh{d~e5D#D z!sOW%Zk-HqY<7cP?Ru+$IpX~Megp9xHdjj-fIQWtphaA&)iR%_qNUeecbwO~dBX$Z zMI~WUz)QIW=wNtP?kFbB#TEDAnwa}Z5+0=S@ZUkxn&lKTXUp9*gp%^FqUdYTK+}Mp zxw-ziIiSzxYDj8m{d;{~cSo+__YStJL%;dNgkRFau>n=M9ZxerAFq$JQQk)zvC&5kq!A+PYTT{-ox=s`Y#uM*dn@ESpn$%C(D_aL>F zKn06{9j8E&0$N0tC%qxUD5@@m7^`-0?Q_+@iHctHLG7hQ`k#%i0A1fQnMGC1;kaYQOo>qieg^^ED;4%!l= zMEZgmncG|Zy2m;s?^kuU^6}(Cm`?E2D}|9h7z0(sCB}k#kEE zUkBes&=T%H!SNzpwxgs>K*(rL4_|N-f{L!O zt|pKDJ(a%CXHi4_rgUSY4h-@N-_z(hd*0XAwBKoe|6$uMu5e(iQoZ@-$VJR2vNE(pYIEd>(Li^ zvfcSHo-By+U#dWm{ptU(pe=+Ol8m&Vm@1y}2E(sSUhRr*q~IO6$%#m@x@9Xbk#t}Q|f7F=1Y#o!7bh@`!Z@$}q_rRDW$lmI@ zyEj*Qo*z52Qx81VbO0q3M#k}$!=g7@w1J%hcj7srWH55hS?nR3$3DRct{sBVg**2E zWiu!Hv9w^k8k|r1f4B!&fyj-Hiag0z61WE#y{G;BnFp#{wrGFH3|haJoY-YZMD)Xp zP%%(Q1ZwZ}RY$3er9rkC{k&3XW(2s9P2f=SR$|4(u&Py`O|w6Rc&=)mvdT&OurWHDL!TSm zhE?6tU3T}e9-Z2hs(C>mCuz(KR$ci{ZK%)rD!K4jyh872xHL{}GYUpD_1p!%Ny_PA zAlR9>-;RzXZr=ZMCZ12B7%iPZ3>A6%q`&62?wi0Tvcm@w$oRa#Qm1!gIN<@?dt`H1 zIgR$r1n8*Kh|j4W%a~DF8685vVX4`)RbaOxZI9fmNcqVcAZkB~t!p7D&F%oyKL-{xXnT?DInnass;Z@x-th?yO`~(H zUnG->UeF2(u2dHBq2h6MHRvgwG$iGspkl+)wtgF=_h0T*#NEcjr#;>$4=1DIAq2g~ zbGbMgIJyiH(72U!U)mgPR-&Uu+Q6DDvYGh3w>IQ1)F7Hc7Jgnf4)ds;F5E*Ord92% zb{WSESlMylLPf8|(Lp}w_s(}dGEy;?UHAVKF^L_MCa*2c+QuYj^eB{O(`y?4X4F_LD%m@V)H%|Wgyk$~3 zSxEsJ*+p6|>r_9yK@}xgifLzQJ@_Y{XJ9tOjvC8ly|_A=vJ=J$x|m1vGZ0The)a5V z!(i+DY$j@v>+=0>RIeLde`2-f0tV3{cl8RK31e_3YU$z>9#L+w6eGjl9*BQ+!cG87 z>j3^U-d~S6PIWeCSO@C%SHC&H+1^+Q_C)3*3}Ij}yA`i)(bxr87 zLn{ttWu3fLJsP{kz`z~e@TaSfzC7pwB|mG~9D)&V2*=kjhLI*bmW0prv8-5S(434V zCEE`n;s&^WLa7*7a?+>eV|L&6uCHbY%TGhD`G}?*ohQid}4Gd*JkxEXfi` zz`PA@SK`W-XWz7S2E-^X)5g!GU#F)hV~ST}D0Cu3yi-#dK9FVq`gKK{07Qj`mWte2 zvJ4y?wgdTg4shq`6F9l}D^R}#EnW`CnkT_m7n$HPUM569s46MZ=Uv_liYuQzWqxqu zqoCnZXMU+GAdu0YV8Pm`%aBIEj`?aLz(Yk@`rsm`AYZ+NjF2#yeusb)G+X`IQkS?r z$ePTzeY64G%^W3T9&m7UXSXSc{xW`Klj`rEL(&i_>5Ms>nS%S0%z;T1YLH*pg>Ac0 zotym0nUAX6q5k)kmcHNo9>K9cln4u}FFE7##%8cD7w9%-b%y^b!L`Gy>L`D2JWqHtOJ-X~Oj{Uv6b6@ywshWo=O@ z9H^;TaEWG%u3hZwIysG3bF-%G=Bd(}^m?~=rAW_SwTMhN-1afgDISk1pq!4OAaK}U zJ#5%t{qjgO%58h?c8&P{^;B5|JBuxR?z*n+)(E~O3LP)dxLvD()1I#rm$Vh@A8#_l z9Nl&uA^`MQl>G4wuvv;eav|0^Z z|NOIQcQ;?cTVOWLp-8d!T?OrtT}D1`n8=oge4hNtP@CJ^hdWz2qd5$qYdQu2jPYHe z*44Plqn9sV#(lV<15VWAxoV)9mtl6cEr#%QU8ASx$-R3!v#M$WAqiG4{FU2FOzhz(;Nnq$&jmy& zfW!~jLgNhEeM8-$q{;!-y?$@0s0y0))%EmVs;lFlI_Ft7l#`KjGZEUh_bOGuwO@gT zn$SwA`?;(-Si*a#2R)m%^2 zfzHkLtdk;ju+-$V39Qh&bH^hF?Pk~J7G`-r3k%n|334+{bPs;fQ?L&mT}=5S?f6H; zrE{_0Hn~&H@2V$o!zTubb4QgWE%Rz?XH4s>UPvuhT5WU$VgGwQs3m&IB=S8KMVDJ;^sUQZN(@Uf-~|?E+Iet)-yAMH+3MXq11FE1>qvW)7h@) z;RjVZOB3m#a(Mky0=8csLY?6fwuct5;E)hJZu2&*BnSA#S>YQmMmjzBQrpQ{+`I3+ z7%-6JSSxz=y=iSA;c@_hU~fOBMBnItm3N&{QLJ0G6%~=Jf+zwP5Re9%oRdfsv_mr4fxGog$(#hv=s2gRvK1IjK zgz-4+0ui=&xSRRW*lNOgA#+k%ZjNNO4a8c)dG9eT-Dd&HYkHwtJp=8Y4mggdSSF^%A zKB^fADzmUee&2hZX9zXb{hoaN41I0uMF@%`qD4h9LdPJlt87s63Pf^JPmr4bU2r-s zYj$)wHm!+6n?&idS%gNK7L~nr#kDVR0jFEmTFSZB-H_k3-atCvV?H^Xnc4Ku1y#H5 zJc4&)WKMm)I;B@s`eeJrHwU>|%mypOoseU3Xs5pN6#kg6P^X zL4SCe0w}2mpLOC*ZGVCIo#AN+6)o_20p9?X1lSq;+$J1~Pz?hRFxZ}FfD*nRNK)NH z6Ud$qK*YTXN=45%gB2sHpPwq=1g2XH3(`_m`5!Bb2)_^}oI-wKq3ix8yn391V7isi z^|ZOQb?2wMm2wOzYhf2Csb{>10?CBoa(jwvb&?6k#0Is-OF~J#jzMCAQ>IB{-nodY zgpzt=z#R6rG&gY&(6P$3V1%(T74?JMGUVykK1{9^)X zqrE&VN$Sm>^zVb^Z$u^nu`8t-6e2{z!on@nGxCQx(w|%87gqO&kM;vdNK^;LfPJq? zhU&_2`F-zC>%C18qB%y5jr37I1Wb$sqe-qruVxAU7!OH(fu)TYnw`*RoaAxV;m?gP zD|>2BDlX~elU@D%Owug{;QGYfa)OH}0YJ3Uk>Q}V*9CK|)7q%YzGaz@!M{X5nqo~y zmc6eh&Nt+V-}#pO-ZP9r(vO_n3%2Ix$g;UZIfv=D9<4St!gt!%s50>J4a-h0d8_&C zuE|=oth{ZAIh<3FEJUwcD_oQVB-+gFmfp`k4Q;5N6zT}^JiF*?6K4g zAw~p)W}$QX zZ|6}!_zh@XnWa09VIy}Um zRCn)MOFg$}jOp^3@LVuCI8HYPch3MzF`j7(D*ITikB9eGTV&mLpN#^X8+QVoS{F}D zlzA~KR-(@nrYt2Tr5JK8p~{*b(_$sUdxFEbNe`tAL`c)(4=2pF+D7WYjc~^}uYZ1( zBwgV&7FOtiKk-O9KHS0X&w{4jJtDm*WclOz`yTQYPD@heyQ^7QP??jZP4&c2BG%or zO*U98G;%pJ zpKBnBT_q9~%(oUDOT+wyp!OPUPPUdvXJzZ(;rwZ8jm>`PnFb1to7XR2@Y|U2P52?! z(uiA?781+(qy@do$XH=M(5AleB0a~&tXVHjb7~OZuxMnTUu?P1#@G73 z_LzrOCC6>?%voYvJ&erE_W&@V#NdU;#=f}?)<&s2la-q)4 z-M!@V`w2QGYWt0E9iSWSXdHM5fSG+FECQQy4<&9zaAngP@q}g3v<5?=dErO;x0fC` zrUcq(#fj-3oKOr{(sCrXV2m@v?NA7kA{k3 z@yAcrz&!`%N>MXdk>!0go=X}drF55e?;V22sW~tZOoVCN;l64)4o1j z>SU?4eFKyu+`GxH8r%J|XExd>c42y2;N=f0&k>DW3VNx%bjX#U&l9vU{|>v{GYO2OJl6SIiSVbYRgF3))13ik_KpP7^N6 zSbA+Oz1ka$DbIB?i@W(yTq`5`VIB#p;_}>$RAD|J@-C;aykRF?Wq9^Q0|?~O;T^b~ zmj4rhXJaCbVMA6^==#U}b)yxqfv8kue)WcDwhorRhlAbfXm(tmoh9?~{V^sBixStV zWCdahhIa7Idd@V6SXbfsE!i>IC=?0|P&s-LM9UKx7-%D|3yU5&)|G=r8*q!_N4>bX zSNqch@lCd&HpmsMOljv+fM8E-eD9}AZ5@wS_x1G&OCXm+818@az%s%veT9jI=tXg6 zeXh{8KTE#&)Mlc2%7OXtL`2|$0+~FS{B>YjGt&N&tqrceD~=l1q%ELmCIcW#K{ zWtZprx{djuk%7L%yoWE_Le`92UY1d7sI~XGSzcvi1_Ou;&>Tm{k~s$sY)l*5+r1Vg zFc=K3mDcC#>MBy02^OUZt2>)Nf0nT^UcUUH&|@U$%85O$=c@0NSRU4kGsI%2%-_E) zfaGF;<6?oG43oFg>(I)yhE}bm0J;z{-x>col)PnZmkPpJz>EvbPKr(&|GMv@haIN- zO62VZOvi*cUAIfu4lOLnOG_CgG7na~ zZ)VnBrF&&SczO|4<-mrisw(8?sjIWyD@ZbkhzJS_%GI%Sa@y&iO|3}soMB-R;keNY zoU;4-ZPZk*Pb_x1MX;-@4b|iprvf3>)UZm-Qjwdx@_D*UO|+wedF4!z5r>rV8a5trgwv=iYOD4~K10Yn`7BhI&p(Vt{b)wVS_Vb{-*=V2r_$M@3N}5D z9Y@<@yuH0ktw+WO`c4myrq=YC_F0j#ZSa=(Xfulx+lxqMqF{P@76C5$=7fcmuHAJ_ z?J&I5OvV5FJlc6p{0dd)zKoLf)=c0vHTYAy@?)-+LYy60Xy`=E@nWGKx4!k#`vRL? zwKH)=XGxZ?OyiB|E=aDtG|GC$TS-qt zL*tR$sb;yC@OpKgh^D1YVV}DeFZzDesAl9|y+Ivz_wkXqE^lNZ*JBNe*TKeSB#_>S zCR6s5JJ~z~PZ@(BTwAF*aUI@{!N^d2wioMH0ll6nOVv(%{$uPsNW7f(c+|m zKa9*%8La8zAmysAdhMR_9S3Xd9X8~+Y|g5Y~N6Tvj!@6Cpb3PQb_n)4Q$x$0~ z5t8JXcq%jm&f#Nti>asQcwOCLMY$y5qznk3vIElKXkPW+m9+vXUhgsR4!5>Gr0i() zeN)cILNEP;Vv_k40dl8drLqR-C0=YYFj4QIq=xAx<+?0dii%)PtAl;U0w&sORM*~t zTj%;fd>{VCf$Ghj6nhdfG8UF>8Z_dT-L*scj!AnR$Z6w$1yuV71Mjg=i#}sCcK)5` zoxlSxxS!}%nT)&5_ZFh>8c4=oO*TTLSwC#+V(v3JZMm8NEMjfmkp`({7*(uhuj3dp zQJt~q%|u*ra@Jkkh8JeuIaXyJ z%=zPQ1W5vGJzM26Ss|J=GoiBniO4=Wiuh$qg0>152Mne^db_=SV$x#$y4+2`!?e8e z;b2#z%j-gcqG`a2DOznurH;X8SD2c;=0x-U3`w^~LYb52KIKuaO0$bSIa1ol=B5oo z=ADO3QkNXYLk}zD;RUFw;pG+1O=~vZ%;eVs7D*SKH^S&uSN+GElkX1oM?eYrrFY;x zy{c*h>$`(_Jxlv&EEblbZo`obIP4=`PZMm5{qZ60?g)CLHIo4he)l{~2(^_p8`<>$ z|JWE}HB@8?JT=GNO-Ue-;13^?D6n6b$li6emZRA8r5QSsi(DKfMwH>#BFj+W73h*Y z$<)%{aqL^uB_&%nn{nzvH%FD#kMyF}l5Qef>XajYCKY#0MA)pDgdN`d_>2xc5M*}P zYfv4D6LSVUe@c$NdkH*Chfg#MRd#pNk|fQ%D;Qd#@yJ292<|w4;bXj9bY9Da=2X$* zm{Af{3gCY*x6vqhT^X^rlwqXyBp!i4c-d|&*uq{uIw&SVGr89+Fk#0-RUWhVBE7MwFWEGRE*cX98o(@ z#+V9XRSNK=vsq00^Xgc&cHrBrN&y>VGg@rjx>$QekP{-g_UGmz;i;OOp`XMoh2jJR zpU+oUlwr4h8&wj8*iDt<42=vll8|2PROzN8(!!td+d6tY z9t7nTcM)9U`eL9xhW?T;Z2IjfA`a@Va7x-7{e;1yfyJ|=(XIZu_#b6c{D3-IbQC@& zhD+02^Ef$5Geuk(`gMGbhy$Hy?INBJ-!Z)uI&TL%8-`X>lPioLWwOmbOQ;q+D`zaW zQX;vA7>?s-W{H^?kKP5X>Zg9ETsUqD#i#$@rd%}LGKh@tU$+#Yb0qk~rw8E`&h^31 z^^JB0=3gG53j5@D7Px%w{!##eA_$Vj1PN&k97-PYike_y@OwO?0sV>$zoH%%+wN2M zkc_>k4>~2*FunvCyiAZp|G)ArpfxNJ$Wv^ls4YZVZbB!3m;L^&}5{^o}&{!k=&&B31l%)xnm$F=EyR%1So6?u><#ViTZ>ekH`mY@5od zS}q-%3nWV}*v8)S=ZS7JZIt_yAQc)NLxwO66`Bu#IipqR8*3*$C5C~;PDw&fVv6?w>e{NUc=~`ZTNt@7?(leyU(vAAA5ZPOu>omq(LRiIaDct17 zoaj$ZO}#)Am?8!MogiBHR@#k{oMMF|@~*F+A9koDgwp2ETHNtcIX=)W4Jm2s`^c9J zYx`w1{tjBuv`z4S12po2l9H*Fiq@SwE@K;8hOy(xZ)bi`tJ4Rk>n=1(NI>Zm2Y;xY zf-v4T?VHYK(=2&iuAxw`9d3lUDIH{^)fIdpqB4#xSx|RymaM`NsdJCLI*De4K=<<% z!R=bjg0v3&WPy`1y_c(8EuJ%y0(}O=Vka*L_?SWY!`+MpkiN{T&zN_ZG0Hdy@U9QP z4SH~0SJt;eo6DIcyeSp#=*B$q`w8rW$L?Kj4vhv6HGe>(zdt;O8Tw`zt@*^r{C+zX zFo~S~Esd*wI_erQCsHM)Nh$!G4^m%$JWIR9w{~;0xsh?p;t45mRd{5B%xtkR16FE!j10nAZn$=*`-${3o)Tvv1-yUANcXjQbkjJj$s9@{pAM5mJeb`{2@LGPC4!kL67I7fx}FY~92$ey&)x3N zk`QKtGgGU1hNJx&Ar**s$%ok-1>kx(A>JP4nYo5)X8&ON-QyD8%hc2?AOI!}O^flG z-$%4f(2Wq;*#ejw1bmARcf#Z1h8LT7ojh3FTgzfO)K9jTHl0^=P$vjL(4?m`E_OYi zjn2LpRgbABPGJw}T(UTz^ml~{9USc=TB2YU?spL~dIc6vk2?%gu5dpTU=>-;SKk{u zcDw*FcK%<5cXFY4iC^K}v!QN6+IPUN^!r4d_(tb{m))NEYLk^+3{QQLQz&OtG*Gr= z*)(!r4z5%5Y~wO8^k(Bs6{Mn`qwQBtTlE!>6!~!`4(&@bmN3Z(QZsK4kWu{WEEd>V z|3eo0a5aI{o53z8)}O9HvByo@!Dgqmdp08L4eN!XCX^=BzYK~D)?3UgOLm()83Lzi?X=mq!+DEW+5knS{cB8r3 zuZe_g39bY><*mP6oT3F@-aseWBU1d%d7aOd1aeD{P-^`bGRnV5VgFi#8N(A5yl^eO U5mdefJ`-|BK@FaF+xYc=0M2ppt^fc4 diff --git a/lam/docs/manual-sources/images/mod_windowsUser3.png b/lam/docs/manual-sources/images/mod_windowsUser3.png index d62ebede31538b619b93bed24696a70738474e13..6d17e7076966feaa2ec858389ad1d35002cd83c5 100644 GIT binary patch literal 37274 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 z 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 Yk$At9LDtM@4Gx5e3Q0lp1YdjnA1PTjx&QzG literal 34691 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 Mq!gif5=Jlo7o7AYB>(^b diff --git a/lam/lib/baseModule.inc b/lam/lib/baseModule.inc index d452e70f..1b603af7 100644 --- a/lam/lib/baseModule.inc +++ b/lam/lib/baseModule.inc @@ -1696,18 +1696,16 @@ abstract class baseModule { * Returns if the given configuration option is set. * This function returns false if the configuration options cannot be read. * - * @param String $optionName name of the option + * @param String $optionName name of the option + * @param boolean $default default value if config option is not set at all (default: false) * @return boolean true if option is set */ - protected function isBooleanConfigOptionSet($optionName) { + protected function isBooleanConfigOptionSet($optionName, $default = false) { // abort if configuration is not available - if (!isset($this->moduleSettings) || !is_array($this->moduleSettings)) { - return false; + if (!isset($this->moduleSettings) || !is_array($this->moduleSettings) || !isset($this->moduleSettings[$optionName][0])) { + return $default; } - if (isset($this->moduleSettings[$optionName][0]) && ($this->moduleSettings[$optionName][0] == 'true')) { - return true; - } - return false; + return ($this->moduleSettings[$optionName][0] == 'true'); } } diff --git a/lam/lib/modules/windowsUser.inc b/lam/lib/modules/windowsUser.inc index 4ffe1bbb..e496e897 100644 --- a/lam/lib/modules/windowsUser.inc +++ b/lam/lib/modules/windowsUser.inc @@ -85,16 +85,28 @@ class windowsUser extends baseModule implements passwordService { // managed object classes $return['objectClasses'] = array('user', 'securityPrincipal'); // managed attributes - $return['attributes'] = array('cn', 'sAMAccountName', 'description', 'displayName', 'givenName', 'initials', + $return['attributes'] = array('userPrincipalName', 'cn', 'sAMAccountName', 'description', 'displayName', 'givenName', 'initials', 'l', 'mail', 'otherTelephone', 'physicalDeliveryOfficeName', 'postalCode', 'postOfficeBox', 'sn', 'st', 'streetAddress', 'telephoneNumber', 'url', 'wWWHomePage', 'userAccountControl', 'profilePath', 'scriptPath', 'pwdLastSet', 'otherMailbox'); // help Entries $return['help'] = array( 'cn' => array( - "Headline" => _('User name'), 'attr' => 'cn, sAMAccountName', + "Headline" => _('Common name'), 'attr' => 'cn', + "Text" => _('This is the natural name of the user. If empty, the first and last name or user name is used.') + ), + 'userPrincipalName' => array( + "Headline" => _('User name'), 'attr' => 'userPrincipalName', "Text" => _('Please enter the user\'s name.') ), + 'userPrincipalNameDomain' => array( + "Headline" => _('Domain'), 'attr' => 'userPrincipalName', + "Text" => _('Windows domain name of account.') + ), + 'sAMAccountName' => array( + "Headline" => _('User name (pre W2K)'), 'attr' => 'sAMAccountName', + "Text" => _('Please enter the user\'s name.') . ' ' . _('This user name is only used for old Windows versions (e.g. NT4, W98).') + ), 'description' => array( "Headline" => _('Description'), 'attr' => 'description', "Text" => _('Please enter a descriptive text for this user.') @@ -206,13 +218,21 @@ class windowsUser extends baseModule implements passwordService { "Headline" => _("Email alias"), 'attr' => 'otherMailbox', "Text" => _("Email alias for this account.") . ' ' . _("Multiple values are separated by semicolon.") ), + 'hiddenOptions' => array( + "Headline" => _("Hidden options"), + "Text" => _("The selected options will not be managed inside LAM. You can use this to reduce the number of displayed input fields.") + ), + 'domains' => array( + "Headline" => _('Domains'), + "Text" => _('Please enter a list of Windows domains that can be selected for your user accounts.') + ), ); // upload fields $return['upload_columns'] = array( array( - 'name' => 'windowsUser_name', + 'name' => 'windowsUser_userPrincipalName', 'description' => _('User name'), - 'help' => 'cn', + 'help' => 'userPrincipalName', 'example' => _('smiller'), 'required' => true, 'unique' => true, @@ -235,6 +255,12 @@ class windowsUser extends baseModule implements passwordService { 'help' => 'sn', 'example' => _('Miller'), ), + array( + 'name' => 'windowsUser_cn', + 'description' => _('Common name'), + 'help' => 'cn', + 'example' => _('Steve Miller'), + ), array( 'name' => 'windowsUser_displayName', 'description' => _('Display name'), @@ -375,9 +401,19 @@ class windowsUser extends baseModule implements passwordService { 'help' => 'groupsUpload', ), ); + if (!$this->isBooleanConfigOptionSet('windowsUser_hidesAMAccountName', true)) { + $return['upload_columns'][] = array( + 'name' => 'windowsUser_sAMAccountName', + 'description' => _('User name (pre W2K)'), + 'help' => 'sAMAccountName', + 'example' => _('smiller'), + 'unique' => true, + ); + } // available PDF fields $return['PDF_fields'] = array( - 'cn' => _('User name'), + 'userPrincipalName' => _('User name'), + 'cn' => _('Common name'), 'description' => _('Description'), 'displayName' => _('Display name'), 'givenName' => _('First name'), @@ -404,6 +440,9 @@ class windowsUser extends baseModule implements passwordService { 'groups' => _('Groups'), 'password' => _('Password'), ); + if (!$this->isBooleanConfigOptionSet('windowsUser_hidesAMAccountName', true)) { + $return['PDF_fields']['sAMAccountName'] = _('User name (pre W2K)'); + } // self service search attributes $return['selfServiceSearchAttributes'] = array('sAMAccountName'); // self service field settings @@ -421,6 +460,20 @@ class windowsUser extends baseModule implements passwordService { // possible self service read-only fields $return['selfServiceReadOnlyFields'] = array('physicalDeliveryOfficeName', 'telephoneNumber', 'wWWHomePage', 'streetAddress', 'st', 'l', 'postOfficeBox', 'postalCode'); + // configuration options + $configContainer = new htmlTable(); + $configContainerHead = new htmlTable(); + $configContainerHead->addElement(new htmlTableExtendedInputTextarea('windowsUser_domains', '', 30, 3, _('Domains'), 'domains')); + $configContainer->addElement($configContainerHead, true); + $configContainer->addVerticalSpace('10px'); + $configHiddenGroup = new htmlGroup(); + $configHiddenGroup->addElement(new htmlOutputText(_('Hidden options'))); + $configHiddenGroup->addElement(new htmlHelpLink('hiddenOptions')); + $configContainer->addElement($configHiddenGroup, true); + $configContainerOptions = new htmlTable(); + $configContainerOptions->addElement(new htmlTableExtendedInputCheckbox('windowsUser_hidesAMAccountName', true, _('User name (pre W2K)'), null, false)); + $configContainer->addElement($configContainerOptions, true); + $return['config_options']['all'] = $configContainer; return $return; } @@ -440,8 +493,12 @@ class windowsUser extends baseModule implements passwordService { * This function fills the $messages variable with output messages from this module. */ public function load_Messages() { - $this->messages['cn'][0] = array('ERROR', _('User name'), _('User name contains invalid characters. Valid characters are: a-z, A-Z, 0-9 and .-_ !')); - $this->messages['cn'][1] = array('ERROR', _('Account %s:') . ' windowsUser_cn', _('User name contains invalid characters. Valid characters are: a-z, A-Z, 0-9 and .-_ !')); + $this->messages['userPrincipalName'][0] = array('ERROR', _('User name'), _('User name contains invalid characters. Valid characters are: a-z, A-Z, 0-9 and .-_ !')); + $this->messages['userPrincipalName'][1] = array('ERROR', _('Account %s:') . ' windowsUser_userPrincipalName', _('User name contains invalid characters. Valid characters are: a-z, A-Z, 0-9 and .-_ !')); + $this->messages['cn'][0] = array('ERROR', _('Common name'), _('Please enter a valid common name!')); + $this->messages['cn'][1] = array('ERROR', _('Account %s:') . ' windowsUser_cn', _('Please enter a valid common name!')); + $this->messages['sAMAccountName'][0] = array('ERROR', _('User name (pre W2K)'), _('User name contains invalid characters. Valid characters are: a-z, A-Z, 0-9 and .-_ !')); + $this->messages['sAMAccountName'][1] = array('ERROR', _('Account %s:') . ' windowsUser_sAMAccountName', _('User name contains invalid characters. Valid characters are: a-z, A-Z, 0-9 and .-_ !')); $this->messages['displayName'][0] = array('ERROR', _('Display name'), _('Please enter a valid display name!')); $this->messages['displayName'][1] = array('ERROR', _('Account %s:') . ' windowsUser_displayName', _('Please enter a valid display name!')); $this->messages['givenName'][0] = array('ERROR', _('First name'), _('First name contains invalid characters!')); @@ -516,9 +573,35 @@ class windowsUser extends baseModule implements passwordService { $this->attributes['userAccountControl'][0] = windowsUser::DEFAULT_ACCOUNT_CONTROL; } $containerLeft->addElement(new htmlSubTitle(_('General')), true); - $this->addSimpleInputTextField($containerLeft, 'cn', _('User name'), true); + // user name + $userPrincipalName = ''; + $userPrincipalNameDomain = ''; + $domains = $this->getDomains(); + $domains[] = ''; + if (!empty($this->attributes['userPrincipalName'][0])) { + $parts = explode('@', $this->attributes['userPrincipalName'][0]); + $userPrincipalName = $parts[0]; + if (!empty($parts[1])) { + $userPrincipalNameDomain = $parts[1]; + if (!in_array($userPrincipalNameDomain, $domains)) { + $domains[] = $userPrincipalNameDomain; + } + } + } + $userPrincipalNameLabel = new htmlOutputText(_('User name')); + $userPrincipalNameLabel->setMarkAsRequired(true); + $containerLeft->addElement($userPrincipalNameLabel); + $userPrincipalNameGroup = new htmlGroup(); + $userPrincipalNameGroup->addElement(new htmlInputField('userPrincipalName', $userPrincipalName, '15')); + $userPrincipalNameGroup->addElement(new htmlSelect('userPrincipalNameDomain', $domains, array($userPrincipalNameDomain))); + $containerLeft->addElement($userPrincipalNameGroup); + $containerLeft->addElement(new htmlHelpLink('userPrincipalName'), true); + if (!$this->isBooleanConfigOptionSet('windowsUser_hidesAMAccountName', true)) { + $this->addSimpleInputTextField($containerLeft, 'sAMAccountName', _('User name (pre W2K)')); + } $this->addSimpleInputTextField($containerLeft, 'givenName', _('First name')); $this->addSimpleInputTextField($containerLeft, 'sn', _('Last name')); + $this->addSimpleInputTextField($containerLeft, 'cn', _('Common name'), true); $this->addSimpleInputTextField($containerLeft, 'displayName', _('Display name')); $this->addSimpleInputTextField($containerLeft, 'initials', _('Initials')); $this->addSimpleInputTextField($containerLeft, 'description', _('Description')); @@ -608,12 +691,42 @@ class windowsUser extends baseModule implements passwordService { */ public function process_attributes() { $return = array(); + // user name + $userPrincipalName = $_POST['userPrincipalName']; + if (!get_preg($userPrincipalName, 'username')) { + $return[] = $this->messages['userPrincipalName'][0]; + } + if (!empty($_POST['userPrincipalNameDomain'])) { + $userPrincipalName .= '@' . $_POST['userPrincipalNameDomain']; + } + $this->attributes['userPrincipalName'][0] = $userPrincipalName; // cn $this->attributes['cn'][0] = $_POST['cn']; - $this->attributes['sAMAccountName'][0] = $_POST['cn']; - if (!get_preg($_POST['cn'], 'username')) { + if (empty($this->attributes['cn'][0])) { + $cn = ''; + if (!empty($_POST['givenName'])) { + $cn = $_POST['givenName']; + } + if (!empty($_POST['sn'])) { + $cn .= ' ' . $_POST['sn']; + } + $this->attributes['cn'][0] = trim($cn); + } + if (!get_preg($this->attributes['cn'][0], 'cn')) { $return[] = $this->messages['cn'][0]; } + // sAMAccountName + if (!$this->isBooleanConfigOptionSet('windowsUser_hidesAMAccountName', true)) { + if ($this->getAccountContainer()->isNewAccount && !isset($this->attributes['sAMAccountName']) && empty($_POST['sAMAccountName'])) { + $this->attributes['sAMAccountName'][0] = $_POST['userPrincipalName']; + } + else { + $this->attributes['sAMAccountName'][0] = $_POST['sAMAccountName']; + } + if (!empty($this->attributes['sAMAccountName'][0]) && !get_preg($this->attributes['sAMAccountName'][0], 'username')) { + $return[] = $this->messages['sAMAccountName'][0]; + } + } // description $this->attributes['description'][0] = $_POST['description']; // display name @@ -621,6 +734,9 @@ class windowsUser extends baseModule implements passwordService { if (!empty($this->attributes['displayName'][0]) && !get_preg($_POST['displayName'], 'realname')) { $return[] = $this->messages['displayName'][0]; } + if (empty($this->attributes['displayName'][0]) && !empty($this->attributes['cn'][0])) { + $this->attributes['displayName'][0] = $this->attributes['cn'][0]; + } // first name $this->attributes['givenName'][0] = $_POST['givenName']; if (!empty($this->attributes['givenName'][0]) && !get_preg($_POST['givenName'], 'realname')) { @@ -869,11 +985,19 @@ class windowsUser extends baseModule implements passwordService { for ($i = 0; $i < sizeof($rawAccounts); $i++) { // add object class if (!in_array('user', $partialAccounts[$i]['objectClass'])) $partialAccounts[$i]['objectClass'][] = 'user'; - // cn + sAMAccountName - if ($rawAccounts[$i][$ids['windowsUser_name']] != "") { - if (get_preg($rawAccounts[$i][$ids['windowsUser_name']], 'username')) { - $partialAccounts[$i]['cn'] = $rawAccounts[$i][$ids['windowsUser_name']]; - $partialAccounts[$i]['sAMAccountName'] = $rawAccounts[$i][$ids['windowsUser_name']]; + // userPrincipalName + if (get_preg($rawAccounts[$i][$ids['windowsUser_userPrincipalName']], 'username')) { + $partialAccounts[$i]['userPrincipalName'] = $rawAccounts[$i][$ids['windowsUser_userPrincipalName']]; + } + else { + $errMsg = $this->messages['userPrincipalName'][1]; + array_push($errMsg, array($i)); + $errors[] = $errMsg; + } + // cn + if ($rawAccounts[$i][$ids['windowsUser_cn']] != "") { + if (get_preg($rawAccounts[$i][$ids['windowsUser_cn']], 'cn')) { + $partialAccounts[$i]['cn'] = $rawAccounts[$i][$ids['windowsUser_cn']]; } else { $errMsg = $this->messages['cn'][1]; @@ -881,6 +1005,36 @@ class windowsUser extends baseModule implements passwordService { $errors[] = $errMsg; } } + else { + $cn = ''; + if (!empty($rawAccounts[$i][$ids['windowsUser_firstName']])) { + $cn = $rawAccounts[$i][$ids['windowsUser_firstName']]; + } + if (!empty($rawAccounts[$i][$ids['windowsUser_lastName']])) { + $cn .= ' ' . $rawAccounts[$i][$ids['windowsUser_lastName']]; + } + $cn = trim($cn); + if (!empty($cn)) { + $partialAccounts[$i]['cn'] = $cn; + } + } + // sAMAccountName + if (!$this->isBooleanConfigOptionSet('windowsUser_hidesAMAccountName', true)) { + if (!empty($rawAccounts[$i][$ids['windowsUser_sAMAccountName']])) { + if (get_preg($rawAccounts[$i][$ids['windowsUser_sAMAccountName']], 'username')) { + $partialAccounts[$i]['sAMAccountName'] = $rawAccounts[$i][$ids['windowsUser_sAMAccountName']]; + } + else { + $errMsg = $this->messages['sAMAccountName'][1]; + array_push($errMsg, array($i)); + $errors[] = $errMsg; + } + } + else { + $samUser = explode('@', $partialAccounts[$i]['userPrincipalName']); + $partialAccounts[$i]['sAMAccountName'] = $samUser[0]; + } + } // password if (($rawAccounts[$i][$ids['windowsUser_password']] != "") && (get_preg($rawAccounts[$i][$ids['windowsUser_password']], 'password'))) { $partialAccounts[$i]['unicodePwd'] = self::pwdAttributeValue($rawAccounts[$i][$ids['windowsUser_password']]); @@ -918,6 +1072,9 @@ class windowsUser extends baseModule implements passwordService { if ($rawAccounts[$i][$ids['windowsUser_displayName']] != "") { $partialAccounts[$i]['displayName'] = $rawAccounts[$i][$ids['windowsUser_displayName']]; } + elseif (!empty($partialAccounts[$i]['cn'])) { + $partialAccounts[$i]['displayName'] = $partialAccounts[$i]['cn']; + } // initials if ($rawAccounts[$i][$ids['windowsUser_initials']] != "") { $partialAccounts[$i]['initials'] = $rawAccounts[$i][$ids['windowsUser_initials']]; @@ -1212,7 +1369,9 @@ class windowsUser extends baseModule implements passwordService { */ public function get_pdfEntries() { $return = array(); - $this->addSimplePDFField($return, 'cn', _('User name')); + $this->addSimplePDFField($return, 'userPrincipalName', _('User name')); + $this->addSimplePDFField($return, 'cn', _('Common name')); + $this->addSimplePDFField($return, 'sAMAccountName', _('User name (pre W2K)')); $this->addSimplePDFField($return, 'description', _('Description')); $this->addSimplePDFField($return, 'displayName', _('Display name')); $this->addSimplePDFField($return, 'givenName', _('First name')); @@ -1274,6 +1433,11 @@ class windowsUser extends baseModule implements passwordService { */ function get_profileOptions() { $return = new htmlTable(); + // domain + $domains = $this->getDomains(); + $domains[] = ''; + $return->addElement(new htmlTableExtendedSelect('windowsUser_userPrincipalNameDomain', $domains, array(), _('Domain'), 'userPrincipalNameDomain'), true); + // group memberships $groups = $this->findGroups(); $groupList = array(); foreach ($groups as $dn) { @@ -1294,6 +1458,13 @@ class windowsUser extends baseModule implements passwordService { function load_profile($profile) { // profile mappings in meta data parent::load_profile($profile); + // load domain + if (isset($profile['windowsUser_userPrincipalNameDomain'][0])) { + $user = empty($this->attributes['userPrincipalName'][0]) ? '' : $this->attributes['userPrincipalName'][0]; + $user = explode('@', $user); + $user = $user[0] . '@' . $profile['windowsUser_userPrincipalNameDomain'][0]; + $this->attributes['userPrincipalName'][0] = $user; + } // load groups if (isset($profile['windowsUser_groups'][0])) { $this->groupList = $profile['windowsUser_groups']; @@ -1686,6 +1857,24 @@ class windowsUser extends baseModule implements passwordService { return $return; } + /** + * Gets the list of possible domains from the config setting. + * + * @return array domain list + */ + private function getDomains() { + $domains = array(); + if (!empty($this->moduleSettings['windowsUser_domains'])) { + foreach ($this->moduleSettings['windowsUser_domains'] as $domain) { + $domain = trim(str_replace('@', '', $domain)); + if (!empty($domain)) { + $domains[] = $domain; + } + } + } + return array_values(array_unique($domains)); + } + } ?>