From d64eb263727fd26cf26001e3dfe85a0bc3800656 Mon Sep 17 00:00:00 2001 From: donho Date: Wed, 21 Nov 2007 00:13:51 +0000 Subject: [PATCH] [REALEASE_46] New release v4.6. git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository@74 f5eea248-9336-0410-98b8-ebc06183d4e3 --- PowerEditor/bin/change.log | 19 ++++++----- PowerEditor/installer/nppSetup.nsi | 50 ++++++++++++++++++++--------- PowerEditor/src/icons/npp.ico.new | Bin 90022 -> 0 bytes 3 files changed, 45 insertions(+), 24 deletions(-) delete mode 100644 PowerEditor/src/icons/npp.ico.new diff --git a/PowerEditor/bin/change.log b/PowerEditor/bin/change.log index 6f3dc1445..9d6e227ef 100644 --- a/PowerEditor/bin/change.log +++ b/PowerEditor/bin/change.log @@ -1,12 +1,14 @@ -Notepad++ v4.5 fixed bugs and added features (from v4.4) : +Notepad++ v4.6 fixed bugs and added features (from v4.5) : -1. Fix crash issue while the launch the session file which contains the same file in 2 views (clone mode). -2. Add the session file extension association feature. -3. Enhance the read/write config.xml to avoid crash. -4. Add new -ro and -noSession command line parameters. -5. Fix Russian display problem in the shortcut mapper. -6. Fix NPPN_SHUTDOWN notification bug. -7. Add NPPM_ACTIVATEDOCMENU message. +1. Add Notepad++ self-update capacity (optional). +2. Fix save file dialog crash issue. +3. Fix the crash issue while the length of config.xml is zero. +4. Change the behaviour : When file is deleted from outside and switch back to Notepad++, user will be asked if he want to keep this file. If he answer yes, he will not be asked in the next time. +5. Change Window title from "Notepad++ - file path" to "file path - Notepad++" +6. Fix Run dialog bug: the executable file won't be executed even it is between the double quot. +7. Add open relative file path from command line feature. +8. Fix the crash issue when open a file which does not exist anymore from RFL (if its path exceed certain length). +9. Fix the bug that the title doesn't be updated while file status changed and updated. Included plugins : @@ -18,3 +20,4 @@ Included plugins : 6. Quick text v0.02 7. Light Explorer v1.4 8. Hex editor v0.84 +9. Base64 ecoder/decoder v1.2 diff --git a/PowerEditor/installer/nppSetup.nsi b/PowerEditor/installer/nppSetup.nsi index 108c77d5a..f60e43e79 100644 --- a/PowerEditor/installer/nppSetup.nsi +++ b/PowerEditor/installer/nppSetup.nsi @@ -17,7 +17,7 @@ ; Define the application name !define APPNAME "Notepad++" -!define APPNAMEANDVERSION "Notepad++ v4.5" +!define APPNAMEANDVERSION "Notepad++ v4.6" !define VERSION_MAJOR 4 !define VERSION_MINOR 5 @@ -26,7 +26,7 @@ Name "${APPNAMEANDVERSION}" InstallDir "$PROGRAMFILES\Notepad++" InstallDirRegKey HKLM "Software\${APPNAME}" "" -OutFile "..\bin\npp.4.5.Installer.exe" +OutFile "..\bin\npp.4.6.Installer.exe" @@ -696,15 +696,13 @@ SubSection "Plugins" Plugins SetOutPath "$INSTDIR\plugins\doc" File "..\bin\plugins\doc\quickText_README.txt" SectionEnd -/* - Section "XMLTools" XMLTools - Delete "$INSTDIR\plugins\XMLTools.dll" + + Section "NppTools" NppTools + Delete "$INSTDIR\plugins\NppTools.dll" SetOutPath "$INSTDIR\plugins" - File "..\bin\plugins\XMLTools.dll" - SetOutPath "$INSTDIR\plugins\doc" - File "..\bin\plugins\doc\XMLToolsReadMe.txt" + File "..\bin\plugins\NppTools.dll" SectionEnd -*/ + SubSectionEnd Section /o "As default html viewer" htmlViewer @@ -713,6 +711,16 @@ Section /o "As default html viewer" htmlViewer WriteRegStr HKLM "SOFTWARE\Microsoft\Internet Explorer\View Source Editor\Editor Name" "" "$INSTDIR\nppIExplorerShell.exe" SectionEnd +Section "Auto-Updater" AutoUpdater + SetOutPath "$INSTDIR\updater" + File "..\bin\updater\GUP.exe" + File "..\bin\updater\libcurl.dll" + File "..\bin\updater\gup.xml" + File "..\bin\updater\License.txt" + File "..\bin\updater\gpl.txt" + File "..\bin\updater\readme.txt" + File "..\bin\updater\getDownLoadUrl.php" +SectionEnd ;-------------------------------- ;Descriptions @@ -726,6 +734,7 @@ SectionEnd !insertmacro MUI_DESCRIPTION_TEXT ${autoCompletionComponent} 'Install the API files you need for the auto-completion feature (Ctrl+Space).' !insertmacro MUI_DESCRIPTION_TEXT ${Plugins} 'You may need those plugins to extend the capacity of Notepad++.' !insertmacro MUI_DESCRIPTION_TEXT ${htmlViewer} 'Open the html file in Notepad++ while you choose from IE.' + !insertmacro MUI_DESCRIPTION_TEXT ${AutoUpdater} 'Keep your Notepad++ update: Check this option to install an update module which searches Notepad++ update on Internet and install it for you.' !insertmacro MUI_FUNCTION_DESCRIPTION_END ;-------------------------------- @@ -827,10 +836,8 @@ SubSectionEnd SubSection un.Plugins Section un.NPPTextFX Delete "$INSTDIR\plugins\NPPTextFX.dll" - Delete "$INSTDIR\plugins\NPPTextFX.ini" Delete "$APPDATA\Notepad++\NPPTextFX.ini" - Delete "$INSTDIR\plugins\NPPTextFX\AsciiToEBCDIC.bin" Delete "$INSTDIR\plugins\NPPTextFX\libTidy.dll" Delete "$INSTDIR\plugins\NPPTextFX\NPPTextFXdemo.TXT" @@ -879,6 +886,7 @@ SubSection un.Plugins Delete "$INSTDIR\plugins\NppExec.dll" Delete "$INSTDIR\plugins\doc\NppExec.txt" Delete "$INSTDIR\plugins\doc\NppExec_TechInfo.txt" + Delete "$INSTDIR\plugins\Config\NppExec.ini" RMDir "$INSTDIR\plugins\" SectionEnd @@ -888,13 +896,12 @@ SubSection un.Plugins Delete "$INSTDIR\plugins\doc\quickText_README.txt" RMDir "$INSTDIR\plugins\" SectionEnd -/* - Section un.XMLTools - Delete "$INSTDIR\plugins\XMLTools.dll" - Delete "$INSTDIR\plugins\doc\XMLToolsReadMe.txt" + + Section un.NppTools + Delete "$INSTDIR\plugins\NppTools.dll" RMDir "$INSTDIR\plugins\" SectionEnd -*/ + SubSectionEnd Section un.htmlViewer @@ -902,6 +909,17 @@ Section un.htmlViewer Delete "$INSTDIR\nppIExplorerShell.exe" SectionEnd +Section un.AutoUpdater + Delete "$INSTDIR\updater\GUP.exe" + Delete "$INSTDIR\updater\libcurl.dll" + Delete "$INSTDIR\updater\gup.xml" + Delete "$INSTDIR\updater\License.txt" + Delete "$INSTDIR\updater\gpl.txt" + Delete "$INSTDIR\updater\readme.txt" + Delete "$INSTDIR\updater\getDownLoadUrl.php" + RMDir "$INSTDIR\updater\" +SectionEnd + Section un.explorerContextMenu Exec 'regsvr32 /u /s "$INSTDIR\nppcm.dll"' Delete "$INSTDIR\nppcm.dll" diff --git a/PowerEditor/src/icons/npp.ico.new b/PowerEditor/src/icons/npp.ico.new deleted file mode 100644 index 4db817fd9ff6865bf5d0ea8df1313199d9ef79e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90022 zcmeHw2V7NG@;@dfX4A|jThew-+2ohHyUG5uDVxM3yUC{5Xet7B0V#rrh++X7Dp0=tmm(IdG+9H_uOMS&%MRVYtowyyl&wX_lGs~@_I3_ zf!9O)OcE1cRM&Cn#n09M)pMYp1N9uJ=RiFN>N!x)fqD+qbKr7vz&AAV4@}LN`Z0B6 z`UijSH<$C9_3y459AK;;W%`bZ4D=J9A7Wa>G?2-g>3+_2eFLR#Kvx~PXvmoEU{crz z$HY8cttzEyK7A##x=`&{2z|=7m)^`B;ckf}8i!=PL5~k5i9hjcv z(p*=wC940LCmdjm{FoGuv$J#Q)TvYS<(FU5_uqd{-+ucoefHUBbmq(%dhfmW=-|PF zv}@Ncn_O($wv7r)ODSu?LQ0!FmHG@DL7jT_G0KG4kcIr60Zgr!>TQT8AYI0L8H+?F zh1r1v2NmwX-Wh%M)mQZK#~;(llPBrOkt6i>+iz24Wu;9nHdR#6vQ-5%Eo+|5hO{%c zAzS#{)0uiO)!UHEh_j1tLMjLX9c_TI?n2-O?VE>|Q2$v}j z_;>D=Kwp3T^)CW{Gnp{6AqNf|xVSH?q?BCPkRO>}Vnfhx(t_z;mWwO09m09v%S4GI z(|*y|JCX@puO=Jv1@jR$WGYi6Q&Xn8ZbKSy9=~Oxnb`||wfLLKhFdnIY(2Tr4mrvE zEo2(SRHtkR=cfsivi&7o7BfD0a_w^T9eMKonz&bQha5Y0j4r{3>}TF*F+EsY4kUm3 zRl$Gn{{2C<7QD{ZmcL0Dp5l z@NXR+O`m`Mx!YKvT)=Yh;K9_QMGG1@aG)CV!8_1~M454nabt`pVJun5kzD99@k^Eq z@B?G$Ci7{YuLbSa~s#Pl*H*OrAJ$qL5(P0k3xpU_f zVLTABpp(c0Qpki(q9>5b_kKw-fpWzr57Tu3+LSduX2IV)2KQ(W7c^zy}|EKqpR|AW0z)LXKp@C>Od+{1W6MVfZK= z|1~vT_xXE`82kSL|D2`yZsQLfA^5}2!v|>9x(z+|W(#^PxC{Ap4O9A{ef#!QSXiiZ z9rVP0_AfC<1an2+efM2OkOv`=2T5T+#D<8jfbIl|Ut#nubX`%`^+iwn`X64?_%rU0 z0DDmR<}FpiA3FQ^@#6~bW+4&u^sBEcY8Dbn-a+lv^{A*Q+P-}|?cKXq^|kHZy<4S_ zg?;<>DH3^j=bd*5Br<_iL!D{w6GATr^J4G~#!$L3Y{Js*DbkzV(IW(@AE1^h7w zPvzqf*GDNM>Ji4uqYe;kb`I6XilxdW2mKnYiirJElr<3 zUCk#2{_uf8kPA6R3K_wCAtA^D<`5ypd?H;g;AezTo~rYZ1K^MOqoB>3H!G^(d4nLijuiKb-arbO5Q1C?K_+z4 z^@YfTq`D0;%7K1^^&Us#l0|1pQH#{U@m z4Zt63J5V;@kMcUh+SzYiyLKhtZeh0i-(h4r^;%d&G1<#0rSh1K5*8IvTfPtSGHTQ) zWfM@Bftk!J7kLmlDChMEkQbqK>(&vj35o7NDl#GZLi7YuT_&8#1?q$730*FXG68;h zDiI;20{`*6mP6NZC=bdE`;WTf40HXrRjXD}bJp?D_g%(Kr?4q= zZJ6u$tK%I@%QjB?>jCI*cjuj4Rl6FOhV9>*WCPm4BR=OJk{pme)q>@{65Z1W-No|;ZA zy?xZPOP4OS;Q&0a-bC67@C^k|kq40lU|-5>P)bTl6cra2D|x^*qg;rtfL!1hI!6ey zpz8}~{-)Ruq`F*)4Utrrh4ak6*7obA9<3$(pA!7H?c8Os>_AQgxC@BH;r-upHtTrVn6gg3-As+75y+gV~WBb{+~}s zL`p5Z81GQyOdsDu)&7C zE(Z-q<PbV5Nv?h29W_t z3knKINaO)2WJh!bQjrIwkOiG|eF0qoLZ2377Wu|F$VV&-!7;s*{s;a%=JwB8#6K7K zcZ%(!FuN4|jdC)3_H6QR-|-^+leWG~SB+d`in}fYIDWYMg?1wFhi@T$JxF02gizmf zzY%@{@DO=`uORIR@f*co0M5D`z=s8iJV>g`g~)`+lbKwg&jNj$&{2>B2K(CPyK!){-~2^+a)evr(_^x^&Sc=sHDN$j?g_* z3vBrRX7mzzCa0X5FW*iN%__BB2mTF4ETDgO=&tm@`0?YF4uuSWWK0n$WI=2M#v8>> z$hZ^q0&sw?mc9k(hP7+gDiV3n@fFNP7FMoYsboUVCDot7G2{Yrg?B>UAb0pC{8!km z$(dQyt#@Av<~5dW!lN@7`>UC1WzHyLkJt?~V}7n3{^F~OO?SudH{y@;*w|PK8Jeo_ ze`TRX*I$#GM>maGs&M|}#Ff;#a2Iu0z0XE}&st|E0}Y4Gr3^bWqWOwfkNi*qnZ$HA^0$?TWY>`jo zMVC?d-N*xUgZK^5z2Y~>*dzQl=mgja$OG0Ti@yN>QS1Y71fIYZdO_;G$ia#gE9_)K zWC8a>p72h*dp-Lgk%@z-OI!li|G1AbCQWY4*k8+3MeFEBc?Y4;B1RoV3jO18zFbo*o<9 zg^-J+q$KK`m`o4NxPbq|Z07}QN2zbYPSsA(eZqUAhbTJ`8XBtbbCf@$d_o2w5281a zFSNywU%Uf)LfR6L2kBpc--dcCV^EL>*a`Rzz*THN0`0CE9aCVdx>1IRoGdJN^qeefsYKR_>_4F`Dup?^^P z2I*sfJV+Y=c#EBYJm47m0`jwg{lI=~`+0>GQiM7f}1vdtJ)Fv$^GV&s~+0OaBV&qGVw5$XDV0Wt!9fM7FVFQi=oI|08z`WWEjOCJO3yZHaW9@lYS&f+E1mt!LJ=+FAFSDz)^ z$Ia2dZTRzH&Hgd=?*RXy9M?^3H|mEwn0k5-<^{jiE|{(vI?oQv$1=IEPxJj99UI$) z*AB^||M<04G63Jp)BNc7!#9xfiyS~Nz*c~y&kpxNCUpG(p8-B3>;z;&db}6u1E$iOt-O_PL0xp#4sli%U@Z6xALLw@2gn4zA$CIQ z3giLpOlf1nX2^Ut$OMkJai4S_#-8;)>i)NrXUw{X+XXi=_O+$^9|ZQG^%a{{`N0Qg ze7e-%X3d(V>g%JS@pd>~&3(OZnMiQ#<*P?uhP zfPVq|hrea)uVJc{zCXsjnc#nr{Tr11a`=8auTf9X7QndBpJG$&aJ+u>Qt~h4u|F5K zpyi4kg#II41|E#)uilCIrQkWf2^{pX2(j@fCuBtGvB-)e?9Hz0@_=^Qsk`T%fFw0bO61VeQT}kq6NY zx_sdq@4f$l>g#VC5rh8T?<4ySgx@cEzcy??@Wols!Cwjt45Zh5 z{OP*EnRYU8-}GXa_(MLPoL6S|+||RfscBowJoC)VOs6tnRwk4kdK|oft^k(qV6WdJ zx&)~%3yW43sMxqzTjv)RS;W{w=L7dz!JfYh{MP~h9^4ic`8DIq<+=v{*xTEiUJU3! zR}asz!}1@Dtt%aX-|uBv(e1!*l4sL@S*9@NgmzbT;&$+YlXhSI4~u57)=~ zL%{#q{$uPB&xXcMpJ|ix>fo0r@4y@{_yYgv6lI4abo;;aHoKI8ppw0Go1u^R)_xhv zwqWfU`t&`?kGuDJVnYn;JFvzIy1!QcI1e`hd(hH?A{+kjm)zw+b={Yqo~~rzfye=N zGH^}mVrsRr(xnXe7wjU8AM1MH&pn5$cXsO3N%`K@l~-5qfvx}#VgE%ZEH7Q7_-y5O zS*-$Z{W$043Bi9W_e)7$VFzIUPzK1jtMXRI@91~$+qbX6>-PB3b~s`#SU{2MKH@jI z?RfP_dw=k;klyN@adB~~FSk1K>d8CAe=w}?=ut=TZ!7p8y*ySl_YD42#;h#@NpT{vBiERU6n9-tPPknUHpG zRdof%(OUAlk>`TCUerhYTaNJU9I8oNG{+v!>8!gtCwoW-_|$XP6jY1ERfs%jOuP#9! z@r89IunA9g?xAELF)`7jc_W_62xNPB#$+A;WHT&k;~HcCg5bYv@4h;RzsLpJg=oM3 z*T;{pPo8Bb1NZRUP{G+*`qX^;KH{smpYer&j!FiwKFw2H-MJra=dZZ_w~dU^@&8+G zU~TqI#=eW-e}d<;2*2xMig5z;<27v)ObxkzU-#>tn7hs`8TgAf=Mc|dH+T-c>f2h$ zKz@FHwaWnP*|uGKbnK6s;ZR%G82gdHAA9vdR_h|}dY&+c2L1U@@%WyOKaO9{t8gg; zL8W`?_Zchfp1r02Bzmi5D>eRr`8w{@Yj^KK8z^n+OdbE!+QQoGyNvx(;2*+kY>`); z*LC$6G34M6{$F^a9gYpz$7{j!0i4+Y{D$=CPYt*9>E9WbYKP;EypE`Ck^TB1GkIv1 zzn!igW#32qaF}InVUHd?lnyYqL!4o4_8Xqxv;Uxu{VB$|*2Z{EWbA6j9x;Y#-r}V; z{9&_T3y^;tS9SdRa_SHC9RQ~{TY6LD0aNT`;C7xD7|eR!40rw7i#*Rz*8x~t_;hiA=AU!D15-0uVSpt4OBs=UavnJnWP$}DnG zU2|nFMMf}p2=n|f@3#@p|JAYlKR4EsKo%aKW4{IsYYSg)ZCP75fBt+s88GG*dI=(>z^LSNLhTwpFO))HX; zKh^>0GJrM2dVP0v{HG~}cF$SX7Wyhb6Me)++}%At#PN!Rznp%|EXN$LI`hYQ!oIpH zk7sy21Ih&q9pUWhb<_jY3DgD1g^Yo^%RhJT! zFLd7mdQ#_GRgMuu6f$sc^k6$28>KBFtQ&Mx_vO0Js-4t`W02_j1Mk8+5pM+Zc0J8k zH=f%s^^4PHbrAnjodVvHncpz>h%Ze`Ru$OF1sR7wYi6%eAMv~Ry80NMtNLBtzvJ8DTOd!OE3mc( zF{R;-BUq<`w^s76Yxr}%9+&)W z;q{2fGx%tRlQVlQx&rc2+qwdIM_#eU67xp>$!&SG>2(=s%JJnK;V#$FcYruF`g1pP z9|QUt@LsIlc82}Q(`N*Cq}W3b>-y@{ALq$e@IS(9(oh~xd_PxuS>yt`q&DOtH#b+= zZS?8sI5y-yKg5+1tR1E3L%eaUB_@$Pe@E|B^-ky)#0haE16bc7yyY~%P62Pt4Ckw# zX33|4j6bKZEu1=as+|s4vD$8ZM@gLn-kKrC z{$t=jCCk#sjk@Ouqnf@hHbnXj(H7O~nWr`cu{O|;_d-A?!kiyn2A-O~-Ypq0#-GC+ zB&;ojEkL{xssDZL_wNX+i}*9{w*q@m!Roat@9@!T8fQph6!hqy3U1BA6e zx(wVs#l84*&*j+1s8?$XgDh(cTl%*V{O_s5_%8zf-QxSXobv~nfSvs%$pvDxL0`Yp zx?Ppy&pkZr;NDj@K5UBw>xV(j+-|Ku^_ZN3xiC;Te-Pr6?P+h9iGgX4ZY z3td}Xb+jhlgFamNZO;UUT(q|E1ztOB)*qx_!y4o}crCK7Kd@FAdWB`+XC}WoDgzA| z`)`1M)}qAJMrgQ ztwj7e`!>M?kptB`8UGKM{#ch}fN}qi;J=^u9spjb-;S{MW7Qjr#_JO4**gLyd+UKw{#`d{< zUsBzMATKpB_XO*IF`k3?bBGzH>w){Gxwp3PA9L;379xh3tSw|6Fxw1^+PKEpj|2Xg z^9TJcd^bx43*c6rSU|R%`4P_Ya=Cm9!~wv#?u%^^f6jhwp}X>a-z<%Z~XS|L7EHhog!=$1z5A z|KIEwu}TrMRF{F@CR)}OGX6g?y+dlpr+IsH9pL>hr(ir21#d~~Z z%%TY#TNgg2RR+e_u^bN)dTDNYk;?Eh^7P^W*2O9uC@WHffj{h)& zu13POVq8%0SnelmW(mhTxyOd}V$8cT)dF9o-uvsGGMWpVn{LO2=4k;TPA-g+(sVe(l+_rzQSel70L+>F@au?`K%S`&eKN8Zbwn zBKnqPuW{G`#4dsjKniN#-m*st^{d+ZAe{89gby~qH331E-C|Q#R8+rXQGO{*uGA1MgMdKXoik0#U9-vLwE-xcdlu-6~3NBxH_fK1>zFozyMZ0k8Qv#Bia z7|j^HQgpyKECc^A!KT(OF~*IVo@eULG>K^glZqM5sZ-govmv~<%(mTo=*+ouSFB9P z`i@osmKagPQb#M?fvMPc#I4`X`+Fj8jMRVV1lWW_Jm&((n2Ww}P62IPa+)fZeyC^! z?_X-Q11C7GlWPZbA!O|T#Pk+Z0@Hk^y-ZcIA#Wc#T<2|wVSUF>YzK<4hiyhihSLAi zzK4BBoKoN~_8;{h`T+HR&6>5eDtns^cfo(tlC#w7!rYLGmz2?a zZ+}K74t_<)_kKxRSDZ7Ifx@{5$j{djlbYWhbH#z}L53OsyP4i(>cfP6XfQWj#U$la z=l4a&?Ro8b;;1n+bzY8Yhg?n@V%Wa}adYmHVlqZAG5vsbCD?0Je7nVq7ZdO6%>F?( zZCtZc;STJDj_f>7o0nN^zt{jtHD3U825ymW{Yp~oMgJ%h_9eqwCG=Y!XSzrRjMv15 z3`?I(S&Nr)J7i0>v_n?&TxsoFTZ}j`Mqx}U1{vx=|=u&7#A!ciks8+y#H6 zhqiofsspkomWeNj^m*g=evRkMf7p=cm_nHlyKp_zr%XCFrpLU`GWTU!Y)Ia!BHGF^ z`OkdlUONQiB;kpJ^!N5Q<3Hmx5#u`3CeKoOASZJ z^?&x*LLL9woHJxr)H-#I@xO}+v25d+<}&SO`i@D*%=B2dAq8v8XdkyjKG){Op5xd! z>9ezp&))BV0S#FO*7*AP(bCM#7hzh#y8cMzc~d>GqsZPLjJ57z&+jXC@U8mG&N%=Z z@(5EKrlCyvOvjj1%sWnvnA)9(aXTb5VSwE=>odEZeU|aMmFY;wpb%QO@c2bCux0r< zdXIfSqYl`$`eSu3+JM9QO_aL7j^EYT+4t&y^Na(G;Z014e-Ofy&Q!+q36mMt#%qwB zmtB34F?)pRd`$O#v}x(ti)3JX!AJDLev1rzu>ULCz2*~j&+43`6dk7azWpCRKbXH$ z<8#DZmF<`MJL7sM(|?)bn6j95G3hqs3qE&ye1`FRi|KzudH->->3UjO{IT-=APcy@ zXlexo^4bG_=0m1ef2n-F!pepHF)(Kqdo_AIHp@81GttyhOHE|}xI^EM9h}AM4q5^G zGNwDOFdo%s*9iw0&#YEFj~MMaz5e5PZSFC$`gvF{K9pZmukW4k@(TT_5o5chWs6pX zKApwWw^IJBos`b&0|R&;JN^yxzh1jS%T}LlH#orf-p+(|AHZ9uaz4M)jaSs)a)on% zasDk+8dD_`aL3&5dVPO|<658ndJfccpq>Nu9H{3&JqPMJP|tyS4%Bm?o&z<_0jmDL zM)t4#*{g}&g`d5=2I&`m;?}I;+^ey6fq(b%YI@;?z)Anz)p--c{buJ$+V}9gv-75g->Y)2eNG{+pY!X<$vN1q|8929;%@r` z`#m`ayY>5BorC>W@mJq;b>75qzpL}6hWl}D6o37Ekl}Y%=X|@}`^?Vu>Vx04bH#oS z&H;!1ygEN_L(8I;v~#duuO6<>!G34=tM8Rv_@2tYlXGYbyXrQ`aNg8#-o$W@3?*Io zp3->wISQnoBZK-mGN_*;Lw4tbE&d&QU?$_({gSB8S`PR=PK8YlP;X&qm9etdA^IqxQTwwd~b5xqVTQn@M`+Gm<)C0 zCw``h^*2lMlf9wilG*)CKU=eFyJ{((?X)HiFhTGorX;2YUia{S{;N~F&0Df`h5h$< z%>N22pTq3>S?0lDjUVRM@;uw944zvZ>esEubAeG&H#>arm+=GQ#@ftG-94#Xauk4hAg{vqMd`-guw zYvzl2-Q4V)1vF|R*P$V(L-AkuhDB`h35l4(btr;)^J2U1-7iZVP1fmWx9!|jW94_m zQ|KSWr#*S{q_qz1q@^oY(UduJX$Y@H?7?+3ATsupZ&+l3Ur6Lg#x2M@H0p1RW0ltp z!?yE#=orVVaFj2|F$llw$Byo=&g*7%XhX$j%Hg$M6Q<9izA2+HXB+#jR{C|1@;J7d zPq*-=Q2tL?r<>&)`x^`#I8f<(#4$!3Y!I*lA%BRQB>XXZ$K|+&I)s?Zr%s)soTd3P zZ+)-SX?Iih@d6PW9`7^DC$4ww*pYk!0x2~$RecXS9)!5wLg0n)2C2wNP4MMIjxPZW zeL^F*x?66!k8M#hV&j>W9eGFjr%#_wEyJRjdXOLU0eiq=eLqNIy}(BTNo;hTFGg9Z zZh1L%#-2ncZ}Mh7#B)45 ztasnJbEk@Zf&G>C?AfDe_wL;ULhJ(}yhCDdo5{+h@MH!1U%=ltw8sPPmRs)Q=XMtH zIxv)9@~5ZBH*`PLamq*PwP7Zj0_7Q9od>M&{hccm@z#asCAbu98 zu&~g^6YxgoiPRyH7sv_Ti@fz8Ihy>#qKp(E?d4L#*H*?He#J)uw?DnO5>5hq({qeB>L3DJqvL)cF{vNaufuGm~ z#K?lafc=2npgy3il7bI9fggymfp|-$Yt~U%LL$W^4|~J2l3VU(*cs^tH3`QKT$sY2;}z1+@@(T4RN zl&Z=Iyn(yUgO)3>KUy9k{{7P&*9LK~9KBEYA~GVj2l@{62XPg_6UaMs0CWcA0z84N z3>q~W?ZjDJe)J)DTK}?f-Y;F}K~TwFx^2R8_4|E2lGPp?kY{J#5S;+I zKv{vk@J0BrbMHO^cCEvsnxiaL`D59inr7V-33lIEo}B$Qa^y(5KPpL;@m4NtAnysK z^T3~ZBKrgVy-N&@88fCz-vVExt{^@y_qBh)<*t(62fw)d>+)6>*vXr&hh6zX!V~y6 zJ!4}@_E&E*wa~8o;KiHP{c%uNo^RJ##lw{6Jxw7KkbTa7ZdGuXXZZQko44<j}bh z=!@aQhtr>8Qxp&Wkg<}24L)+Km6dcY`^ezIQyszy?P|!jGd~2s&EfsKx%@x+cjZ>#VGfeuEz$-lGTInmAFF@qrm7b}|56@E_h^u>qIA;jnCa ziPuG=O(X9!+98zvD{gyric28Qd+DW=9nUfkx3Ag^9pp>$=qg3u zhhN7ow*6)QnZ5oZ9{j)g>lJ^l=lunmwGL4IB#z#Docr6YvfsTL%74Cc&t7HMoR#0v zZ@>e5fj$Bc9q|SIJue4!R{N`BZ!GMYVYCU@Lj(2TcYP;Ndmd*%TiA>T3zn}!`G58a ziMiua%FlM=cJT524^AlgNB%*|uV$aq%)UF~gMMAFL&6v60`%F){-W3NzTrNrD(!d> z#Jb`4);&b;i5{Z%oIqZTJW#Qzcs%q{%8q9-j*9Z5oFFNKQP$z}fG^_rIMYq?4zm>R zoj7r#ZGX+iX@bp4nmN)E8^682uv%P->_XtP{u`Tas7x&}wbDVa6P zuko5u){AD%j;V6pmohj(47rx+{SslW7VaL!gy2-k~;$xX>>|_A) z@FMr8K^I&*WG?;3zn$`t!GoxQgHisSms)l_58r8a?m|`Hr7YEz>N)^*7(CJI5c++a z1$U-vhg$X*d||=Hi+J!j^94M>K9t^V0#u(5>MPGD>R%n@=XV`k&0_}8*?Rr2E*_Y@ zN7pUr_x@LKi1Lvk?{DRAv*Q8w+C=>T4{q;7`rk6uFltp9X<2>p1=_HrBkQR*s#~Jfy_ehgD2ANy;QsCh-a8f(8RjG8urjeUy;rO*vUrRrvy2G{p9!= zlZ@r@^c?dOQGU_gj`D`ah4Y;EP_Tt7;d~ZxR#R%eKGRee4J6<;OAnr3T!$ zi2doYPd&$)y(Hg{+r2Sed-qe=ifu8!ONcFF84F`lT$J#ndVs4?$-eUs&MZ+pxRqlIzSXkj$8Wv$)_qbYPg0)ewkBuUa+l?o{2NnX zj4~OodwOoHLm1QfXU7OtMvNWFn4;7Nw4ZNFxAY@7i5Ui6@HWfAO`en;_cHz`@{39@ zIscxP*PZ(@uJ}-RKgENa#x5g_B}(~`LI$26JCCyFXH#sv+FN`%7wIYwcz}I6ejYT& zGT!S>o@)A@l#~>@GtN4;h<&%M{U*=MTSrs#3)Or9?4gEnhi=`vK@L(pC_m#LaR~Z9 zp67ezJ)c!?T2MENmS06w(rt(lcM5Bp|(%RG3>T^{K7VLq{H5A*zD z=EGE;KUjfr72!*l-hBysfXvKYM5Vm;;qcL8%Enb^d5!Oa|J9o3+PxUq`G51ct^;f6 zN36d<`N0SDt1Mi&h*srnqpS&~@C!~cRaacO2Cc$k?%}y1&AG2Fk$I8Jw4VucYzgZm zA_oknQIn@pZvM(@uS5F|9#S&dvUQsYu{^E>Um1k)5-IM8nq!hPQ4cWp z^Ew^hYCdj+IaXYMf>}mJIjTb$wmP)GN_A+`oOvk!*UdvhuIDnPB_}5<8NhzxXgig! z-^6>$d`j=`IBzRIVv9zFDw{C2n#=6+b?A%s?-tdR*SbV+SujPN9xrPPSx|_nK<#@7wzD^2{B!vI2XFCtq1)i6b8w(i?if?ReGl z{u)jj`F9KdyIzO5Kjsw5Y@?9KcOmC`^#yu{Z>O#NfKzfg6ceDMiNh#89b z=>z#0Py8YM6SaCQbqMRwV57}4)3RmD|HOnR{)G6^BJ;~;R#L~{Zs(XkRc;fReXFis zV~nFhJ4dVd+R1&!k+-+s8ZP@E>uP>4N4~hcKFo()rmp<{D^lJs2Vd&nY0iO*ViA-z zwOlH*1~EwTvP3UP^0Guh;8cY>Kx&I4!SNk%jtD?1;Q$KmrA@5&H9?>T{*$z+_1u^a zvR=2P*03mptf_=av8D|!N;&=m|241%pSapV+Q@qSLTU*=(%2eS#F#d*UN@#qtuZZ{ zSkuPVw2?Kv+L|^nq+Zr@uR+IEe!YYbO{^JfLY6xaSOZamk^W>&>GP|T_;>zG5ipMr zQs;Eul4$=CC*mHamzX3@MA9vMa)tb1-8B2!?Rn0})0Z;mr>eyb?h#j7$#a_y9y&~` zdH(UN>;<0<88d!s)PTY1y!O4VbzI_-`{o_xZ`7ozADgui(Z7m0<2!jAKfkc}e-mb8 zp6)+tbaCgngh77YBH!@o8g;j$ce;BWepqh)il2?&cXST_9eu~gxLgfAs*YOO-Br)&wAoriFE-R;*^A~(E zVAPl`z9Eqb&UnFNZhnWgmW7gzOENbQWjFi2qig6Z?>i!uFc-~H9{fV0 z`kmvsQ8LDgZ}~>XQmgLKG-<|6H8zO3*dWX|0b%}x^uwb+N%CdZZyP^s?&kF-E9tQbi)i$eY3lvx8^ZbttR=yG zBCMZ4-wD=?V7&nHgtZmO)4GkDFsA6|@ZbSwyX zz8aUL=B;4uS2aO(g)a<)v*M?4-M%Slg^SF&=ZqrlDk3TYB z*0H_R#{q#w`ph{$J8I)E0=G zv&las`p?>@Ob@Xx@(k;1`M#r6bh6ZUq-)ogvp&oqSrdf$9XIfNmm%Xbuuiek^n-?r zSeGdE)fonk@-<~%Hr+UQHod{?4!{S@v%z|;Hv@t(X6Ev*YkXn}>Xy`XDJOUj8A6_r znqeS$iWxbUZWy(Y{H$wYprh~VHS*_X&6>UBDg&vLr=8a8nbdXpCcdx#j$_<|>&PSW z1%Ib`!Vr=*DbUe(@w}Rc!V|xCF@D@|VA{AJjqk6@Ir8vC+%Re~wMgOc@9Z^{mYGd4 zF)=5&AH(7JEsw*@88R;8r=^7@w42AGKIFP(tn=>X=OB-p+{N?mUYM9iyV*B@pE8$q zV?=m#1>@kX|KwWupXiHac^nZK)vKs)O4`|p+&^DhzJU%OIm-6ni;HkD%U3}6s81%c zzlQaT7{^&tvW}K#R#Lk*?Z>&21>^5%55bQ{Tq)+$#BO~OHz$uv{}Ov&SMa#V2kZkv zM@l}9ymy@YlOxhNhR1~YJf5_!bR+LadS2~CpFS)HedZ4RPvf_pouj>>+8tq$@vXz6 z=JiY-b}(h)lpom6pR>k!YS1fk;QEb=Pt)P8pVO{2A5!nAq(jc+z}ffQ{H>whm;Bmm zuicQ?Yvg;_YdJC`K9k?!(D!xo{Z+b+`}C{4cBM)mbmJj(8T{0giMxe<@>2aGO}^uv z2c`zr6vv9VucVPijrmxp$#E~l+f>w)QxMJ@Gc^KzhhC*J1nl%mCi-6rfA%wc8~qfw zFx|r>{S+^`XjSu=!2^7Il`!OS%-2qzIYYb37qo12{-GiXQvzt?39 zyP@MVMoJxnZW8?jy8&O|og+v8SFvsTXG;o-Do0P5p2qLIpYv+_<9RscsHf>ur&D6; zSQQ%p?GosC=yJSUfA7Gwu}f?Z^TC=88_&Q-Vh&ZWyb^kI+7ep9^Mv8sV;vIOJNx$S zQ)^D4hxz->^yl9`aPSAQYc0mjQEi$38$L_5-EkdjuqAFqS$X--ex1ANV=~ua4x!k( zog6>p!7;gNZu?V76IA(Ohd?Of%$x<=^>1@t9)oQ~`S3f+oWE`Z{dGnGy}ooS`KP4Y z-VOhc;}f;fpYIqO-v+i0gy)6#Bjzur=W{pEv%J<~NM?@uKCf}Z9=>+VThe*iv+pNjP9!IQ{$)lT}$=p6X^ z$;Ri)w`~0sc}Ka0N01wwD@>X94~@uFzQg?kGrnbeZP!kmoHc(B)9O$(Xyw}VlsYQ)L(YR;ZDO9>!1Of7j)~^?E$8(xCwNWBk0-fphrEEV;qiS}6&DrL z=G6x&E-GoFu^eXS{LVYMZoLtb&>#Ei-jv*D{G5d|%DxT{iGSJbeowD`#@(T1O_>@P Wh<8>?65>^{Ng(Sv?j;aE`~LwrA_YwV