criu-3.15.1.28-1.vz7>  j|`w  }Dͭ*@ lJc?HѣX.qo'>׻`FR;y44(0`~#g}Qyk{Z%~+^.mb!j4Dldy Paۨk%Ĉbe5d57e1567159dfb8ecbc8368def88c94b3d4ee܈`w  }Dͭ*b(6%cԨp\4lF&}"GUmNA0zz+u~Z 2^J!]1c=*؞y\:.be̻ڣLuz-by O@>P9u #d@GfD,4 zoNe>?l?\d  A  @Xiox         !  L    T## C#( 8 9:h>]@lB{Gτ Hϸ I XY Z@[D\L ]Ѐ ^ bc[drewfzl|tҔ u v wp xդ y XCcriu3.15.1.281.vz7Tool for Checkpoint/Restore in User-spacecriu is the user-space part of Checkpoint/Restore in User-space (CRIU), a project to implement checkpoint/restore functionality for Linux in user-space.`wbuilder9.eng.sw.ru VirtuozzoVirtuozzoGPLv2Virtuozzo (http://www.virtuozzo.com/support/)System Environment/Basehttp://criu.org/linuxx86_64B bC/ AAA큤`w`w`w`w`w`w`w`w`w`w3`w3`w`wf97fd3c7144aabbed808253a97398ed1c88329587c32ccb18ec48d04acf961ee99dc20a4671e388e6ee5a59052f4ac5622bda510276533183a90056554e7cfd42a1d15cf1341d8a702cf2cabb452c67b27061a4ae753d9d97ea8b74f68ecb410e59920047335e5a77acb4c182a39819a18a25e6983e11fefa6f148e086e88530568a1fa9d90e18a1a1a61ea58ec2eece16b56a5042cc72c1b4f8d4455ae6fcb76bd1c2b9ae15a8a57742f5854db20c710a176f85b383b1c184a0bbfdf5921c03ce6d4df8decdbc182d1f6608b550dcd78ca2f4f72306a9b9a6d47ed6af683d798dd4aa945a7e2bcd58a0c0e6d5a8bf2c9735d5554f4ae0af12b0a2d95f333c5clibcriu.so.2.0/usr/sbin/criurootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootcriu-3.15.1.28-1.vz7.src.rpmcriucriu(x86-64)crtoolslibcriu.so.2()(64bit)@@@@@@@@@@@@@@@@@@@@@@@    @ /bin/bash/sbin/ldconfig/sbin/ldconfigipsetlibc.so.6()(64bit)libc.so.6(GLIBC_2.10)(64bit)libc.so.6(GLIBC_2.13)(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.15)(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.2)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.5)(64bit)libc.so.6(GLIBC_2.7)(64bit)libc.so.6(GLIBC_2.8)(64bit)libc.so.6(GLIBC_2.9)(64bit)libdl.so.2()(64bit)libdl.so.2(GLIBC_2.2.5)(64bit)libnet.so.1()(64bit)libnl-3.so.200()(64bit)libnl-3.so.200(libnl_3)(64bit)libprotobuf-c.so.1()(64bit)libprotobuf-c.so.1(LIBPROTOBUF_C_1.0.0)(64bit)nftablesphaulrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rtld(GNU_HASH)spfsvzpkgenv414x64rpmlib(PayloadIsXz)0.1.713.0.4-14.6.0-14.0-15.2-14.11.3`x*`u`KW`0`/@`.V`.V`+`+`&m`@`@`@`````2@_@_@_k_ܙ_H@_H@__إ@_$_$_@____:_F@^1^1^@^T@^^g@^O@^F^:@^ P@^@]f@]҇]҇]Γ@]ʞ]ʞ]@]@]]]]]n]z@]@]]V]]{]v>]rJ@]g@]R@]J@]D%]:@]1],j],j]'$]G@]@]@] #]:\t@\"\@\@\\\@\\,@\,@\\@\7\@\\@\e\\@\@\y\v{\\\N\2\@\I[H[_[@[[[[ͻ[[[@[F[][#@[@[["@[-[@[W[S @[L[?Y[>@[6@[4[3|@[0@[,[+@[(@[#@[#@[5@[ @ZnZnZZ@Zb@Z@ZZ3@ZZЛZ̧@Zľ@Zľ@Z@ZZZZ@ZZ Z$Z|;Zo Z]@Z\ZV@ZTZP@ZP@Z@@Z@X>@X<@X8'X8'X5X43@XI@XkW@W1@W 3.15.1.28VZ Auto Builder 3.15.1.27VZ Auto Builder 3.15.1.25VZ Auto Builder 3.15.1.23VZ Auto Builder 3.15.1.22VZ Auto Builder 3.15.1.21VZ Auto Builder 3.15.1.20VZ Auto Builder 3.15.1.19VZ Auto Builder 3.15.1.18VZ Auto Builder 3.15.1.17VZ Auto Builder 3.15.1.15VZ Auto Builder 3.15.1.14VZ Auto Builder 3.15.1.13VZ Auto Builder 3.15.1.10VZ Auto Builder 3.15.1.7VZ Auto Builder 3.15.1.6VZ Auto Builder 3.15.1.5VZ Auto Builder 3.15.0.18VZ Auto Builder 3.15.0.17VZ Auto Builder 3.15.0.16VZ Auto Builder 3.15.0.15VZ Auto Builder 3.15.0.14VZ Auto Builder 3.15.0.13VZ Auto Builder 3.15.0.12VZ Auto Builder 3.15.0.11VZ Auto Builder 3.15.0.10VZ Auto Builder 3.15.0.9VZ Auto Builder 3.15.0.8VZ Auto Builder 3.15.0.7VZ Auto Builder 3.15.0.6VZ Auto Builder 3.15.0.5VZ Auto Builder 3.12.6.3VZ Auto Builder 3.12.6.2VZ Auto Builder 3.12.6.1Denis Silakov 3.12.3.5-2VZ Auto Builder 3.12.3.5VZ Auto Builder 3.12.3.4VZ Auto Builder 3.12.3.3VZ Auto Builder 3.12.3.2VZ Auto Builder 3.12.2.11VZ Auto Builder 3.12.2.10VZ Auto Builder 3.12.2.8VZ Auto Builder 3.12.2.7VZ Auto Builder 3.12.2.6VZ Auto Builder 3.12.2.5VZ Auto Builder 3.12.2.4Cyrill Gorcunov 3.12.2.3Cyrill Gorcunov 3.12.2.2Cyrill Gorcunov 3.12.2.1VZ Auto Builder 3.12.1.36VZ Auto Builder 3.12.1.35Cyrill Gorcunov 3.12.1.34VZ Auto Builder 3.12.1.33VZ Auto Builder 3.12.1.32VZ Auto Builder 3.12.1.30Cyrill Gorcunov 3.12.1.29VZ Auto Builder 3.12.1.28VZ Auto Builder 3.12.1.27VZ Auto Builder 3.12.1.25VZ Auto Builder 3.12.1.24VZ Auto Builder 3.12.1.23VZ Auto Builder 3.12.1.22VZ Auto Builder 3.12.1.21VZ Auto Builder 3.12.1.20Cyrill Gorcunov 3.12.1.19Cyrill Gorcunov 3.12.1.18VZ Auto Builder 3.12.1.17VZ Auto Builder 3.12.1.15Cyrill Gorcunov 3.12.1.14Cyrill Gorcunov 3.12.1.13Cyrill Gorcunov 3.12.1.12Cyrill Gorcunov 3.12.1.11Cyrill Gorcunov 3.12.0.10Cyrill Gorcunov 3.12.0.9Cyrill Gorcunov 3.12.0.8Denis Silakov 3.12.0.7-2Cyrill Gorcunov 3.12.0.7Cyrill Gorcunov 3.12.0.6Cyrill Gorcunov 3.12.0.5Cyrill Gorcunov 3.12.0.4Cyrill Gorcunov 3.12.0.3Cyrill Gorcunov 3.12.0.2Cyrill Gorcunov 3.12.0.1Cyrill Gorcunov 3.11.1.5Cyrill Gorcunov 3.11.1.4Cyrill Gorcunov 3.11.1.3Cyrill Gorcunov 3.11.1.2Cyrill Gorcunov 3.11.1.1Cyrill Gorcunov 3.11.0.16Cyrill Gorcunov 3.11.0.15Cyrill Gorcunov 3.11.0.14Cyrill Gorcunov 3.11.0.13Cyrill Gorcunov 3.11.0.12Cyrill Gorcunov 3.11.0.11Cyrill Gorcunov 3.11.0.10Cyrill Gorcunov 3.11.0.9Cyrill Gorcunov 3.11.0.8Cyrill Gorcunov 3.11.0.7Cyrill Gorcunov 3.11.0.6Cyrill Gorcunov 3.11.0.5Cyrill Gorcunov 3.11.0.4Cyrill Gorcunov 3.11.0.3Cyrill Gorcunov 3.11.0.2Cyrill Gorcunov 3.11.0.1Cyrill Gorcunov 3.10.0.21Cyrill Gorcunov 3.10.0.20Cyrill Gorcunov 3.10.0.19Cyrill Gorcunov 3.10.0.18Cyrill Gorcunov 3.10.0.17Cyrill Gorcunov 3.10.0.16Cyrill Gorcunov 3.10.0.15Cyrill Gorcunov 3.10.0.14Cyrill Gorcunov 3.10.0.13Cyrill Gorcunov 3.10.0.12Cyrill Gorcunov 3.10.0.11Cyrill Gorcunov 3.10.0.10Cyrill Gorcunov 3.10.0.9Cyrill Gorcunov 3.10.0.8Cyrill Gorcunov 3.10.0.7Cyrill Gorcunov 3.10.0.6Cyrill Gorcunov 3.10.0.5Cyrill Gorcunov 3.10.0.4Cyrill Gorcunov 3.10.0.3Cyrill Gorcunov 3.10.0.2Cyrill Gorcunov 3.10.0.1Cyrill Gorcunov 3.8.0.33Cyrill Gorcunov 3.8.0.32Cyrill Gorcunov 3.8.0.31Cyrill Gorcunov 3.8.0.30Cyrill Gorcunov 3.8.0.29Cyrill Gorcunov 3.8.0.28Cyrill Gorcunov 3.8.0.27Cyrill Gorcunov 3.8.0.26Cyrill Gorcunov 3.8.0.25Cyrill Gorcunov 3.8.0.24Cyrill Gorcunov 3.8.0.23Cyrill Gorcunov 3.8.0.22Cyrill Gorcunov 3.8.0.21Cyrill Gorcunov 3.8.0.20Cyrill Gorcunov 3.8.0.19Cyrill Gorcunov 3.8.0.18Cyrill Gorcunov 3.8.0.17Cyrill Gorcunov 3.8.0.16Cyrill Gorcunov 3.8.0.15Cyrill Gorcunov 3.8.0.14Cyrill Gorcunov 3.8.0.13Cyrill Gorcunov 3.8.0.12Cyrill Gorcunov 3.8.0.11Kirill Tkhai 3.8.0.10Kirill Tkhai 3.8.0.9Kirill Tkhai 3.8.0.8Kirill Tkhai 3.8.0.7Cyrill Gorcunov 3.8.0.6Kirill Tkhai 3.8.0.5Cyrill Gorcunov 3.8.0.4Cyrill Gorcunov 3.8.0.3Cyrill Gorcunov 3.8.0.2Cyrill Gorcunov 3.8.0.1Cyrill Gorcunov 3.4.0.202Cyrill Gorcunov 3.4.0.39Cyrill Gorcunov 3.4.0.201Kirill Tkhai 3.4.0.38Kirill Tkhai 3.4.0.37Kirill Tkhai 3.4.0.36Cyrill Gorcunov 3.4.0.35Kirill Tkhai 3.4.0.34Cyrill Gorcunov 3.4.0.33Kirill Tkhai 3.4.0.32Cyrill Gorcunov 3.4.0.31Cyrill Gorcunov 3.4.0.30Kirill Tkhai 3.4.0.29Kirill Tkhai 3.4.0.28Kirill Tkhai 3.4.0.27Cyrill Gorcunov 3.4.0.26Cyrill Gorcunov 3.4.0.25Cyrill Gorcunov 3.4.0.24Cyrill Gorcunov 3.4.0.23Cyrill Gorcunov 3.4.0.22Cyrill Gorcunov 3.4.0.21Cyrill Gorcunov 3.4.0.20Cyrill Gorcunov 3.4.0.19Cyrill Gorcunov 3.4.0.18Cyrill Gorcunov 3.4.0.17Cyrill Gorcunov 3.4.0.16Cyrill Gorcunov 3.4.0.15Cyrill Gorcunov 3.4.0.14Kirill Tkhai 3.4.0.13Kirill Tkhai 3.4.0.12Cyrill Gorcunov 3.4.0.11Kirill Tkhai 3.4.0.10Cyrill Gorcunov 3.4.0.9Kirill Tkhai 3.4.0.9Cyrill Gorcunov 3.4.0.8Cyrill Gorcunov 3.4.0.7Cyrill Gorcunov 3.4.0.6Cyrill Gorcunov 3.4.0.5Cyrill Gorcunov 3.4.0.4Cyrill Gorcunov 3.4.0.3Cyrill Gorcunov 3.4.0.2Cyrill Gorcunov 3.4.0.1Cyrill Gorcunov 3.0.0.202Cyrill Gorcunov 3.0.0.201Cyrill Gorcunov 3.0.0.37Cyrill Gorcunov 3.0.0.35Cyrill Gorcunov 3.0.0.34Cyrill Gorcunov 3.0.0.33Cyrill Gorcunov 3.0.0.32Cyrill Gorcunov 3.0.0.31Cyrill Gorcunov 3.0.0.30Dmitry Safonov 3.0.0.29Cyrill Gorcunov 3.0.0.28Cyrill Gorcunov 3.0.0.27Cyrill Gorcunov 3.0.0.26Dmitry Safonov 3.0.0.25Dmitry Safonov 3.0.0.24Dmitry Safonov 3.0.0.23Cyrill Gorcunov 3.0.0.22Dmitry Safonov 3.0.0.21Cyrill Gorcunov 3.0.0.20Dmitry Safonov 3.0.0.19Dmitry Safonov 3.0.0.18Dmitry Safonov 3.0.0.17Dmitry Safonov 3.0.0.16Dmitry Safonov 3.0.0.15Dmitry Safonov 3.0.0.14Cyrill Gorcunov 3.0.0.13Dmitry Safonov 3.0.0.12Andrey Bondrov 3.0.0.11-3Andrey Bondrov 3.0.0.11-2Dmitry Safonov 3.0.0.11Dmitry Safonov 3.0.0.10Dmitry Safonov 3.0.0.9Dmitry Safonov 3.0.0.8Dmitry Safonov 3.0.0.7Dmitry Safonov 3.0.0.6Cyrill Gorcunov 3.0.0.5Cyrill Gorcunov 3.0.0.4Dmitry Safonov 3.0.0.3Dmitry Safonov 3.0.0.2Cyrill Gorcunov 3.0.0.1Cyrill Gorcunov 3.0.0.1Cyrill Gorcunov 2.10.0.49Cyrill Gorcunov 2.10.0.48Cyrill Gorcunov 2.10.0.47Cyrill Gorcunov 2.10.0.46Cyrill Gorcunov 2.10.0.45Cyrill Gorcunov 2.10.0.44Cyrill Gorcunov 2.10.0.43Cyrill Gorcunov 2.10.0.42Cyrill Gorcunov 2.10.0.41Cyrill Gorcunov 2.10.0.40Cyrill Gorcunov 2.10.0.39Cyrill Gorcunov 2.10.0.38Cyrill Gorcunov 2.10.0.37Cyrill Gorcunov 2.10.0.36Cyrill Gorcunov 2.10.0.35Cyrill Gorcunov 2.10.0.34Cyrill Gorcunov 2.10.0.33Cyrill Gorcunov 2.10.0.32Cyrill Gorcunov 2.10.0.31Cyrill Gorcunov 2.10.0.30Cyrill Gorcunov 2.10.0.29Cyrill Gorcunov 2.10.0.28Cyrill Gorcunov 2.10.0.27Cyrill Gorcunov 2.10.0.26Cyrill Gorcunov 2.10.0.25Cyrill Gorcunov 2.10.0.24Cyrill Gorcunov 2.10.0.23Cyrill Gorcunov 2.10.0.22Cyrill Gorcunov 2.10.0.21Cyrill Gorcunov 2.10.0.20Cyrill Gorcunov 2.10.0.19Cyrill Gorcunov 2.10.0.18Cyrill Gorcunov 2.10.0.17Cyrill Gorcunov 2.10.0.16Cyrill Gorcunov 2.10.0.15Cyrill Gorcunov 2.10.0.14Cyrill Gorcunov 2.10.0.13Cyrill Gorcunov 2.10.0.12Cyrill Gorcunov 2.10.0.11Cyrill Gorcunov 2.10.0.10Cyrill Gorcunov 2.10.0.9Cyrill Gorcunov 2.10.0.8Cyrill Gorcunov 2.10.0.7Cyrill Gorcunov 2.10.0.6Cyrill Gorcunov 2.10.0.5Cyrill Gorcunov 2.10.0.4Cyrill Gorcunov 2.10.0.3Cyrill Gorcunov 2.10.0.2Cyrill Gorcunov 2.10.0.1Cyrill Gorcunov 2.8.0.15Cyrill Gorcunov 2.8.0.14Cyrill Gorcunov 2.8.0.13Konstantin Volkov - 2.8.0.12-2Cyrill Gorcunov 2.8.0.12Cyrill Gorcunov 2.8.0.11Cyrill Gorcunov 2.8.0.10Cyrill Gorcunov 2.8.0.9Cyrill Gorcunov 2.8.0.8Cyrill Gorcunov 2.8.0.7Cyrill Gorcunov 2.8.0.6Cyrill Gorcunov 2.8.0.5Cyrill Gorcunov 2.8.0.4Cyrill Gorcunov 2.8.0.3Cyrill Gorcunov 2.8.0.2Cyrill Gorcunov 2.8.0.1Cyrill Gorcunov 2.5.0.23Cyrill Gorcunov 2.5.0.22Cyrill Gorcunov 2.5.0.21Cyrill Gorcunov 2.5.0.20Cyrill Gorcunov 2.5.0.19Cyrill Gorcunov 2.5.0.18Cyrill Gorcunov 2.5.0.17Cyrill Gorcunov 2.5.0.16Cyrill Gorcunov 2.5.0.15Cyrill Gorcunov 2.5.0.14Cyrill Gorcunov 2.5.0.13Cyrill Gorcunov 2.5.0.12Cyrill Gorcunov 2.5.0.11Cyrill Gorcunov 2.5.0.10Cyrill Gorcunov 2.5.0.9Cyrill Gorcunov 2.5.0.8Cyrill Gorcunov 2.5.0.7Cyrill Gorcunov 2.5.0.6Cyrill Gorcunov 2.5.0.5Cyrill Gorcunov 2.5.0.4Cyrill Gorcunov 2.5.0.3Cyrill Gorcunov 2.5.0.2Cyrill Gorcunov 2.5.0.1Cyrill Gorcunov 2.4.0.6Cyrill Gorcunov 2.4.0.5Dmitry Safonov 2.4.0.4Cyrill Gorcunov 2.4.0.3Cyrill Gorcunov 2.4.0.2Cyrill Gorcunov 2.4.0.1Cyrill Gorcunov 2.1.1.5Cyrill Gorcunov 2.1.1.4Cyrill Gorcunov 2.1.1.3Cyrill Gorcunov 2.1.1.2Cyrill Gorcunov 2.1.1.1Cyrill Gorcunov 2.1.0.49Cyrill Gorcunov 2.1.0.48Cyrill Gorcunov 2.1.0.47Cyrill Gorcunov 2.1.0.46Cyrill Gorcunov 2.1.0.45Cyrill Gorcunov 2.1.0.44Cyrill Gorcunov 2.1.0.43Cyrill Gorcunov 2.1.0.42Cyrill Gorcunov 2.1.0.41Cyrill Gorcunov 2.1.0.40Cyrill Gorcunov 2.1.0.39Cyrill Gorcunov 2.1.0.38Cyrill Gorcunov 2.1.0.37Cyrill Gorcunov 2.1.0.36Cyrill Gorcunov 2.1.0.35Cyrill Gorcunov 2.1.0.34Cyrill Gorcunov 2.1.0.33Cyrill Gorcunov 2.1.0.32Cyrill Gorcunov 2.1.0.31Cyrill Gorcunov 2.1.0.30Cyrill Gorcunov 2.1.0.29Cyrill Gorcunov 2.1.0.28Cyrill Gorcunov 2.1.0.27Cyrill Gorcunov 2.1.0.26Cyrill Gorcunov 2.1.0.25Cyrill Gorcunov 2.1.0.24Cyrill Gorcunov 2.1.0.23Cyrill Gorcunov 2.1.0.22Cyrill Gorcunov 2.1.0.21Cyrill Gorcunov 2.1.0.20Cyrill Gorcunov 2.1.0.19Cyrill Gorcunov 2.1.0.18Cyrill Gorcunov 2.1.0.17Cyrill Gorcunov 2.1.0.16Cyrill Gorcunov 2.1.0.15Cyrill Gorcunov 2.1.0.14Cyrill Gorcunov 2.1.0.13Cyrill Gorcunov 2.1.0.12Cyrill Gorcunov 2.1.0.11Cyrill Gorcunov 2.1.0.10Cyrill Gorcunov 2.1.0.9Cyrill Gorcunov 2.1.0.8Cyrill Gorcunov 2.1.0.7Cyrill Gorcunov 2.1.0.6Cyrill Gorcunov 2.1.0.5Cyrill Gorcunov 2.1.0.4Cyrill Gorcunov 2.1.0.3Cyrill Gorcunov 2.1.0.1Cyrill Gorcunov 2.0.0.8Cyrill Gorcunov 2.0.0.7Cyrill Gorcunov 2.0.0.6Cyrill Gorcunov 2.0.0.5Cyrill Gorcunov 2.0.0.4Cyrill Gorcunov 2.0.0.3Cyrill Gorcunov 2.0.0.2Cyrill Gorcunov 2.0.0.1Cyrill Gorcunov 1.8.0.15Cyrill Gorcunov 1.8.0.14Cyrill Gorcunov 1.8.0.13Cyrill Gorcunov 1.8.0.12Cyrill Gorcunov 1.8.0.11Cyrill Gorcunov 1.8.0.10Cyrill Gorcunov 1.8.0.9Cyrill Gorcunov 1.8.0.8Cyrill Gorcunov 1.8.0.7Cyrill Gorcunov 1.8.0.6Dmitry Mishin 1.8.0.3Nikita Spiridonov 1.8-6Nikita Spiridonov 1.8-5Nikita Spiridonov 1.8-4Nikita Spiridonov 1.8-3Nikita Spiridonov 1.8-2Nikita Spiridonov 1.8-1.rc1Nikita Spiridonov 1.7.2-7Nikita Spiridonov 1.7.2-6Nikita Spiridonov 1.7.2-5Nikita Spiridonov 1.7.2-4Nikita Spiridonov 1.7.2-3Nikita Spiridonov 1.7.2-2Nikita Spiridonov 1.7.2Nikita Spiridonov 1.7.1-2Nikita Spiridonov 1.7.1Nikita Spiridonov 1.7-2Nikita Spiridonov 1.7Nikita Spiridonov 1.6.1Nikita Spiridonov - 1.6-2Nikita Spiridonov - 1.6Nikita Spiridonov - 1.5.1-2Andrew Vagin - 1.5.1Adrian Reber - 1.4-1Adrian Reber - 1.3.1-1Adrian Reber - 1.3-1Fedora Release Engineering - 1.2-5Andrew Vagin - 1.2-4Andrew Vagin - 1.2-3Fedora Release Engineering - 1.2-2Adrian Reber - 1.2-1Adrian Reber - 1.1-4Andrew Vagin - 1.0-3Andrew Vagin - 1.0-2Andrew Vagin - 1.0-1Andrew Vagin - 0.8-1Andrew Vagin - 0.7-1Fedora Release Engineering - 0.6-5Andrew Vagin - 0.6-3Andrew Vagin - 0.6-3Andrew Vagin - 0.6-2Adrian Reber - 0.6-1Adrian Reber - 0.5-1Adrian Reber - 0.4-1Fedora Release Engineering - 0.3-4Adrian Reber - 0.3-3Adrian Reber - 0.3-2Adrian Reber - 0.3-1Adrian Reber - 0.2-2Adrian Reber - 0.2-1- restorer: increase loglevel of start_time restore failure message (Pavel Tikhomirov ) (#PSBM-123729 #PSBM-128321)- cgroup: at restore use fallback values for cpuset.cpus/mems (Valeriy Vdovin ) (#PSBM-127807) - zdtm: fix unchecked snprintf truncation in bridge_port_settings (Pavel Tikhomirov ) - zdtm: add bridge and fdb tests (Andrey Zhadchenko ) (#PSBM-106442)- PSBM-122095 (Andrey Zhadchenko ) (#PSBM-122095) - PSBM-122095 (Andrey Zhadchenko ) (#PSBM-122095)- PSBM-125002 (Pavel Tikhomirov ) (#PSBM-125002)- PSBM-123431 (Pavel Tikhomirov ) (#PSBM-123431)- PSBM-124263 (Andrey Zhadchenko ) (#PSBM-124263)- PSBM-123431 (Valeriy Vdovin ) (#PSBM-123431)- PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668) - PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668) - PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668) - PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668) - PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668) - PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668) - PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668) - PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668) - PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668) - PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668) - PSBM-123668 (Pavel Tikhomirov ) (#PSBM-123668)- PSBM-122120 (Andrey Zhadchenko ) (#PSBM-122120)- PSBM-122418 (Andrey Zhadchenko ) (#PSBM-122418) - PSBM-122418 (Andrey Zhadchenko ) (#PSBM-122418) - PSBM-122418 (Andrey Zhadchenko ) (#PSBM-122418) - PSBM-122418 (Andrey Zhadchenko ) (#PSBM-122418)- PSBM-125086 (Valeriy Vdovin ) (#PSBM-125086)- PSBM-123431 (Valeriy Vdovin ) (#PSBM-123431)- PSBM-124623 (Pavel Tikhomirov ) (#PSBM-124623) - PSBM-124538 (Pavel Tikhomirov ) (#PSBM-124538) - PSBM-124538 (Pavel Tikhomirov ) (#PSBM-124538)* Fri Jan 15 2021 VZ Auto Builder 3.15.1.9- vz7/vz8: fix stupid targets.list copy-paste missprint (Pavel Tikhomirov ) (#PSBM-123769)- vz7/vz8: add targets.list to build both criu versions from same code repo (Pavel Tikhomirov ) (#PSBM-123769)- vz7/vz8: add targets.list to build both criu versions from same code repo (Pavel Tikhomirov ) (#PSBM-123769)- plugin: Add criu_get_work_dir_path helper (Pavel Tikhomirov ) (#PSBM-123778) - files-reg: show sdev of the file we failed to lookup mount for (Pavel Tikhomirov ) (#PSBM-124422)- files-reg: show sdev of the file we failed to lookup mount for (Pavel Tikhomirov ) (#PSBM-124422)- mount: Add fsname to error message for unsupported fs (Pavel Tikhomirov ) (#PSBM-124531)- autofs: support dump of abandoned overmounted autofs mounts (Alexander Mikhalitsyn ) (#PSBM-122727)- zdtm: extend bind-mount-unix0* tests with ghost sk (Alexander Mikhalitsyn ) (#PSBM-123644) - zdtm: extend bind-mount-multi test with stream, seqpacket sks (Alexander Mikhalitsyn ) (#PSBM-121925) - sk-unix: add support of bindmounted STREAM, SEQPACKET sks (Alexander Mikhalitsyn ) (#PSBM-121925) - criu.spec: explictily provide criu version to make (Pavel Tikhomirov )- build: add ability to override CRIU_VERSION from rpmbuild specs (Pavel Tikhomirov )- ve/beancounter: don't unlimit beancounter cgroup if it does not exist (Pavel Tikhomirov ) (#PSBM-123769) - kerndat: check for beancounter cgroup availability (Pavel Tikhomirov ) (#PSBM-123769)- zdtm: workaround ip route dump problem (Pavel Tikhomirov ) (#PSBM-120728 #PSBM-123769) - zdtm: make ns_file_bindmount parent/child sync with futex (Pavel Tikhomirov ) (#PSBM-123769) - zdtm/vz8: disable mnt_tracefs test (Pavel Tikhomirov ) (#PSBM-123769) - vxlan: lets temporary disable all NLA_FLAG entries as they were get/set wrong (Pavel Tikhomirov ) (#PSBM-120728 #PSBM-123769) - mount: fix errno handling in mount_and_open_binfmt_misc (Pavel Tikhomirov ) (#PSBM-120728 #PSBM-123769) - zdtm: openvswitch00: replace snprintf with ssprintf (Pavel Tikhomirov ) (#PSBM-120728 #PSBM-123769) - zdtm/lib: print errno for mount error (Pavel Tikhomirov ) (#PSBM-120728 #PSBM-123769) - net: prepare our own xtables lock for network_(un)lock_internal (Pavel Tikhomirov ) (#PSBM-120728 #PSBM-123769) - sk-unix: fixup snprintf truncation gcc warning (Pavel Tikhomirov ) (#PSBM-120728 #PSBM-123769) - zdtm: disable cgroup_ifpriomap (Pavel Tikhomirov )- cgroup: change defaults for net_prio cgroup (Pavel Tikhomirov ) (#PSBM-123648)- infect: print stack for D state process (Pavel Tikhomirov ) (#PSBM-122979)- restore/ve: do ve start from container init task (Pavel Tikhomirov ) (#PSBM-123162) - config/rpc: add new option --ve to identify that we deal with VZ ct (Pavel Tikhomirov ) (#PSBM-123162)- servicefd: don't cleanup new fd in case it is same as old one (Pavel Tikhomirov ) (#PSBM-122957) - zdtm: overlay: use ssprintf instead of snprintf (Alexander Mikhalitsyn ) (#PSBM-122375) - zdtm: pidns03: do lazy umount /proc (Alexander Mikhalitsyn ) (#PSBM-122505) - zdtm: fix segfault in several tests on new GCC (unaligned stack) (Alexander Mikhalitsyn ) (#PSBM-120728)- zdtm: add second fifo_upon_unix test (Pavel Tikhomirov ) (#PSBM-106582) - zdtm: add fifo upon unix socket test case (Pavel Tikhomirov ) (#PSBM-106582) - sk-unix: rework unix_resolve_name (Pavel Tikhomirov ) (#PSBM-106582) - sk-unix: make criu respect existing files while restoring ghost unix socket fd (Pavel Tikhomirov ) (#PSBM-106582) - files-reg: rework strip_deleted (Pavel Tikhomirov ) (#PSBM-106582) - zdtm: fix overlayfs_fsnotify tests (Pavel Tikhomirov ) (#PSBM-122444) - vim: remove wrong 8-space tabs indent from python files (Pavel Tikhomirov )* Tue Nov 17 2020 Denis Silakov 3.15.0.4 - zdtm: enable tty-inherit tests (Pavel Tikhomirov ) (#PSBM-121533) - mount: ignore root change in cgroup mounts in case of container rename (Pavel Tikhomirov ) (#PSBM-108126) - spfs: fix usage of new_cg_root_get (Pavel Tikhomirov ) (#PSBM-108126) - zdtm: add scm07 SCM_RIGHTS & SCM_CREDENTIALS case (Alexander Mikhalitsyn ) (#PSBM-99868) - sk-queue: fix SCM restore in case when SCM_RIGHTS & SCM_CREDS in one packet (Alexander Mikhalitsyn ) (#PSBM-99868) - sk-queue: fix lost ScmEntries during SkPacketEntry copy (Alexander Mikhalitsyn ) (#PSBM-99868) - binfmt_misc: isolate binfmt_misc dump logic from mountinfo/mountpoint dump. (Valeriy Vdovin ) (#PSBM-96362) - mounts-v2: fallback to compat mount engine in case of old kernel (Pavel Tikhomirov ) (#PSBM-121995) - kerndat: Check for mount MS_SET_GROUP availability (Pavel Tikhomirov ) (#PSBM-121995) - zdtm: add testcase for netlink socket with enobufs (Andrey Zhadchenko ) - netlink: save and generate ENOBUFS at restore (Andrey Zhadchenko ) (#PSBM-120976) - zdtm: don't mount overlayfs in unprivileged user namespace (Pavel Tikhomirov ) (#PSBM-121284) - proc_parse: retry to parse fdinfo from ve (Andrey Zhadchenko ) (#PSBM-108122) - dump: at exit do not call timing_stop if stats are not initialized (Valeriy Vdovin ) (#PSBM-104289) - zdtm: add propagation group with mount flags to mount_complex_sharing (Pavel Tikhomirov ) (#PSBM-96308) - zdtm: add new sk-netlink-flags test (Pavel Tikhomirov ) (#PSBM-120924) - sk-netlink: fix order between restoring queue and file params (Pavel Tikhomirov ) (#PSBM-120924) - mount: make overlayfs_mount use relative paths to make paths shorter (Pavel Tikhomirov ) (#PSBM-120708) - nsfs: add some debug to open_ns_fd (Pavel Tikhomirov ) - zdtm: improve ns_file_bindmount to also check open nsfs bindmount (Pavel Tikhomirov ) (#PSBM-107790) - nsfs: handle files opened on nsfs bindmounts as special nsfs-files (Pavel Tikhomirov ) (#PSBM-107790) - freezer: wait freezer.state changes to FROZEN after writing (Pavel Tikhomirov ) (#PSBM-107938) - scripts/nfs: make small cleanup of nfs-ports-allow.sh (Pavel Tikhomirov ) (#PSBM-107842) - zdtm: crfail child_subreaper_and_reparent (Pavel Tikhomirov ) (#PSBM-107418) - zdtm: add simple reparenting to CHILD_SUBREAPER case to session04 (Pavel Tikhomirov ) (#PSBM-107418) - pstree: add child subreaper reparent handling (Pavel Tikhomirov ) (#PSBM-107418) - pstree: prepare a link for each item to it's child subreaper (Pavel Tikhomirov ) (#PSBM-107418) - pstree: save child_subreaper in pstree image (Pavel Tikhomirov ) (#PSBM-107418) - cr-restore: skip current from search in collect_child_pids (Pavel Tikhomirov ) (#PSBM-107418) - zdtm: check process tree topology in session04 (Pavel Tikhomirov ) (#PSBM-107418) - zdtm: inotify on mqueue test (Andrey Zhadchenko ) (#PSBM-107766) - freezer: added cmd-line option to skip 'freezer.state' dump/restore (Valeriy Vdovin ) (#PSBM-106413 #PSBM-107590 #PSBM-107590) - zdtm: fix compilation from vzt-cpt (Andrey Zhadchenko ) (#PSBM-106860) - zdtm: add ovs unshare test (Andrey Zhadchenko ) (#PSBM-105844) - zdtm: add openvswitch test (Andrey Zhadchenko ) (#PSBM-105844) - net: explicitly forbid ovs vports with netnsid (Andrey Zhadchenko ) (#PSBM-105844) - net: specify ifindex for ovs netdevs (Andrey Zhadchenko ) (#PSBM-105844) - net: add ovs internal vport support (Andrey Zhadchenko ) (#PSBM-105844) - net: add openvswitch vxlan support (Andrey Zhadchenko ) (#PSBM-105844) - net: add initial openvswitch support (Andrey Zhadchenko ) (#PSBM-105844) - images: add protobuf for openvswitch structures (Andrey Zhadchenko ) (#PSBM-105844) - seize: recursively thaw freezers in freeze_processes (Alexander Mikhalitsyn ) (#PSBM-107590) - zdtm: add inotify on cgroup mount test (Andrey Zhadchenko ) (#PSBM-105889) - mounts-v2: add new criu optioin --mounts-compat and drop --mounts-v2 (Pavel Tikhomirov ) (#PSBM-106066) - cgroup: add some additional debugging information (Pavel Tikhomirov ) - vz/images: add vz_ prefix to vz specific fields in unix_sk_entry (Pavel Tikhomirov ) - vz/images: add vz_ prefix to vz specific fields in criu_opts (Pavel Tikhomirov ) - vz/images: add vz_ prefix to vz specific fields in pstree_entry (Pavel Tikhomirov ) (#PSBM-120974) - vz/images: add vz_ prefix to vz specific fields in mnt_entry (Pavel Tikhomirov ) - vz/images: add VZ_ prefix to NSFS fstype (Pavel Tikhomirov ) - vz/images: add vz_ prefix to pid_for_children_ns_id field (Pavel Tikhomirov ) - vz: use 1000+x field ids for vz-only field ids (Pavel Tikhomirov ) - zdtm: add testcase for procfs with nested pid namespace on ro / (Alexander Mikhalitsyn ) (#PSBM-106440) - mounts-v2: add posibility to create internal yard on ro mounts (Alexander Mikhalitsyn ) (#PSBM-106440) - zdtm: add vxlan interfaces c/r test (Alexander Mikhalitsyn ) (#PSBM-105843) - net: add vxlan interfaces support (Alexander Mikhalitsyn ) (#PSBM-105843) - action-scripts: export devtmpfs mount path in service mntns (Pavel Tikhomirov ) (#PSBM-106869) - mount: make mount_resolve_path use get_relative_path (Pavel Tikhomirov ) (#PSBM-106869) - mount: remove const from path pointer in mount_resolve_path (Pavel Tikhomirov ) (#PSBM-106869) - sk-unix: add some missed error printing (Pavel Tikhomirov ) (#PSBM-106906) - mount-v2: make is_internal_yard check nsid for null (Pavel Tikhomirov ) (#PSBM-106854) - sk-unix: add fake queuers only for sockets without peer (Alexander Mikhalitsyn ) - zdtm: add testcase for bind mounted unix sockets with additional mntns (Alexander Mikhalitsyn ) (#PSBM-106703) - sk-unix: preserve mnt_id for bindmounted unix sockets from SIOCUNIXFILE (Alexander Mikhalitsyn ) (#PSBM-106703) - restore/pstree: make wait_on_helpers_zombies wait on proper pid level (Pavel Tikhomirov ) - zdtm: add new detached_namespace_with_bindmount test (Pavel Tikhomirov ) (#PSBM-104871) - zdtm: put common prepare_dirname function to library (Pavel Tikhomirov ) (#PSBM-104871) - mount: handle detached network namespace bindmounts (Pavel Tikhomirov ) (#PSBM-104871) - mount: add plain mountpoint for cr_time mount (Pavel Tikhomirov ) (#PSBM-96757 #PSBM-96757 #PSBM-107632) - zdtm: bind-mount-unix: fix one another absolute path for vzt-cpt (Pavel Tikhomirov ) (#PSBM-96757) - zdtm: pidns_proc: use vz dir instead of tty (Pavel Tikhomirov ) - zdtm: bind-mount-unix: make absolute path always right (Pavel Tikhomirov ) - zdtm/jenkins: enable mounts-v2 by default for tests which require it (Pavel Tikhomirov ) - zdtm: add mount_complex_sharing test (Pavel Tikhomirov ) (#PSBM-101807) - zdtm: added inotify on overlayfs test (Valeriy Vdovin ) (#PSBM-104961) - zdtm: change overlayfs_fsnotify00 logic for a more generic fsnotify testing (Valeriy Vdovin ) (#PSBM-104961) - zdtm: renamed overlayfs_fanotify01 to overlayfs_fsnotify00 (Valeriy Vdovin ) (#PSBM-104961) - zdtm: added overlayfs_fanotify02 test (Valeriy Vdovin ) (#PSBM-104961) - zdtm: added sequence number to test overlayfs_fanotify (Valeriy Vdovin ) (#PSBM-104961) - zdtm: add testcase for multiple unix sk bindmounts (Alexander Mikhalitsyn ) (#PSBM-104800) - sk-unix: add support of multiple unix sk bindmounts (Alexander Mikhalitsyn ) (#PSBM-104800) - zdtm: add several extra cases for bindmounted unix sk (Alexander Mikhalitsyn ) (#PSBM-104800) - sk-unix: make bindmounted unix sockets work on mounts-v2 (Alexander Mikhalitsyn ) (#PSBM-104800) - zdtm: add netns_sysfs test (Pavel Tikhomirov ) (#PSBM-105161) - mount: restore sysfs from proper netns (Pavel Tikhomirov ) (#PSBM-105161) - mount: add after_parse callback (Pavel Tikhomirov ) (#PSBM-121533) - mount: do collect_mntinfo of external mount namespace with no for_dump (Pavel Tikhomirov ) (#PSBM-105161) - zdtm: added overlayfs setup routine to zdtm lib (Valeriy Vdovin ) (#PSBM-104961) - zdtm: disable overlayfs test for old mounts engine (Pavel Tikhomirov ) - zdtm: Added overlayfs_fanotify test (Valeriy Vdovin ) (#PSBM-104961) - zdtm: optionally skip inode number and fhandle in fanotify_obj_cmp (Valeriy Vdovin ) (#PSBM-104961) - zdtm: moved fanotify-specific code to lib, renamed functions that form api. (Valeriy Vdovin ) (#PSBM-104961) - pstree: set mntns, cgroupns ids in dup_zombie_ids (Alexander Mikhalitsyn ) (#PSBM-105456) - fix mount-v2: temporary mount internal yards to mntns trees (Pavel Tikhomirov ) - zdtm: add new pidns_proc test (Pavel Tikhomirov ) - mount-v2: delayed nested pidns owned proc mounting (Pavel Tikhomirov ) - mount-v2: add resolve_mnt_fd helper (Pavel Tikhomirov ) - mount-v2: split out __resolve_mnt_path_fd helper (Pavel Tikhomirov ) - mount-v2: add resolve_fd_path helper (Pavel Tikhomirov ) - mount-v2: create helpers for ancestors of nested pidns procs (Pavel Tikhomirov ) - mount: export mnt_subtree_next helper (Pavel Tikhomirov ) - mount-v2: dump owner pidns'es of proc mounts (Pavel Tikhomirov ) - mount-v2: temporary mount enabled internal yards to mntns trees (Pavel Tikhomirov ) - mount-v2: prepare to mount internal yard mounts (Pavel Tikhomirov ) - mount-v2: create internal yard mounts for each mntns (Pavel Tikhomirov ) - mount: make is_dir int and -1 initialized (Pavel Tikhomirov ) - restorer: fix criu fail with lazy-pages and pre c\r (Andrey Zhadchenko ) - jenkins: exclude ns_file_bindmount and thp_disable from tests (Andrey Zhadchenko ) - pstree: fix nested namespaces for lazy-pages (Andrey Zhadchenko ) (#PSBM-104329) - zdtm: fix race in pidns02 test plus small cleanup (Pavel Tikhomirov ) (#PSBM-104930) - cr-dump: fix vpid corruption on pre-dump (Alexander Mikhalitsyn ) (#PSBM-104960) - mount: adjust log level for get_clean_mnt (Andrey Zhadchenko ) (#PSBM-96506) - mount: adjust log level for mnt_is_dir (Andrey Zhadchenko ) (#PSBM-96506) - zdtm: add somaxconn test (Andrey Zhadchenko ) (#PSBM-94854) - zdtm: fix pidns03 racy test (Pavel Tikhomirov ) (#PSBM-104930) - pstree: fix race in setpgid prechecks (Pavel Tikhomirov ) - ns: add dup_helper_ids helper (Pavel Tikhomirov ) - ns: add dup_thread_ids helper (Pavel Tikhomirov ) - ns: fixup ids copying from parent for zombies (Pavel Tikhomirov ) - net: fix external veth pairs name collision (Alexander Mikhalitsyn ) (#PSBM-29271) - ns: fix forward compatibility when we don't know owner userns (Pavel Tikhomirov ) - jenkins: run all tests both for old mounts and mounts-v2 (Pavel Tikhomirov ) - zdtm: add internal overlayfs mounts c/r test (Alexander Mikhalitsyn ) (#PSBM-58614 #PSBM-121284) - overlayfs: add internal overlayfs mounts support (Alexander Mikhalitsyn ) (#PSBM-58614) - zdtm: add new test ns_file_bindmount (Pavel Tikhomirov ) (#PSBM-102357) - zdtm: ignore nsids in root check for ns bindmounts (Pavel Tikhomirov ) (#PSBM-102357) - mount-v2: support of nsfs bindmounts (Pavel Tikhomirov ) (#PSBM-102357) - namespaces: add get_ns_desc_by_cflags helper (Pavel Tikhomirov ) (#PSBM-102357) - check-mounts: ignore nsids in root check for ns bindmounts (Pavel Tikhomirov ) (#PSBM-102357) - nsfs: parse id for namespace file bindmounts (Pavel Tikhomirov ) (#PSBM-102357) - namespaces: add get_ns_kid helper with plain args (Pavel Tikhomirov ) (#PSBM-102357) - check-mounts: pass for_dump false to collect_mntinfo (Pavel Tikhomirov ) (#PSBM-102357) - zdtm: enable mounts-v2 on restore with --mounts-v2 option (Pavel Tikhomirov ) (#PSBM-58617) - mount: move yard, is_overmounted and merging trees to read_mnt_ns_img (Pavel Tikhomirov ) - mount-v2: restore_mount_sharing_options at the end of forking stage (Pavel Tikhomirov ) - cr-restore: move CR_STATE_RESTORE switch to restore_root_task (Pavel Tikhomirov ) - mount-v2: call resolve_shared_mounts_v2 earier from read_mnt_ns_img (Pavel Tikhomirov ) - mount: put mounted to shared memory (Pavel Tikhomirov ) - mount: put mp_fd_id and mnt_fd_id to shared memory (Pavel Tikhomirov ) - mount: make general place for shared variables on mount-info on restore (Pavel Tikhomirov ) - mount: detect unsupported mntns root overmount (Pavel Tikhomirov ) - util: don't take nested lock for call_in_child_process (Pavel Tikhomirov ) - mount: fix broken remounted_rw check (Pavel Tikhomirov ) - mount-v2: use plain_mountpoint explicitly in set_unbindable_v2 (Pavel Tikhomirov ) - mount-v2: add shared group restore debug (Pavel Tikhomirov ) - mount: add one more list validation check to cr_time mount removal (Pavel Tikhomirov ) - mount: fix mnt_sharing list not initialized (Pavel Tikhomirov ) (#PSBM-105464) - mount-v2: treat mount as file-bindmount if mountpoint is not directory (Pavel Tikhomirov ) - zdtm: remove external sharing check from mnt_ext_sharing (Pavel Tikhomirov ) (#PSBM-58617) - mount: add new mounts-v2 engine (Pavel Tikhomirov ) (#PSBM-58617) - mount: add plain mountpoints (Pavel Tikhomirov ) (#PSBM-58617) - config/rpc: add new option --mounts-v2 to enable new engine for mounts (Pavel Tikhomirov ) (#PSBM-58617) - files-reg: teach create_spfs and open_remap_spfs_linked to work with mounts (Pavel Tikhomirov ) (#PSBM-58617 #PSBM-105661) - files-reg: teach clean_one_remap to work with plain mounts (Pavel Tikhomirov ) (#PSBM-58617) - files-reg: teach create_ghost to work with plain mounts (Pavel Tikhomirov ) (#PSBM-58617) - mount: add service_mountpoint getter for ->mountpoint (Pavel Tikhomirov ) (#PSBM-58617) - mount: use ns_mountpoint instead of mountpoint where possible (Pavel Tikhomirov ) (#PSBM-58617) - mount: use ns_mountpoint in mnt_depth (Pavel Tikhomirov ) (#PSBM-58617) - mount: use ns_mountpoint in aufs_parse (Pavel Tikhomirov ) (#PSBM-58617) - mount: use ns_mountpoint in collect_mntinfo (Pavel Tikhomirov ) (#PSBM-58617) - mount: use ns_mountpoint in mnt_get_sibling_path for relative path (Pavel Tikhomirov ) (#PSBM-58617) - mount: use ns_mountpoint for children-overmount check (Pavel Tikhomirov ) (#PSBM-58617) - mount: use ns_mountpoint in root_path_from_parent (Pavel Tikhomirov ) (#PSBM-58617) - mount: use ns_mountpoint in validate_children_collision (Pavel Tikhomirov ) (#PSBM-58617) - mount: skip root yard children from mnt_needs_remap check (Pavel Tikhomirov ) (#PSBM-58617) - mount: move set_is_overmounted before doing trees merge (Pavel Tikhomirov ) (#PSBM-58617) - mount: add helper mnt_get_external_nodev (Pavel Tikhomirov ) (#PSBM-58617) - autofs: fix autofs_create_dentries (Pavel Tikhomirov ) (#PSBM-58617) - util: add get_relative_path helper (Pavel Tikhomirov ) (#PSBM-58617 #PSBM-106869) - mount: add mnt_get_root helper (Pavel Tikhomirov ) (#PSBM-58617) - mount: apply superblock flags to nested ns roots (Pavel Tikhomirov ) (#PSBM-58617) - mount: do search_bindmounts earlier (Pavel Tikhomirov ) (#PSBM-58617) - mount: replace CRTIME_MNT_ID with HELPER_MNT_ID (Pavel Tikhomirov ) (#PSBM-58617) - spfs: remove unused mountpoint variable (Pavel Tikhomirov ) (#PSBM-58617) - zdtm: add c/r test for several IPC namespaces (Alexander Mikhalitsyn ) (#PSBM-103858 #PSBM-58611) - ipc_ns: add several IPC namespaces support (Alexander Mikhalitsyn ) (#PSBM-103858 #PSBM-58611) - zdtm: add c/r test for several UTS namespaces (Alexander Mikhalitsyn ) (#PSBM-103863 #PSBM-58612) - uts_ns: add several UTS namespaces support (Alexander Mikhalitsyn ) (#PSBM-103863 #PSBM-58612) - namespaces: add prepare_namespaces(), restore_task_ns() helpers (Alexander Mikhalitsyn ) (#PSBM-103863 #PSBM-58612 #PSBM-103858 #PSBM-58611) - namespaces: make nsfd_id/ns_fd union common for all namespaces (Alexander Mikhalitsyn ) (#PSBM-103863 #PSBM-58612 #PSBM-103858 #PSBM-58611) - mount: allow nested mount namespaces with different roots (Pavel Tikhomirov ) - pipes: dump pipes only on read end (Pavel Tikhomirov ) - pipes: print errno on fcntl error (Pavel Tikhomirov ) - userns: disable nested userns (Pavel Tikhomirov ) - zdtm: Mark ns tests as auto (Kirill Tkhai ) - zdtm: test pgid is restored fine in nested pidnses (Pavel Tikhomirov ) - ns: Nested pid_ns support (Kirill Tkhai ) - pstree: leaders wait group members temporary setpgid to their pid (Kirill Tkhai ) - pstree: add set_pgid function to check everything before real syscall (Pavel Tikhomirov ) - pstree: check that all processes see their group leader (Pavel Tikhomirov ) - ns: add get_relative_pid helper (Pavel Tikhomirov ) - pstree: add curr_sid/pgid updating them on fork/setsid/setpgid (Pavel Tikhomirov ) - pstree: add prepare_pstree_leaders to create sid/pgid helpers in advance (Pavel Tikhomirov ) - pstree: add is_group_leader helper (Pavel Tikhomirov ) - zdtm: test for new init reparent handling with tricky setns (Pavel Tikhomirov ) - zdtm: test for new init reparent handling with nested pidns (Pavel Tikhomirov ) - zdtm: add test for new init reparent handling (Pavel Tikhomirov ) - pstree: rework init reparent handling for pid namespaces (Pavel Tikhomirov ) - pstree: add can_inherit_sid helper (Pavel Tikhomirov ) - pstree: make helper items for pgid replaceable (Pavel Tikhomirov ) - cr-restore: make collect_child_pids work for nested pidns (Pavel Tikhomirov ) - restore: add get_pidns_on_level and have_nested_pidns helpers (Pavel Tikhomirov ) - pstree: make equal_pid handle sid comparison between nested pidnses (Pavel Tikhomirov ) - pstree: add is_session_leader helper and use it where possible (Pavel Tikhomirov ) - pstree: add helper for_each_pssubtree_item to walk item's subtree (Pavel Tikhomirov ) - pstree/pid: add helper to get free pids in pidns and all it's ancestors (Pavel Tikhomirov ) - pstree: add id intersection bug_on to prepare_pstree_for_shell_job (Pavel Tikhomirov ) - zdtm: Add pidns03 test (Kirill Tkhai ) - ns: Restore pid_for_children ns in threads (Kirill Tkhai ) - ns: First stage of restore pid_for_children ns (Kirill Tkhai ) - fork: Move ns-specific code to setup_child_task_namespaces() (Kirill Tkhai ) - pstree: Dump threads pid_for_children_ns (Kirill Tkhai ) - ns: Collect/read pid_for_children ns (Kirill Tkhai ) - ns: add BUG_ON on ns_next_id overflow (Kirill Tkhai ) - ns: Add alternative name for pid namespace (Kirill Tkhai ) - ns: Add possibility to read a ns by alternative name in __get_ns_id() (Kirill Tkhai ) - kerndat: Check for /proc/[pid]/ns/pid_for_children_ns (Kirill Tkhai ) - dump: More obvious assignment of top_pid_ns (Kirill Tkhai ) - zdtm: Add pidns02 test (test on zombies) (Kirill Tkhai ) - pstree: Add helpers for ordered linking child task to parent (Kirill Tkhai ) - ns: Add ns_get_parent() feature (Kirill Tkhai ) - ns: Add ns_get_userns() feature (Kirill Tkhai ) - zdtm: return userns checks to netns_sub_veth (Pavel Tikhomirov ) - pstree: Delete checks of always existing pstree_item::ids on restore (Kirill Tkhai ) - pstree: Check for always existing task ids on restore (Kirill Tkhai ) - restore: Convert waited helpers and zombies pids in parent's pid_ns (Kirill Tkhai ) - restore: Always set real pid in restore_task_with_children() (Kirill Tkhai ) - pstree: Use CLONE_NEWPID only to create child reaper of pid_ns (Kirill Tkhai ) - pid: Check for equality of getpid() of child to last_level_pid (Kirill Tkhai ) - restorer: Set NStids in all pid_ns for thread before we create it. (Kirill Tkhai ) - restorer: Close transport socket later (Kirill Tkhai ) - pid: Teach set_next_pid() working with nested pid_ns (Kirill Tkhai ) - pid_ns: Set user_ns before creation of pid_ns (Kirill Tkhai ) - pid: Set pid_ns before we create a child (Kirill Tkhai ) - pid: Wait till pid_ns created before we create a child of this ns (Kirill Tkhai ) - pid: Create pid_ns helpers (Kirill Tkhai ) - ns: Add usernsd signal handler (Kirill Tkhai ) - cr-restore: Add argument to criu_signals_setup() (Kirill Tkhai ) - ns: Install transport fd socket in usernsd (Kirill Tkhai ) - pid: Add pid ns futex helper_created (Kirill Tkhai ) - ns: Always start usernsd (Kirill Tkhai ) - pid: Save created pid_ns fd to fdstore (Kirill Tkhai ) - pid: Add fdstore id for pid_ns descriptor (Kirill Tkhai ) - pid: Always lock last pid file on clone() (Kirill Tkhai ) - restore: Implement set_next_pid() helper (Kirill Tkhai ) - ns: Reserve pid_ns helpers (Kirill Tkhai ) - pstree: Extract __pstree_item_by_virt() to act on any pid_ns (Kirill Tkhai ) - pstree: Make get_free_pid() work for different pid_ns and export it (Kirill Tkhai ) - pstree: Dump and restore NSpid, NSsid etc (Kirill Tkhai ) - images: Add NSpids pstree descriptions (Kirill Tkhai ) - zombie: Kill by last_level_pid, not by vpid (Kirill Tkhai ) - pstree: Skip zombie dumping tricks if there is kdat.has_nspid (Kirill Tkhai ) - pstree: Collect NSpid, NSsid and NStgid when possible (Kirill Tkhai ) - pstree: Pre-dump ns ids before tasks (Kirill Tkhai ) - pstree: Change arguments in parse_pid_status() (Kirill Tkhai ) - pid_ns: Implement pid_ns_root_off() (Kirill Tkhai ) - zdtm: Add pidns01 test (Kirill Tkhai ) - zdtm: Add pidns00 test (Kirill Tkhai ) - pstree: don't xfree shmalloced memory (Pavel Tikhomirov ) - pstree: Implement free_pstree_item() helper (Kirill Tkhai ) - pstree: Implement vpgid(), vsid() and vtid() (Kirill Tkhai ) - kerndat: Check that "/proc/[pid]/status" file has NS{pid, ..} lines (Kirill Tkhai ) - pstree: Make lookup_create_pid() able to create tasks with pid->level > 1 (Kirill Tkhai ) - pid: initialize rbtree nodes (Pavel Tikhomirov ) - ns: Add MAX_NS_NESTING (Kirill Tkhai ) - pstree: Add pid_ns id argument to lookup_create_pid() (Kirill Tkhai ) - pstree: Split lookup_create_pid() (Kirill Tkhai ) - pstree: Add pid_ns check in read_pstree_image (Kirill Tkhai ) - pstree: Dump pid and user ns ids for dead tasks (Kirill Tkhai ) - pstree: Assign ids for dead tasks in read_pstree_image() (Kirill Tkhai ) - pstree: Move parent assignment in read_pstree_image() up (Kirill Tkhai ) - ids: Copy unexisted ids from root_item (Kirill Tkhai ) - pid: Add ns::pid::rb_root (Kirill Tkhai ) - pid: Add top_pid_ns (Kirill Tkhai ) - pstree: Read ids earlier in read_pstree_image() (Kirill Tkhai ) - pstree: Change arguments of read_pstree_ids() (Kirill Tkhai ) - pid: Pass thread pid to caller (Kirill Tkhai ) - pid: Alloc threads dynamically (Kirill Tkhai ) - pid: Make pgid and sid be allocated dynamically (Kirill Tkhai ) - pid: Add last_level_pid() helper (Kirill Tkhai ) - pid: Add equel_pid() helper (Kirill Tkhai ) - pid: Add pid::level field and level argument for __alloc_pstree_item() (Kirill Tkhai ) - pstree: Introduce PID_SIZE() helper (Kirill Tkhai ) - zdtm: Add proc-self01 test (Kirill Tkhai ) - zdtm: Add userns02 test (Kirill Tkhai ) - ns: Use rst_new_ns_id() in read_ns_with_hookups() (Kirill Tkhai ) - ns: Replace task argument rst_add_ns_id() with pid (Kirill Tkhai ) - ns: Set NS_ROOT namespaces after tasks are read (Kirill Tkhai ) - ns: Override fake pid in rst_add_ns_id() (Kirill Tkhai ) - zdtm: Check for fsuid and fsgid in userns01 test (Kirill Tkhai ) - zdtm: Check for euid, suid, egid and sgid in userns01 test (Kirill Tkhai ) - zdtm: Check for groups list userns01 test (Kirill Tkhai ) - ns: Keep all clone flags fixups together (Kirill Tkhai ) - ns: Allow nested user namespaces (Kirill Tkhai ) - ns: Convert task cred's xids to target user ns (Kirill Tkhai ) - ns: Dump creds xids in root_user_ns (Kirill Tkhai ) - rst: Pass pstree_item argument to alloc_groups_copy_creds() (Kirill Tkhai ) - shmem: Fixup shmem_wait_and_open() opens foreign /proc/[pid]/fd/[i] (Kirill Tkhai ) - ns: Set target user_ns after net_ns is set (Kirill Tkhai ) - ns: Implement set_user_ns() (Kirill Tkhai ) - utils: Introduce open_fd_of_real_pid() (Kirill Tkhai ) - user_ns: Set user_ns before net_ns creation (Kirill Tkhai ) - ns: Generate user_ns tree (Kirill Tkhai ) - utils: Move getting real pid functionality to separate function (Kirill Tkhai ) - ns: Make write_id_map() use CR_PROC_FD_OFF (Kirill Tkhai ) - ns: Make prepare_userns() have ns map parameter (Kirill Tkhai ) - ns: Write/read ns entries in new way (Kirill Tkhai ) - proto: Add ns_entry description (Kirill Tkhai ) - images: Move uid_gid_extent and userns_entry descriptions (Kirill Tkhai ) - ns: Implement dup_userns_entry() (Kirill Tkhai ) - ns: Set pointer to root_user_ns in ns_ids (Kirill Tkhai ) - ns: Provide the case when root_item has !NS_ROOT user_ns in rst_add_ns_id() (Kirill Tkhai ) - user_ns: Name loading UsernsEntry mappings on restore "old format" (Kirill Tkhai ) - ns: Add user and pid ns_id on restore (Kirill Tkhai ) - ns: Implement target_userns_{u, g}id() and root_userns_{u, g}id() (Kirill Tkhai ) - ns: Rename and export userns_id() and INVALID_ID (Kirill Tkhai ) - user_ns: Make host_id() working with any mapping and rename it (Kirill Tkhai ) - user_ns: Make collect_user_ns() allocate child UsernsEntry mappings (Kirill Tkhai ) - ns: Change arguments of dump_user_ns() (Kirill Tkhai ) - zdtm: Add userns01 test (Kirill Tkhai ) - zdtm: Add userns00 test (Kirill Tkhai ) - net: replace is_zdtm_run with if we dump userns check (Pavel Tikhomirov ) - criu: Add raw fork() implementation (Kirill Tkhai ) - criu: don't use a glibc cached pid (Andrei Vagin ) - zdtm: Return tun test back as "auto" (Kirill Tkhai ) - spfs: fix "uns: message size exceeded" error (Alexander Mikhalitsyn ) (#PSBM-103828) - spfs: nfs link remap EPERM error fix on recent kernels (Alexander Mikhalitsyn ) (#PSBM-102889) - util: merge call_helper_process and call_in_child_process (Pavel Tikhomirov ) (#PSBM-101289) - util: don not use cached proc self fd in call_in_child_process (Pavel Tikhomirov ) (#PSBM-101289) - mount: replace "internal slavery for external mounts unsupported" error to warning (Alexander Mikhalitsyn ) (#PSBM-103051) - mount: fix resolving bindmounts of external device mounts (Alexander Mikhalitsyn ) (#PSBM-102980) - sk-unix: fix not correct assertion in on_stage_change() that fails restore stage (Alexander Mikhalitsyn ) (#PSBM-102972) - mount: fix failed assertion in mnt_is_external (Alexander Mikhalitsyn ) (#PSBM-102791) - zdtm: add sk-unix-dgram-ghost test case (Alexander Mikhalitsyn ) - sk-unix: wake connected sockets strictly after fle stage >= FLE_OPEN (Alexander Mikhalitsyn ) (#PSBM-102605) - files: add on_stage_change callback to file_desc_ops (Alexander Mikhalitsyn ) - zdtm/iptables: wait xtables lock in netns-ipset (Pavel Tikhomirov ) - mount: also honor external_slavery and internal_sharing for root mount (Pavel Tikhomirov ) (#PSBM-96385 #PSBM-100080) - mount: add new mnt_ext_master_manual test (Pavel Tikhomirov ) (#PSBM-100080) - mount: fix handling of binds of external mount with external slavery (Pavel Tikhomirov ) (#PSBM-100080) - zdtm: add new mnt_ext_root test (Pavel Tikhomirov ) (#PSBM-100080) - mount: mount external mount before mounting it's binds (Pavel Tikhomirov ) (#PSBM-100080) - mount: add external_slavery detection (Pavel Tikhomirov ) (#PSBM-100080) - zdtm: add external sharing to mnt_ext_sharing test (Pavel Tikhomirov ) (#PSBM-100080) - mount: make honest external/internal sharing detection (Pavel Tikhomirov ) (#PSBM-100080) - mount: split mnt_is_external and can_receive_master_from_external (Pavel Tikhomirov ) (#PSBM-100080) - mount: setup mnt_bind list before using it in mnt_is_external (Pavel Tikhomirov ) (#PSBM-100080) - zdtm: add new mnt_ext_sharing test (Pavel Tikhomirov ) (#PSBM-100080) - mount: remove source check from mounts_sb_equal (Pavel Tikhomirov ) (#PSBM-100080) - zdtm: fix mnt_ext_master test to correspond to it's name (Pavel Tikhomirov ) (#PSBM-100080) - zdtm: Added test that covers ipset checkpoint/restore functionality (Valeriy Vdovin ) (#PSBM-100083) - dump/restore: Support ipsets (Valeriy Vdovin ) (#PSBM-100083) - Makefile/plugin: install more headers (Alexander Stefanov ) (#PSBM-99926) - files-reg: temporary remount writable the mount we do unlink on (Pavel Tikhomirov ) (#PSBM-101433) - ghost/mount: allocate remounted_rw in shmem to get info from other processes (Pavel Tikhomirov ) (#PSBM-101433) - files-reg: add debug for ENOTEMPTY on unlinkat (Pavel Tikhomirov ) (#PSBM-101145) - files-reg: fix error handling of rm_parent_dirs (Pavel Tikhomirov ) (#PSBM-101433) - files-reg: fix error handling in open_path (Pavel Tikhomirov ) (#PSBM-101433) - dump/restore: Maintain proper start_time param from /proc/[pid]/stat for each task (Valeriy Vdovin ) (#PSBM-64123) - cr-restore: handle join_ve0 errors in restore_root_task (Pavel Tikhomirov ) - spfs, files-reg: symbolic links support (Alexander Mikhalitsyn ) (#PSBM-99969) - files: also print the mnt_id of the overmounted mount with open files (Pavel Tikhomirov ) (#PSBM-99194) - net: add nftables c/r (Pavel Tikhomirov ) (#PSBM-98958) - net: separate tables_restore from iptables_tool_restore (Pavel Tikhomirov ) (#PSBM-98958) - mount: Add missing newline into the log (Cyrill Gorcunov ) - pie/restorer: Fix typo in debug print (Cyrill Gorcunov ) (#PSBM-98453) - vz7: don't get out VEX cgroup for iptables restore (Pavel Tikhomirov ) (#PSBM-98702) - restore: don't miss futex abort in restore_task_with_children (Pavel Tikhomirov ) - vz7: systemd-autofs-restart.sh: add --skipowner vzctl exec option (Pavel Tikhomirov ) (#PSBM-98502) - vz7: systemd-autofs-restart.sh: use exec3 and input from /dev/null (Pavel Tikhomirov ) (#PSBM-98438) - vz7: systemd-autofs-restart.sh: add --skiplock vzctl exec option (Pavel Tikhomirov ) (#PSBM-98231) - vz7: systemd-autofs-restart.sh: use vzctl instead of nsenter for safety (Pavel Tikhomirov ) (#PSBM-98094) - mount: mark mounts of external devices external (Pavel Tikhomirov ) (#PSBM-97810 #PSBM-100775) - mount: add a message about found dev-mapping (Pavel Tikhomirov ) - mount: restore shared options in clean mount for external mounts (Pavel Tikhomirov ) (#PSBM-97787) - mount: show more info about why we can't mount (Pavel Tikhomirov ) - mount: fix inconsistent return and goto err alternation (Pavel Tikhomirov ) - test: Add pipe04 test (Cyrill Gorcunov ) - pipes: Make pipe_data_dump dynamic (Cyrill Gorcunov ) (#PSBM-97048) - restorer: Add debug print for clone call (Cyrill Gorcunov ) (#PSBM-97408) - mount: fix external mounts so that they pass check-mounts (Pavel Tikhomirov ) (#PSBM-96385) - test: transition/epoll -- Don't fail on EINTR (Cyrill Gorcunov ) (#PSBM-96981) - mount/restore: create mountpoint for auxiliary binfmt_misc mount (Pavel Tikhomirov ) (#PSBM-96621) - mount: fix error print in case of failed bind-mount (Stanislav Kinsburskiy ) - mount/restore: create auxiliary binfmt_misc mount in the root yard (Pavel Tikhomirov ) (#PSBM-96082 #PSBM-96362) - mount: remove a leftover mnt_path check (Pavel Tikhomirov ) (#PSBM-96087) - mount: check error return of cut_root_for_bind (Pavel Tikhomirov ) (#PSBM-96087) - check-mounts/spfs: skip flags check for nfs (Pavel Tikhomirov ) (#PSBM-96106) - check-mounts: check all mntnses before failing to have a full picture (Pavel Tikhomirov ) (#PSBM-96106) - mount/check-mounts: remove auxiliary cr-time mount from tree after umount (Pavel Tikhomirov ) (#PSBM-96082) - pie/restorer: Reread last_pid on error (Cyrill Gorcunov ) (#PSBM-96105) - pie/restorer: Fix fd leaking on error path (Cyrill Gorcunov ) (#PSBM-96105) - seize: Print tracer pid for debug sake (Cyrill Gorcunov ) (#PSBM-96110) - mem/pagema-cache: Drop confusing log (Cyrill Gorcunov ) - mem/shmem: Use pmc_ helpers instead of accessing map directly (Cyrill Gorcunov ) - mem: generate_iovs -- Use pmc_get_pfn_from helper (Cyrill Gorcunov ) - mem/pagemap-cache: Provide api for map access (Cyrill Gorcunov ) - mem/pagema-cache: Make sure we're not accessing stale data (Cyrill Gorcunov ) - mem/page-xfer: Add log prefix (Cyrill Gorcunov ) - scripts/nfs: collect nfs mount servers only from ve processes (Pavel Tikhomirov ) (#PSBM-95775) - spfs: make spfs logs relative to criu working directory (Pavel Tikhomirov ) (#PSBM-59204) - pid-reuse: Ensure we're fetching params from ve0 (Cyrill Gorcunov ) (#PSBM-95422) - fsnotify: Allow to get updated restored wd (Cyrill Gorcunov ) (#PSBM-91520) - Revert "vz7: cgroup -- Rename net_cls to net_cls,net_prio on the fly" (Cyrill Gorcunov ) - vz: close_fds -- Addition to 6af5df67245755cf7e75553ee65b4a360cbdc602 (Cyrill Gorcunov ) (#PSBM-95035) - vz: close_fds -- Skip closing external service fd (Cyrill Gorcunov ) (#PSBM-94949) - netlink: Fix for 52828b9aa350cb027c2cb4c1330e0cd7ceac4b46 (Cyrill Gorcunov ) - vz7: x86,cpu -- Fixup for 4d76e16247621082580e1d137aeba18791040541 (Cyrill Gorcunov ) - vz7: action scripts: set spfs environment in run_scripts (Stanislav Kinsburskiy ) - log: Increase early log buffer (Cyrill Gorcunov ) - vz7: cpu -- Move vz_cpu_parse_cpuid_override to early_init (Cyrill Gorcunov ) (#PSBM-85265) - test: bers -- Provide --pidfile option (Cyrill Gorcunov ) - fsnotify: Add error print for nexwd failure (Cyrill Gorcunov ) (#PSBM-91520) - spfs: Retrieve NFS server IP address from mountinfo (Pavel Vokhmyanin ) (#PSBM-94209 #PSBM-92070) - net: add support for "net/core/*" sysctls (Jan Dakinevich ) (#PSBM-91415) - files: make rst_remaps shmalloc'ed to see it's change in other process (Pavel Tikhomirov ) (#PSBM-93511) - files: split remaps list to two one on dump one on restore (Pavel Tikhomirov ) (#PSBM-93511) - spfs: Fix typo in get_spfs_mngr_sock (Cyrill Gorcunov ) (#PSBM-93663) - spfs: When fetching sfd provide a copy of it (Cyrill Gorcunov ) (#PSBM-93663) - spfs: Return proper service fd from install_service_fd call (Cyrill Gorcunov ) (#PSBM-93462) - test: Add unlink_dir test (Cyrill Gorcunov ) - files: Rework clean_one_remap to order ghost dirs removal (Cyrill Gorcunov ) (#PSBM-91524) - zdtm: use --check-mounts by default (Pavel Tikhomirov ) (#PSBM-86686) - rpc: Add interface for --check-mounts option (Pavel Tikhomirov ) (#PSBM-86686) - mount: check that mounts tree restored without any hidden problems (Pavel Tikhomirov ) (#PSBM-86686) - epoll: Fix qsort args passing (Cyrill Gorcunov ) - test: epoll -- Add migrated targets (Cyrill Gorcunov ) - epoll: Add suppport for migrated targets (Cyrill Gorcunov ) (#PSBM-90012) - epoll: Fix typo in message when no target found (Cyrill Gorcunov ) - epoll: Drop duped and closed targets (Cyrill Gorcunov ) - test: epoll -- Add file inherited case (Cyrill Gorcunov ) - epoll: Ignore migrated targets (Cyrill Gorcunov ) - epoll: Defer queued epolls to write at the end of checkpoint (Cyrill Gorcunov ) - epoll: Eliminate potential variable shadowing (Cyrill Gorcunov ) - restorer: add additional debugging on clone errors (Pavel Tikhomirov ) (#PSBM-92904) - files: Add file_remap_init (Cyrill Gorcunov ) - util: Add mkdirpat_precise helper (Cyrill Gorcunov ) - test: sockets_dgram -- Don't use /tmp (Cyrill Gorcunov ) - zdtm/mntns_deleted: check if c/r is fine with deleted directory ancestor (Pavel Tikhomirov ) (#PSBM-77022) - mount: temporary create needed ancestor directories for deleted root (Pavel Tikhomirov ) (#PSBM-77022) - arch,x86: Investigate OSPKE status when handling PKU (Cyrill Gorcunov ) (#PSBM-91098) - ve: tty -- Preallocate space for itty pool (Cyrill Gorcunov ) (#PSBM-90662) - ve: tty -- Eliminate possible race in ve_itty_insert (Cyrill Gorcunov ) - ve: tty -- Drop leftover comment (Cyrill Gorcunov ) - ve: tty -- Investigate master fds with a mutex taken (Cyrill Gorcunov ) (#PSBM-90662) - ve: rst,files -- Guard list with mutex (Cyrill Gorcunov ) (#PSBM-90662) - test: tty-inherit -- Don't forget to clean buffer (Cyrill Gorcunov ) (#PSBM-94706) - test: tty-inherit -- Handle parse_pid_stat errors (Cyrill Gorcunov ) (#PSBM-94405) - ve: tty -- Add tty-inherit test (Cyrill Gorcunov ) - ve: tty -- Add support of tty inheritance, v2 (Cyrill Gorcunov ) (#PSBM-76490 #PSBM-96852) - crtools: Show command line in log (Cyrill Gorcunov ) - files: Select proper master fd when collecting fd (Cyrill Gorcunov ) (#PSBM-90293) - pstree: Introduce pstree_pid_cmp helper (Cyrill Gorcunov ) - test: netns_sub_veth -- Disable for a while (Cyrill Gorcunov ) - restore: Fix hang if root task is waiting on zombie (Cyrill Gorcunov ) (#PSBM-89830) - restore: Don't ignore errors on wait in restore_one_zombie (Cyrill Gorcunov ) - restore: Add more detailed log in wait_exiting_children (Cyrill Gorcunov ) - restore: zombie -- Add more detailed log on signals (Cyrill Gorcunov ) - inet: raw -- Add compatibility layer for old images (Cyrill Gorcunov ) - net: Add prefixes for better logging (Cyrill Gorcunov ) - mount: cr_pivot_root -- Try temp directory first (Cyrill Gorcunov ) (#PSBM-89582) - mount: Fix typo in message (Cyrill Gorcunov ) - fown: test -- Improve error messaging in file_fown_dead (Cyrill Gorcunov ) - fown: test -- Update file_own_dead to test O_PATH case (Cyrill Gorcunov ) - fown: test -- Add file_fown_dead (Cyrill Gorcunov ) - fown: Dont fail if owner is a dead pid (Cyrill Gorcunov ) (#PSBM-88336) - ve: tty -- Add more detailed debug print in ctty verification (Cyrill Gorcunov ) - ve: tty -- Save pid of a task which setups a controlling terminal (Cyrill Gorcunov ) - ve: tty -- Save tty_pgrp in process tree upon read (Cyrill Gorcunov ) - unix: Don't forget to restore original errno (Cyrill Gorcunov ) - pr-warn: Add missing newlines (Cyrill Gorcunov ) - compel: Don't forget to zap remote_map pointer after release (Cyrill Gorcunov ) (#PSBM-89231) - ve: tty -- Don't stuck if several ctty opened (Cyrill Gorcunov ) - ve: tty -- Save virtual group id (Cyrill Gorcunov ) - ve: tty -- Collect real ppid, pgid, sid on dump (Cyrill Gorcunov ) - ve: tty -- Add kdat entry to test if wa have ability to restore inhertied tty (Cyrill Gorcunov ) - unix: Disable switching mount namespace (Cyrill Gorcunov ) (#PSBM-89126) - vz7: files-reg -- Show which exactly file can't be created (Cyrill Gorcunov ) - unix: Don't forget to close ns descriptor on error path (Cyrill Gorcunov ) - tun: Add compatibility with old images (Cyrill Gorcunov ) - test: bind-mount-unix -- Implement real connect (Cyrill Gorcunov ) - unix: unix_prepare_bindmount -- Allow to connect via relative name (Cyrill Gorcunov ) (#PSBM-88274) - unix: unlink_sk -- Don't unlink bindmounted sockets (Cyrill Gorcunov ) - unix: bind_unix_sk -- Add ability to skip waiters notification (Cyrill Gorcunov ) (#PSBM-88274) - unix: make_socket -- Break connected pair if requested (Cyrill Gorcunov ) - unix: make_socket -- Add more detailed logs (Cyrill Gorcunov ) - unix: break_connected -- Add a log recod (Cyrill Gorcunov ) - unix: bindmount -- Show details about queuer (Cyrill Gorcunov ) - nfs: when allowing ports in CT netns on dump use host's iptables binary (Pavel Tikhomirov ) (#PSBM-88499) - test: sk-unix-ucred -- Make compatible with gcc 8 (Cyrill Gorcunov ) - test: cgroup04 -- Disable (Cyrill Gorcunov ) - unix: test -- Add bind-mount-unix test case (Cyrill Gorcunov ) - zdtm: Add sstrncpy helper (Cyrill Gorcunov ) - unix: Add support for bindmounted sockets (Cyrill Gorcunov ) - unix: Move shared data init into early stage (Cyrill Gorcunov ) - unix: Collect bindmounted unix sockets into own list (Cyrill Gorcunov ) - unix: Collect images before opening mountpoints (Cyrill Gorcunov ) - unix: Collect bindmounted unix sockets (Cyrill Gorcunov ) (#PSBM-96943) - mount: rework phys_stat_dev_match to work directly with mount_info (Pavel Tikhomirov ) (#PSBM-96943) - unix: image -- Move uflags into enum (Cyrill Gorcunov ) - unix: image -- Shift mnt_id index (Cyrill Gorcunov ) - unix: Fix path resolving for sockets with abs symlinks in paths (Cyrill Gorcunov ) - vz7: sk-unix -- Restore qlen before pushing queued data back (Cyrill Gorcunov ) (#PSBM-63762) - vz7: sk-unix -- Adjust default dgram qlen for systemd sake (Cyrill Gorcunov ) (#PSBM-64628) - spfs: suppress compilation warnings by roughly approximating path lenths (Pavel Tikhomirov ) - vz7/mount: show the real mount which is behind the clean mount (Pavel Tikhomirov ) - vz7: reenable not-failing cgroup tests in automatic runs (Pavel Tikhomirov ) - spfs: Fix nil dereference if no bindmount present (Cyrill Gorcunov ) (#PSBM-86775) - zdtm: temporary make mnt_ext_auto and private_bind_propagation noauto (Pavel Tikhomirov ) (#PSBM-85251) - net: Add net log prefix (Cyrill Gorcunov ) - vz7: net -- Add missing newline into debug message (Cyrill Gorcunov ) - files: Don't forget on stipping deleted postfix on linked files (Cyrill Gorcunov ) (#PSBM-84731) - netlink: Change NETLINK_REPAIR number (Kirill Tkhai ) (#PSBM-83415) - files: Don't fail on cgroup directories mode change (Cyrill Gorcunov ) (#PSBM-83154) - test: unlink_multiple_largefiles -- Make noauto (Cyrill Gorcunov ) - vz: test -- Make socket_udp-corked use different port (Vitaly Ostrosablin ) - vz: test,file_lease00 -- Disable for a while (Cyrill Gorcunov ) - vz: test,pipe03 -- Don't run in uns (Cyrill Gorcunov ) - vz: test,transition,fork -- Postpone for a while (Cyrill Gorcunov ) - vz: test,thread_different_uid_gid -- Postpone for a while (Cyrill Gorcunov ) - vz: test,sched_policy00 -- Drop ns flag for a while (Cyrill Gorcunov ) - vz: test,cgroups -- Skip testing via zdtm run (Cyrill Gorcunov ) - vz: test,tty -- Use ns flavor (Cyrill Gorcunov ) - vz: test,pty -- Use ns flavor (Cyrill Gorcunov ) - vz: zdtm,dump,bc -- Skip bc read/write when testing (Cyrill Gorcunov ) - vz: zdtm -- Don't fail in __construct_root if entries exist (Cyrill Gorcunov ) - vz7: net: do iptables restore in ve0 (Stanislav Kinsburskiy ) (#PSBM-58574) - vz7: net: iptables_tool_{dump,restore} helpers introduced (Stanislav Kinsburskiy ) - vz7: sockets: Separate socket buffer size setting into a helper (Cyrill Gorcunov ) (#PSBM-63762) - vz7: Unlimit and limit file number resource for c/r sake (Cyrill Gorcunov ) (#PSBM-61573 #PSBM-61812) - tty: Move session lookup leader into find_session_leader (Cyrill Gorcunov ) - tty: Fetch ctty index based on sid (Cyrill Gorcunov ) - tty: Add is_ctty helper (Cyrill Gorcunov ) - tty: Don't check for group inheritance (Cyrill Gorcunov ) - files-reg: Prepare for sysfs entries mode change (Cyrill Gorcunov ) (#PSBM-80585) - arch, x86: int80 -- Clobber all rX registers (Cyrill Gorcunov ) (#PSBM-80095) - spfs: start SPFS manager in containers network namespace (Stanislav Kinsburskiy ) (#PSBM-79733) - spfs: switch mounts mode to STUB after root yard depopulation (Stanislav Kinsburskiy ) - spfs: return duplicated socket from usernsd (Stanislav Kinsburskiy ) (#PSBM-79462) - spfs: improve prints in spfs_set_mode() and spfs_release_replace() (Stanislav Kinsburskiy ) - spfs: improve SPFS manager start debug and error output (Stanislav Kinsburskiy ) - spfs: remove redundant spfs_service_fd() helper (Stanislav Kinsburskiy ) - spfs: improve error and debug output for spfs_mount() (Stanislav Kinsburskiy ) - spfs: introduce request_spfs_mngr_sock)() helper (Stanislav Kinsburskiy ) - tty: Use mnt_id for first lookup of toplevel devpts (Cyrill Gorcunov ) (#PSBM-78460) - ns: Set hookups for all namespaces (Kirill Tkhai ) - ns: Set nested namespaces hookups (Kirill Tkhai ) - vz7: service: Allow keep_open flag for a WAIT_PID command (Pavel Vokhmyanin ) (#PSBM-58198) - net: execute iptables-restore in a target network namespace (Andrei Vagin ) (#PSBM-75531) - action-scripts: Export mount namespace roots via CRIU_MNT_NS_ROOTS (Cyrill Gorcunov ) (#PSBM-71861) - mount: Add export_mnt_ns_roots helper (Cyrill Gorcunov ) (#PSBM-71861) - scripts: add "-w" to iptables command (Stanislav Kinsburskiy ) (#PSBM-73153) - tty: collect_one_tty_info_entry -- Move tracking setup into main cycle (Cyrill Gorcunov ) (#PSBM-70929) - tty: collect_one_tty -- Make sure the index is in range (Cyrill Gorcunov ) - tty: tty_has_active_pair -- Make sure no overflow happened (Cyrill Gorcunov ) - tty: tty_test_and_set -- Make sure no overflow happened (Cyrill Gorcunov ) - tty: Fix __tty_verify_active_pairs (Cyrill Gorcunov ) - tty: Use macros for bitmap length (Cyrill Gorcunov ) - vz7: images -- Add task_core_entry_vz730 stub (Cyrill Gorcunov ) (#PSBM-67671) - vz7: Log into /var/log/mesages large ghost files dumps (Andrei Vagin ) (#PSBM-68320) - vz7: page-xfer: Make error message more verbose (Cyrill Gorcunov ) (#PSBM-68738) - vz7: systemd-autofs-restart.sh: return meaningful value from restore_mountpoint (Stanislav Kinsburskiy ) - vz7: criu: export join_ve helper (Stanislav Kinsburskiy ) - vz7: page-xfer: handle a case when splice returns zero (Andrei Vagin ) (#PSBM-68732) - vz7: mount: allow any types of NFS mount for a while (Stanislav Kinsburskiy ) (#PSBM-68663) - vz7: mounts: support NFS bind-mounts in the same shared group (Stanislav Kinsburskiy ) (#PSBM-68663) - vz7: criu: don't abort criu in lookup_create_item() (Andrei Vagin ) (#PSBM-68607) - vz7: dump: set pid->state for threads (Andrei Vagin ) (#PSBM-68585) - vz7: mounts: support only shared NFS mounts in inits mount namespace (Stanislav Kinsburskiy ) (#PSBM-66945) - vz7: mount: Switch user_ns before mount binfmt_misc (Kirill Tkhai ) (#PSBM-68377) - vz7: ve: Call binfmt_misc-mounting code in call_in_child_process() (Kirill Tkhai ) - vz7: mount: Move binfmt_misc-mounting code to separate function (Kirill Tkhai ) - vz7: mount: Consider EBUSY binfmt_misc mount return as error (Kirill Tkhai ) - vz7: mount: Don't search for siblings inside self (Dmitry Safonov ) (#PSBM-67723) - vz7: cr-service: Init page_ids laterly (Dmitry Safonov ) - vz7: images: Initialize images earlier (before page-server starts) (Dmitry Safonov ) (#PSBM-67335) - vz7: pages: Share page_ids between ns dump-helpers (Dmitry Safonov ) (#PSBM-67335) - vz7: mount: check for mount is unsupported only on dump (Stanislav Kinsburskiy ) - vz7: files-reg: forbid migration of opened device files on NFS (Stanislav Kinsburskiy ) (#PSBM-55590) - vz7: scripts: cleanup error output in systemd-autofs-restart.sh (Stanislav Kinsburskiy ) (#PSBM-67544) - vz7: scripts: check service mountpoint is not empty in systemd-autofs- restart.sh (Stanislav Kinsburskiy ) (#PSBM-67544) - vz7: mounts: print NFS nested mountpoint info (Stanislav Kinsburskiy ) (#PSBM-67466) - vz7: mounts: add unsupported mount helper (Stanislav Kinsburskiy ) (#PSBM-67466) - vz7: spfs: fix usage of mi->ns_mountpoint (Stanislav Kinsburskiy ) (#PSBM-66943) - vz7: spfs: pass both "mountpoint" and "ns_mountpoint" paths to manager (Stanislav Kinsburskiy ) (#PSBM-66943) - vz7: tests: shm-unaligned -- Use unique key for simultaneous run (Cyrill Gorcunov ) (#PSBM-66764) - vz7: scripts: use absolute binaries paths systemd-autofs-restart.sh (Stanislav Kinsburskiy ) (#PSBM-66967) - vz7: scripts: skip spfs mount points in systemd-autofs-restart.sh (Stanislav Kinsburskiy ) (#PSBM-66285) - vz7: scripts: check service mount point in "skip_service" systemd-autofs- restart.sh (Stanislav Kinsburskiy ) - vz7: scripts: "skip_service" helper introduced in systemd-autofs-restart.sh (Stanislav Kinsburskiy ) - vz7: fs: Add new argument to fstype::parse() and use it in binfmt_misc (Kirill Tkhai ) - vz7: Makefile: Fix scripts installation (Cyrill Gorcunov ) - vz7: scripts: systemd-autofs-restart.sh -- Enter container net ns upon join (Stanislav Kinsburskiy ) (#PSBM-65483) - vz7: filesystems: binfmt -- Add debug print on dumping stage (Cyrill Gorcunov ) (#PSBM-65185) - vz7: restore_sk_queue -- Show how many bytes already sent (Cyrill Gorcunov ) (#PSBM-64628) - vz7: sk-queue: Don't fail if we're dumping dead process queued creds (Cyrill Gorcunov ) (#PSBM-62778) - vz7: sk-queue -- Show the creds we're sending (Cyrill Gorcunov ) (#PSBM-64009) - vz7: seize -- Wait for seize in thawed state (Cyrill Gorcunov ) (#PSBM-63841) - vz7: dump: Any non-negative return code of run_scripts means an error (Andrei Vagin ) (#PSBM-62583) - vz7: seize -- Show detached pid in freezer_detach (Cyrill Gorcunov ) - vz7: Show status of uninterruptable task (Cyrill Gorcunov ) (#PSBM-63211) - vz7: ucred -- Drop packets from dead processes (Cyrill Gorcunov ) (#PSBM-62603) - vz7: test: Add ucreds test (Cyrill Gorcunov ) - vz7: sk-queue -- Add support of ucreds in unix sockets (Cyrill Gorcunov ) (#PSBM-61095) - vz7: Zap file size checking for "atop" (Cyrill Gorcunov ) (#PSBM-61459) - vz7: dump_packet_cmsg -- Allow to receive timestamp data (Cyrill Gorcunov ) (#PSBM-61248) - vz7: dump_sk_creds -- Don't leak memory for SkUcredEntry (Cyrill Gorcunov ) (#PSBM-61248) - vz7: netlink: avoid ENOBUF when a netlink queue is dumped (Andrei Vagin ) (#PSBM-60643) - vz7: netlink: skip pktinfo scm if a sender group is less than 32 (Andrei Vagin ) - vz7: socket: don't restore ucred from kernel messages (Andrei Vagin ) - vz7: netlink: dump/restore netlink options (Andrei Vagin ) - vz7: netlink: restore queues and only then restore opts (Andrei Vagin ) - vz7: cgroup -- Rename net_cls to net_cls,net_prio on the fly (Cyrill Gorcunov ) (#PSBM-60606 #PSBM-61459 #PSBM-61851) - vz7: criu: add more information about control messages (Andrei Vagin ) (#PSBM-60643) - vz7: test: check ucred for netlink messages (Andrei Vagin ) - vz7: netlink: dump and restore ucred-s for netlink messages (Andrei Vagin ) (#PSBM-59339) - vz7: mount: fix mounting non-root shared mounts (Andrei Vagin ) (#PSBM-55494) - vz7: pipes -- Restore pipe size via userns call (Cyrill Gorcunov ) (#PSBM-59829) - vz7: test: pty05 -- Add testing of multiple devpts instance (Cyrill Gorcunov ) - vz7: tty -- Don't fail if @mnt_id is not present in images (Cyrill Gorcunov ) (#PSBM-60606) - vz7: mount -- Add lookup_first_fstype helper (Cyrill Gorcunov ) - vz7: tty: Fix devpts mounts resolving (Cyrill Gorcunov ) (#PSBM-59223) - vz7: tty: Add support for multiple devpts instances (Cyrill Gorcunov ) (#PSBM-58616) - vz7: tty: Save mount ids for terminals into image (Cyrill Gorcunov ) - vz7: tty: mount -- Add mount_resolve_devpts_mnt_id helper (Cyrill Gorcunov ) - vz7: Unlimit UBC when chekpointing (Cyrill Gorcunov ) (#PSBM-53593 #PSBM-61534 #PSBM-53593) - vz7: restore -- Enter destination veX once usernsd is up (Cyrill Gorcunov ) (#PSBM-56407) - vz: kdat -- Query zdtm status runtime (Cyrill Gorcunov ) - vz: zdtm -- Export ZDTM_RUN variable to notify criu (Cyrill Gorcunov ) - vz7: zdtm: check a netlink socket with in-kernel state (Andrei Vagin ) - vz7: netlink: allow to dump netlink sockets with in-progress operations (Andrew Vagin ) - vz7: ghost files: don't check ghost size if it's an NFS path (Stanislav Kinsburskiy ) (#PSBM-56159) - vz7: Always define CONFIG_BINFMT_MISC_VIRTUALIZED (Cyrill Gorcunov ) - vz7: Don't use executable stacks in @syscall_ip (Cyrill Gorcunov ) (#PSBM-55989) - vz7: util: Add rmdirp helper (Cyrill Gorcunov ) - vz7: mount: handle error from restore_shared_options() (Andrei Vagin ) - vz7: seize: Add additional diagnose messages (Cyrill Gorcunov ) (#PSBM-53929) - vz7: mount: bind-mount autofs mounts via a file descriptors (Andrei Vagin ) (#PSBM-53194) - vz7: spfs: create control socket in /run/spfs-manager/ (Stanislav Kinsburskiy ) (#PSBM-59199) - vz7: spfs: move SPFS manager to corresponding container's dump directory (Stanislav Kinsburskiy ) - vz7: scripts: add unmasked NFS route print to nfs-ports-allow.sh (Stanislav Kinsburskiy ) (#PSBM-52353) - vz7: mnt -- Fetch VEID from cgroup for migration sake (Cyrill Gorcunov ) (#PSBM-52372) - vz7: mount: Enter/exit VE while mounting CR-time binfmt_misc (Kirill Tkhai ) (#PSBM-52320) - vz7: cg: Don't dump devices.list (Cyrill Gorcunov ) (#PSBM-50551) - vz7: cr-restore: use spfs helpers to control spfs manager (Stanislav Kinsburskiy ) - vz7: spfs: add new helpers to replces bash scripts calls (Stanislav Kinsburskiy ) - vz7: files-reg: move ghost_apply_metadata out of create_ghost_dentry (Stanislav Kinsburskiy ) - vz7: mount: create a temporary mount to restore shared and master groups (Andrey Vagin ) (#PSBM-47508 #PSBM-96087) - vz7: files-reg: fix silly-renamed files migration (Stanislav Kinsburskiy ) - vz7: files-reg: improve spfs_file helper (Stanislav Kinsburskiy ) - vz7: spfs: remove obsolete code (Stanislav Kinsburskiy ) - vz7: files-reg: migrate "spfs" files as ghost-ones (Stanislav Kinsburskiy ) - vz7: files-reg: conditionally dump content in dump_ghost_file (Stanislav Kinsburskiy ) - vz7: files-reg: split create_ghost (Stanislav Kinsburskiy ) - vz7: scripts: remove obsolete scripts (Stanislav Kinsburskiy ) - vz7: Makefile: install spfs-release-replace.sh script (Stanislav Kinsburskiy ) (#PSBM-49726) - vz7: util: mkdirname helper introduced (Stanislav Kinsburskiy ) - vz7: dump: Show task comm early (Cyrill Gorcunov ) - vz7: spfs: do not tolerate file existence on creation (Stanislav Kinsburskiy ) - vz7: spfs: fix freeze cgroup path discovery (Stanislav Kinsburskiy ) - vz7: cgroup: new_cg_root_get helper introduced (Stanislav Kinsburskiy ) - vz7: criu: remove NFS unlinked files restriction (Stanislav Kinsburskiy ) - vz7: files-reg: migrate spfs unlinked file as "link remap" objects (Stanislav Kinsburskiy ) - vz7: files-reg: migrate spfs file as "link remap" objects (Stanislav Kinsburskiy ) - vz7: spfs: pass mount ID instead of namespace descriptor to spfs_create_file (Stanislav Kinsburskiy ) - vz7: spfs: explicitly pass size and mode to spfs_create_file (Stanislav Kinsburskiy ) - vz7: link_remap: do not create excessive links for a single file (Stanislav Kinsburskiy ) - vz7: mount: forbid dumping overmounted NFS (Stanislav Kinsburskiy ) (#PSBM-48620) - vz7: zdtm: add a new test to check netlink sockets with queued data (Andrew Vagin ) - vz7: netlink: restore data in a received queue for netlink sockets (Andrei Vagin ) (#PSBM-28386) - vz7: sk-queue: add an ability to dump addresses for messages (Andrew Vagin ) - vz7: check: check whether NETLINK_REPAIR is supported or not (Andrew Vagin ) - vz7: netlink: request flags for netlink sockets (Andrew Vagin ) - vz7: files-reg: forbid to dump unlinked NFS files (Stanislav Kinsburskiy ) - vz7: proc_parse: forbid dumping NFS remote locks (Stanislav Kinsburskiy ) - vz7: files-reg: create spfs file in case of parent mount is SPFS (Stanislav Kinsburskiy ) - restore: pidfile -- write before post-restore stage (Cyrill Gorcunov ) (#PSBM-90289) - log: Write more details in write_pidfile (Cyrill Gorcunov ) - vz7: compel -- Add support for vz7 specific cpuid masking (Cyrill Gorcunov ) (#PSBM-47748 #PSBM-49423) - vz7: tty: Save task current terminal if present (Cyrill Gorcunov ) - vz7: files: Allow to dump ploopX files opened (Cyrill Gorcunov ) (#PSBM-49723) - vz7: spfs: remove "ns_list" option from "replace" command as obsolete (Stanislav Kinsburskiy ) - vz7: scripts: remove bogus command substitution in nfs-ports-allow.sh (Eugene Kolomeetz ) (#PSBM-44207) - vz7: scripts: restart all systemd automount services (Eugene Kolomeetz ) (#PSBM-46672) - vz7: util: Add cr_set_root/cr_restore_root helpers (Andrew Vagin ) - vz7: spfs: do not treat existent file as error in create_reg_file (Stanislav Kinsburskiy ) - vz7: scripts: spfs-release-replace.sh introduced (Stanislav Kinsburskiy ) - vz7: criu: spfs -- Fixup various nits for NFS sake (Cyrill Gorcunov ) - vz7: nfs: build -- Add install of spfs-change-mode.sh and nfs-ports-allow.sh (Cyrill Gorcunov ) - vz7: mounts: mount spfs instead of NFSv3 and NFSv4 (Stanislav Kinsburskiy ) (#PSBM-26967) - vz7: mount: Add support for NFSv4 (Stanislav Kinsburskiy ) - vz7: protobuf/mnt.proto: NFSv4 type added (Stanislav Kinsburskiy ) - vz7: mount: add support for NFS (Stanislav Kinsburskiy ) - vz7: protobuf/mnt.proto: NFS type added (Stanislav Kinsburskiy ) - vz7: spfs -- Mitigate sock_seqpacket_connect (Cyrill Gorcunov ) - vz7: spfs -- Mitigate spfs_manager_socket_path (Cyrill Gorcunov ) - vz7: mount: add support for SUNRPC Pipefs (Stanislav Kinsburskiy ) - vz7: protobuf/mnt.proto: RPC Pipefs type added (Stanislav Kinsburskiy ) - vz7: scripts: allow-nfs-ports.sh added (Stanislav Kinsburskiy ) - vz7: action-scripts: ACT_POST_NET_LOCK stage added (Stanislav Kinsburskiy ) - vz7: scripts: spfs-change-mode.sh added (Stanislav Kinsburskiy ) - vz7: spfs: delayed mounts facility introduced (Stanislav Kinsburskiy ) - vz7: cr-restore: declare SPFS_MNGR_SK service fd (Stanislav Kinsburskiy ) - vz7: filemap: collect mapped file fs type (Stanislav Kinsburskiy ) - vz7: Wait aio pending requests (Kirill Tkhai ) (#PSBM-42488 #PSBM-42488) - build: Switch to v3.15 vanila branch (Pavel Tikhomirov ) (#PSBM-121533) - namespaces: don't set rst on error in switch_ns_by_fd (Pavel Tikhomirov ) (#PSBM-121533) - nft: revert nftables c/r via libnftables (Pavel Tikhomirov ) (#PSBM-121533) - memfd: use PROC_SELF instead of getpid in __open_proc (Pavel Tikhomirov ) (#PSBM-121533) - util: move open_proc_self_fd to service_fd (Pavel Tikhomirov ) (#PSBM-121533) - servicefd: fully cleanup parent's shared fd table on service fd update (Pavel Tikhomirov ) (#PSBM-121533) - restore: disable clone3 + set_tid code (Pavel Tikhomirov ) (#PSBM-121533) - cr-restore: setup external pidns only for root task (Pavel Tikhomirov ) (#PSBM-121533) - namespaces: make root_ns_mask more consistent (Pavel Tikhomirov ) (#PSBM-121533) - cr-restore: make CLONE_NEWPID flag in clone_flags more consistent (Pavel Tikhomirov ) (#PSBM-121533) - restore: Value stored to 'ret' is never read (Adrian Reber ) - criu: Version 3.15 (Andrei Vagin ) - travis: install gzip and redhat-rpm-config for Fedora Rawhide based tests (Adrian Reber ) - x86/asm: update test_bit() and test_and_set_bit() (Mike Rapoport ) - zdtm: add alternative socket filter (Andrey Zhadchenko ) - sockets: fix incorrect malloc size (Andrey Zhadchenko ) - compel: Calculate sh_addr if not provided by linker (Wojciech Marczenko ) - util: Improper use of negative value (NEGATIVE_RETURNS) (Adrian Reber ) - mount: Explicit null dereferenced (FORWARD_NULL) (Adrian Reber ) - util: Improper use of negative value (NEGATIVE_RETURNS) (Adrian Reber ) - page-xfer: Argument cannot be negative (NEGATIVE_RETURNS) (Adrian Reber ) - sk-netlink: Argument cannot be negative (NEGATIVE_RETURNS) (Adrian Reber ) - kerndat: Argument cannot be negative (NEGATIVE_RETURNS) (Adrian Reber ) - net: Argument cannot be negative (NEGATIVE_RETURNS) (Adrian Reber ) - net: Argument cannot be negative (NEGATIVE_RETURNS) (Adrian Reber ) - action-scripts: Improper use of negative value (NEGATIVE_RETURNS) (Adrian Reber ) - cr-dump: Resource leak (RESOURCE_LEAK) (Adrian Reber ) - irmap: Double close (USE_AFTER_FREE) (Adrian Reber ) - proc_parse: Copy into fixed size buffer (STRING_OVERFLOW) (Adrian Reber ) - autofs: Resource leak (RESOURCE_LEAK) (Adrian Reber ) - cgroup-props: Resource leak (RESOURCE_LEAK) (Adrian Reber ) - filesystem: Double close (USE_AFTER_FREE) (Adrian Reber ) - uffd: Resource leak (RESOURCE_LEAK) (Adrian Reber ) - mount: Resource leak (RESOURCE_LEAK) (Adrian Reber ) - pagemap: Logically dead code (DEADCODE) (Adrian Reber ) - files-reg: Resource leak (RESOURCE_LEAK) (Adrian Reber ) - cgroup: Resource leak (RESOURCE_LEAK) (Adrian Reber ) - pagemap: Argument cannot be negative (NEGATIVE_RETURNS) (Adrian Reber ) - cgroup: Resource leak (RESOURCE_LEAK) (Adrian Reber ) - img-streamer: Double close (USE_AFTER_FREE) (Adrian Reber ) - net: Argument cannot be negative (NEGATIVE_RETURNS) (Adrian Reber ) - zdtm: update and refactor tests for BPF array and hash maps (Abhishek Vijeev ) - criu: adding support for BPF map name, ifindex and freeze (Abhishek Vijeev ) - images: adding support for BPF map file name and ifindex (Abhishek Vijeev ) - zdtm: adding BPF helper functions as a new library (Abhishek Vijeev ) - servicefd: close temporary fd on error path (Pavel Tikhomirov ) - criu: check matching the tcp-close option on restore only (Andrei Vagin ) - tcp: add a separate test for listen sockets (Andrei Vagin ) - tcp: dump shutdown state for unconnected sockets (Andrei Vagin ) - CI: run cross compile on all branches (Adrian Reber ) - CI: add Travis test script to 'lint' (Adrian Reber ) - CI: switch to loop based apt-get (Adrian Reber ) - tests: only run 'make lint' once in CI (Adrian Reber ) - scripts: run shellcheck on the scripts folder (Adrian Reber ) - crtools: Fix --help output line width (Radostin Stoyanov ) - doc: update documentations for the tcp-close option (Andrei Vagin ) - tcp: allow to specify --tcp-close on dump (Andrei Vagin ) - test/zdtm: write in a tcp socket has to fail if tcp-close was set (Andrei Vagin ) - socket/tcp: shutdown tcp sockets if the tcp-close option is set (Andrei Vagin ) - Switch to python 3 variants of dependencies on debian-based builds (Sebastiaan van Stijn ) - mips64: implement vdso_redirect_calls() (Guoyun Sun ) - zdtm: Add test for SO_LINDER (Radostin Stoyanov ) - socket: c/r support for SO_LINGER (Radostin Stoyanov ) - socket: c/r support for SO_OOBINLINE (Radostin Stoyanov ) - zdtm: check that unbindable mount flag does not affect restore (Pavel Tikhomirov ) - mount: replace mountpoint to mnt_id in error messages (Pavel Tikhomirov ) - mount: delay setting unbindable flag where possible (Pavel Tikhomirov ) - sk-netlink: Handle case of in-use netlink peer ids (Hello1024 ) - images: kindly ask not to use fields with id 18 in unix_sk_entry (Pavel Tikhomirov ) - zdtm: add new epoll01 test (Pavel Tikhomirov ) - eventpoll: fix toff off calculation (Pavel Tikhomirov ) - eventpoll: resort toff back by idx (Pavel Tikhomirov ) - travis: use Fedora rawhide images from Fedora (Adrian Reber ) - travis: restore lazy-pages tests for uns flavor (Mike Rapoport ) - criu: don't use the deprecated security_context_t (SELinux) (Abhishek Vijeev ) - scripts: adding libbpf for Travis tests (Abhishek Vijeev ) - zdtm: adding tests for BPF maps (Abhishek Vijeev ) - criu: restoring BPF map data (Abhishek Vijeev ) - criu: restoring BPF maps (without data) (Abhishek Vijeev ) - crit: add BPF map data decoding (Abhishek Vijeev ) - criu: dumping BPF map data (Abhishek Vijeev ) - criu: dumping meta-data about BPF map files (Abhishek Vijeev ) - criu: parse information about BPF maps from procfs (Abhishek Vijeev ) - Set Makefile config variables for libbpf (Abhishek Vijeev ) - criu: define constants for c/r of BPF maps (Abhishek Vijeev ) - images: protobuf definitions for BPF map meta-data and data (Abhishek Vijeev ) - travis: add a focal based test run (Adrian Reber ) - travis: switch travis to Python 3 (Adrian Reber ) - contrib: Add python-future to Debian packages (Pavel Emelyanov ) - github: disable cross-compule for mips on master branch (Mike Rapoport ) - criu: the type of a socket inode has to be "unsigned int" (Andrei Vagin ) - actions: create file for daily rebuild (Adrian Reber ) - travis: loop over apt-get to recover from errors (Adrian Reber ) - Makefiles: do not re-generate magic.py every time (Adrian Reber ) - python: Handle byte strings when converting protobuf to dict (Otto Bittner ) - CONTRIBUTING.md: clarify placement of Fixes: tags (Mike Rapoport ) - lib/c: extend receive to handle incoming FDs (Adrian Reber ) - log: Ask developers not to use print_on_level directly (Pavel Emelyanov ) - log: Hide vprint_on_level in log.c (Pavel Emelyanov ) - util: Use pr_info in vma printing (Pavel Emelyanov ) - ipc: Use pr_info() instead of print_on_level(PR_INFO...) (Pavel Emelyanov ) - proc_parse: Do not feed loglevel into restore_loginuid (Pavel Emelyanov ) - check: Use pr_foo macros (Pavel Emelyanov ) - vagrant: Update to Fedora 32 (Radostin Stoyanov ) - criu/files-reg.c: build-id size bug fix (Ajay Bharadwaj ) - criu/files-reg.c: build-id from multiple headers fix (Ajay Bharadwaj ) - compel/infect: Don't adjust stack/args alignment (Dmitry Safonov ) - compel: allocate the GOT table to avoid memory corruption (Nicolas Viennot ) - compel: remove x86/prologue.S (Nicolas Viennot ) - compel: x86 parasite_service entry point simplification (Nicolas Viennot ) - compel: rewrite parasite cmd and args manipulation from assembly to C (Nicolas Viennot ) - compel: stop rounding up the parasite blob size and args region to PAGE_SIZE (Nicolas Viennot ) - compel: remove "addr_" from offset variable names (Nicolas Viennot ) - compel: pass the parasite_blob_desc to compel_relocs_apply() (Nicolas Viennot ) - compel: add error message for COMMON symbols (Nicolas Viennot ) - zdtm: make cgroup_yard to be aware of cgroup2 (Andrei Vagin ) - tests: skip cgroup04 and cgroup_ifpriomap on pure cgroup2 systems (Andrei Vagin ) - zdtm.py: add the cgroup2 freezer support (Andrei Vagin ) - cgroup: Add the initial support for cgroup2 (Andrei Vagin ) - pidns: fixup (Adrian Reber ) - criu/config.c: added cli option for build-id (Ajay Bharadwaj ) - criu/files-reg.c: add build-id validation functionality (Ajay Bharadwaj ) - images/regfile.proto: adds additional fields to RegFileEntry (Ajay Bharadwaj ) - restore: skip unnecessary setgroups calls (Angie Ni ) - tests: criu-image-streamer change dev branch to master branch (Nicolas Viennot ) - test/zdtm/autofs: use sigaction instead of the deprecated siginterrupt (Andrei Vagin ) - Add error logging to config + crtools init (Angie Ni ) - Add error logging to kerndat init (Angie Ni ) - test: test external namespace support (Adrian Reber ) - pidns: add external pidns to man-page (Adrian Reber ) - pidns: support external PID namespaces (Adrian Reber ) - pidns: write and read pidns information (Adrian Reber ) - pidns: add pidns image file definition (Adrian Reber ) - zdtm: add zombie_leader test (Pavel Tikhomirov ) - cgroup: make prepare_task_cgroup lookup current cgset in ancestors (Pavel Tikhomirov ) - mount: restore_task_mnt_ns - Lookup for mount namespace conditionally (Cyrill Gorcunov ) - test: skip vdso test on non-vdso systems (Adrian Reber ) - uffd: uffd_open prints info, caller prints error (Angie Ni ) - CONTRIBUTING.md: add pull request guidelines (Mike Rapoport ) - CONTRIBUTING.md: add sections about patch description and splitting (Mike Rapoport ) - CONTRIBUTING.md: minor formatting fixes (Mike Rapoport ) - CONTRIBUTING.md: import "How to submit patches" from criu.org (Mike Rapoport ) - Add CONTRIBUTING.md (Mike Rapoport ) - arch/x86: Fix calculation of xstate_size (Cyrill Gorcunov ) - criu swrk: fix usage, allow common options (Kir Kolyshkin ) - Travis: use Vagrant to run VMs (Adrian Reber ) - Also report clone3() errors correctly (Adrian Reber ) - test/others/libcriu: test version library calls (Adrian Reber ) - lib/c: add criu_get_version() (Adrian Reber ) - criu: optimize find_unix_sk_by_ino() (ZeyadYasser ) - swrk: send notification instead of using status fd (Kir Kolyshkin ) - close_service_fd: rename to status_ready (Kir Kolyshkin ) - clang: Branch condition evaluates to a garbage value (Adrian Reber ) - coverity: fix FORWARD_NULL in criu/proc_parse.c: 1481 (Adrian Reber ) - coverity: fix RESOURCE_LEAK criu/timens.c: 67 (Adrian Reber ) - libcriu: Add space between 'if' and parenthesis (Radostin Stoyanov ) - libcriu: Use spaces around '=' (Radostin Stoyanov ) - libcriu: Add orphan pts master (Radostin Stoyanov ) - cr-service: spell out an error (Kir Kolyshkin ) - cr-service: fix wording in debug messages (Kir Kolyshkin ) - tests: move cross compilation to github actions (Adrian Reber ) - travis: use bionic almost everywhere (Adrian Reber ) - Remove dupe of "deprecated stuff on" msg (Kir Kolyshkin ) - soccr/test: Fix error logging in libsoccr tcp-test (Josh Abraham ) - mips: fix fail when run zdtm test pthread01.c (Guoyun Sun ) - mips: impliment arch_shmat() (Guoyun Sun ) - test/jenkins: use bash to run shell scripts (Andrei Vagin ) - style: fix typos (Nicolas Viennot ) - mips:support docker-cross compile (Guoyun Sun ) - mips:criu: Enable mips in criu (Guoyun Sun ) - mips:criu/arch/mips: Add mips parts to criu (Guoyun Sun ) - mips:proto: Add mips to protocol buffer files (Guoyun Sun ) - mips:compel: Enable mips in compel/ (Guoyun Sun ) - mips:compel/arch/mips: Add architecture support to compel tool and libraries (Guoyun Sun ) - net: fix coverity RESOURCE_LEAK (Adrian Reber ) - util: Remove deprecated print_data() routine (Radostin Stoyanov ) - page-read: Warn about async read w/o completion cb (Pavel Emelyanov ) - tests: run tests with criu-image-streamer with --stream (Nicolas Viennot ) - img-streamer: introduction of criu-image-streamer (Nicolas Viennot ) - pipes: loop over splice() when dumping a pipe's data (Nicolas Viennot ) - remote: Use tmp file buffer when restore ip dump (Radostin Stoyanov ) - util: Fix addr casting for IPv4/IPv6 in autobind (Radostin Stoyanov ) - test: fix flake8 errors (Adrian Reber ) - travis: fix alpine builds (Adrian Reber ) - Update certificates for failing tls based tests (Adrian Reber ) - criu: Version π (Pavel Emelyanov ) - get_clean_mount: demote an error to a warning (Kir Kolyshkin ) - proc: parse clock symbolic names in /proc/pid/timens_offsets (Andrei Vagin ) - pstree: improve error handling in read_pstree_image (Pavel Tikhomirov ) - kerndat remove duplicate call to kerndat_nsid() (Pavel Tikhomirov ) - parasite-msg: %u is not implemented for parasite code (Nicolas Viennot ) - kerndat: remove duplicate call to kerndat_socket_netns() (Nicolas Viennot ) - criu: put statement continuation on the same line as the closing bracket (Pavel Tikhomirov ) - autofs: fix integer overflow in mount options parsing (Alexander Mikhalitsyn ) - mem: avoid re-opening CR_FD_PAGES when not needed (Nicolas Viennot ) - img: rellocate a PATH_MAX buffer from the bss section to the stack (Nicolas Viennot ) - img: fix image_name() when image is empty (Nicolas Viennot ) - zdtm: fail if test with the crfail tag passes (Andrei Vagin ) - zdtm: limit the line length for ps by 160 symbols (Andrei Vagin ) - timens: restore processes in a new timens to restore clocks (Andrei Vagin ) - test: check that C/R of nested time namespaces fails (Andrei Vagin ) - zdtm_ct: run each test in a new time namespace (Andrei Vagin ) - zdtm: add a new test to check c/r of time namespaces (Andrei Vagin ) - zdtm: add support for time namespaces (Andrei Vagin ) - namespace: fail if ns/time_for_children isn't equal to ns/time (Andrei Vagin ) - criu: Add support for time namespaces (Andrei Vagin ) - MAINTAINERS: Add Pavel (myself) to maintainers (Pavel Tikhomirov ) - remove header include statements duplicates (Pavel Tikhomirov ) - memfd: split the struct memfd_inode (Andrei Vagin ) - memfd: save all memfd inodes in one image (Andrei Vagin ) - Add build directory to gitignore (Byeonggon Lee ) - namespaces: fix error handling in dump_user_ns (Pavel Tikhomirov ) - config/nftables: include string.h for strlen (Andrei Vagin ) - test/fifo_loop: change sizes of all fifo-s to fit a test buffer (Andrei Vagin ) - test/pipe03: check that pipe size is restored (Andrei Vagin ) - pipe: restore pipe size even if a pipe is empty (Andrei Vagin ) - zdtm: Use safe helper function to initialize unix socket sockaddr structure (Valeriy Vdovin ) - zdtm: Implemented get_current_dir_name wrapper that checks for 'x' permissions (Valeriy Vdovin ) - test/zdtmp: add a test to C/R shared memory file descriptors (Andrei Vagin ) - mem/vma: set VMA_FILE_{PRIVATE,SHARED} if a vma file is borrowed (Andrei Vagin ) - mem: dump shared memory file descriptors (Andrei Vagin ) - make: use cflags/ldflags for config.h detection mechanism (Nicolas Viennot ) - mailmap: update my email (Andrei Vagin ) - travis: add ppc64-cross test on amd64 (Mike Rapoport ) - crit-recode: skip (not try to parse) nftables raw image (Alexander Mikhalitsyn ) - travis: Use debian/buster as base for cross build tests (Dmitry Safonov ) - travis: Add aarch64-cross test on amd64 (Dmitry Safonov ) - compel: Remove compel.h (Dmitry Safonov ) - criu: Remove compel.h includes (Dmitry Safonov ) - zdtm/fifo_loop: don't try to write more than pipe size (Andrei Vagin ) - zdtm: add a test on open symlink migration (Pavel Tikhomirov ) - files: allow dumping opened symlinks (Alexander Mikhalitsyn ) - zdtm: add a test for files opened with O_PATH (Pavel Tikhomirov ) - fown: Don't fail on dumping files opened with O_PATH (Cyrill Gorcunov ) - zdtm/inhfd: force python to read new data from a file (Andrei Vagin ) - memfd: don't corrupt a state of the dumped fd (Andrei Vagin ) - fs: use __open_proc instead of open("/proc/...", ... ) (Andrei Vagin ) - cgroup2: add minimal cgroup2 support (Adrian Reber ) - seize: support cgroup v2 freezer (Adrian Reber ) - seize: factor out opening and writing the freezer state (Adrian Reber ) - seize: prepare for cgroupv2 freezer (Adrian Reber ) - criu(8): Convert tabs to spaces (Radostin Stoyanov ) - criu(8): Add documentation for --enable-fs (Radostin Stoyanov ) - uffd: use userns_call() to execute ioctl(UFFDIO_API) (Mike Rapoport ) - test/jenkins: remove empty line at the end of file (Pavel Tikhomirov ) - python: sort imports (Andrei Vagin ) - criu: Make use strlcpy() to copy into allocated strings (Dmitry Safonov ) - criu: Use strlcpy() instead of strncpy() (Dmitry Safonov ) - memfd: add tests (Nicolas Viennot ) - inhfd_test: add support for non-pair files (Nicolas Viennot ) - memfd: add seals support (Nicolas Viennot ) - memfd: add memory mapping support (Nicolas Viennot ) - memfd: add --inherit-fd support (Nicolas Viennot ) - files: increase path buffer size in inherited_fd() (Nicolas Viennot ) - memfd: add file support (Nicolas Viennot ) - util: introduce the mount_detached_fs helper (Andrei Vagin ) - MAINTAINERS: Add Dima and Adrian to maintainers (Andrei Vagin ) - MAINTAINERS: add Mike (Mike Rapoport ) - Maintainers: Suggest the maintainers codex (#932) (Pavel Emelyanov ) - python: sort imports (Andrei Vagin ) - test/zdtm/inhfd: update dump options one each iteration (Andrei Vagin ) - Travis: fix podman test case (Adrian Reber ) - zdtm: mntns_rw_ro_rw update error msg (Radostin Stoyanov ) - vdso: Don't page-align vvar (Dmitry Safonov ) - vdso: Repair !CONFIG_VDSO (Dmitry Safonov ) - vdso: Add vdso_is_present() helper (Dmitry Safonov ) - zdtm: Make test_{doc,author} weak variables (Dmitry Safonov ) - criu: Make use strlcpy() to copy into allocated strings (Dmitry Safonov ) - typo: fix missing space in error message (Nicolas Viennot ) - vdso: use correct offsets to remap vdso and vvar mappings (Andrei Vagin ) - test/vdso: check the code path when here is no API to map vDSO (Andrei Vagin ) - criu: fix build failure against gcc-10 (Sergei Trofimovich ) - criu(8): fix for asciidoctor (Kir Kolyshkin ) - criu(8): some minor rewording (Kir Kolyshkin ) - doc/Makefile: don't hide xmlto stderr (Kir Kolyshkin ) - compel: add -ffreestanding to force gcc not to use builtin memcpy, memset (Alexander Mikhalitsyn ) - travis: fix warning and errors from validation (Adrian Reber ) - arm: use clone3() if it exists (Adrian Reber ) - aarch64: use clone3() if possible (Adrian Reber ) - clone3: handle clone3() with CLONE_PARENT (Adrian Reber ) - ppc64le: use clone3() if possible (Adrian Reber ) - arm: remove stack pointer from clobber list (Adrian Reber ) - s390x: use clone3() if possible (Adrian Reber ) - s390x: remove stack pointer from clobber list (Adrian Reber ) - Use clone3() with set_tid to create processes (Adrian Reber ) - Add assembler wrapper for clone3() (Adrian Reber ) - kerndat: detect if system support clone3() with set_tid (Adrian Reber ) - travis: reduce the number of podman tests (Adrian Reber ) - image: core -- Reserve start_time field (Valeriy Vdovin ) - ppc64le: remove register '1' from clobber list (Adrian Reber ) - Switch open-j9 alpine tests to python3 (Nidhi Gupta ) - Add Socket-based Java Functional Tests (Nidhi Gupta ) - travis: switch alpine to python3 (Adrian Reber ) - files: Add FD_CLOEXEC test (Nicolas Viennot ) - files: Remove O_CLOEXEC from file flags (Nicolas Viennot ) - python: Improve decoding of file flags (Nicolas Viennot ) - files: fix ghost file error path (Nicolas Viennot ) - zdtm: nft tables preservation test (Alexander Mikhalitsyn ) - net: add nftables c/r (Alexander Mikhalitsyn ) - style: Enforce kernel style -Wstrict-prototypes (Nicolas Viennot ) - style: Enforce kernel style -Wdeclaration-after-statement (Nicolas Viennot ) - Fix tests on Ubuntu (Adrian Reber ) - zdtm: Add test for SO_KEEPALIVE (Radostin Stoyanov ) - socket: c/r support for SO_KEEPALIVE (Radostin Stoyanov ) - sockets: Remove duplicate variable assignment (Radostin Stoyanov ) - scripts: alpine: Install py2 packages with pip (Radostin Stoyanov ) - crit: fix python3 encoding issues (Nicolas Viennot ) - x86/cpu: cleanup and improve xfeatures_mask check (Pavel Tikhomirov ) - zdtm: sysctl net.unix.max_dgram_qlen value preservation test (Alexander Mikhalitsyn ) - unix: sysctl -- Preserve max_dgram_qlen value (Cyrill Gorcunov ) - mount: Order call_helper_process calls (Cyrill Gorcunov ) - restorer/inotify: reorder inotify cleanup after waiting helpers and zombies (Pavel Tikhomirov ) - readme: github pull-requests is the preferred way to contribute (Andrei Vagin ) - cgroup: use new mount API to open the cgroup file system (Andrei Vagin ) - net: use new mount API to open the sysfs file system (Andrei Vagin ) - mount: use new mount API to open the proc file system (Andrei Vagin ) - util: introduce the mount_detached_fs helper (Andrei Vagin ) - kerndat: check whether the new mount API is supported of not (Andrei Vagin ) - travis: ignore fails of podman-test (Andrei Vagin ) - Add File-based Java Functional Tests (Nidhi Gupta ) - zdtm/socket-tcp-fin-wait1: Use array index fro TEST_MSG (Dmitry Safonov ) - Documentation: Add a hint about docker build (Dmitry Safonov ) - travis: Add armv7-cross as cross-compile test (Dmitry Safonov ) - build/zdtm: Use pkg-config to find includes/libs (Dmitry Safonov ) - build/zdtm: Makefile hack for travis aarch64/armv8l (Dmitry Safonov ) - build/zdtm: Support cross-build (Dmitry Safonov ) - build: Use SUBARCH (Dmitry Safonov ) - build/nmk: Provide proper SUBARCH (Dmitry Safonov ) - build/nmk: Remove SRCARCH (Dmitry Safonov ) - build: Remove SRCARCH (Dmitry Safonov ) - zdtm: Set --root path to 0700 on restore (Andrei Vagin ) - zdtm: Replace if->continue with if->elif->else (Radostin Stoyanov ) - man: Describe --root option requirements (Radostin Stoyanov ) - restore: Create temp proc in /tmp (Radostin Stoyanov ) - mount: Bind-mount root via userns_call (Radostin Stoyanov ) - mount: Add error messages (Radostin Stoyanov ) - travis: exclude uns tests for lazy-pages on newer kernels (Mike Rapoport ) - travis: group lazy-pages options (Mike Rapoport ) - Checkpoint only specified controllers (Michał Cłapiński ) - compel/criu: Add __must_check (Dmitry Safonov ) - criu: Kill tasks even when the network is unlocked (Dmitry Safonov ) - compel/infect: Detach but fail compel_resume_task() (Dmitry Safonov ) - parasite-syscall: Log if can't cure on failed infection (Dmitry Safonov ) - cr-restore: Warn if restorer can't be unmapped (Dmitry Safonov ) - cr-dump: Warn if unmapping local memfd failed (Dmitry Safonov ) - cr-dump: Try to cure remote on err-pathes (Dmitry Safonov ) - lib/infect: Check if compel succeed in executing munmap (Dmitry Safonov ) - compel: Mark compat argument of __NR() as used (Dmitry Safonov ) - compel/infect: Warn if close() failed on memfd (Dmitry Safonov ) - lib/ptrace: Be more elaborate about failures (Dmitry Safonov ) - lib/ptrace: Allow PTRACE_PEEKDATA with errno != 0 (Dmitry Safonov ) - travis: remove group from .travis.yml (Adrian Reber ) - travis: switch pcp64le and s390x to real hardware (Adrian Reber ) - travis: switch all arm related tests to real hardware (Adrian Reber ) - Makefile hack for travis aarch64/armv8l (Adrian Reber ) - travis: Do not run privileged containers in LXD (Adrian Reber ) - travis: fix copy paste error from previous commit (Adrian Reber ) - Run java functional tests on travis (Nidhi Gupta ) - mount: make mnt_resort_siblings nonrecursive and reuse friendly (Pavel Tikhomirov ) - mount: rework mount tree build step on restore (Pavel Tikhomirov ) - ns/restore/image: do not read namespace images for non-namespaced case (Pavel Tikhomirov ) - ns: make rst_new_ns_id static (Pavel Tikhomirov ) - mount: remove useless check in populate_mnt_ns (Pavel Tikhomirov ) - travis: Disallow failures on ia32 (Dmitry Safonov ) - test/java: Add FileRead Tests (Nidhi Gupta ) - test/static:conntracks: Support nftables (Vitaly Ostrosablin ) - travis: start to use aarch64 hardware (Adrian Reber ) - Fix broken web-links (Sergey Bronnikov ) - Action scripts should be invoked with normal signal behavior (Nicolas Viennot ) - early-log: Print warnings only if the buffer is full (Dmitry Safonov ) - Add `criu` to PATH env variable in libcriu tests (Ashutosh Mehra ) - Enable libcriu testing in travis jobs (Ashutosh Mehra ) - Couple of fixes to build and run libcriu tests (Ashutosh Mehra ) - service: Use space on stack for msg buffer (Radostin Stoyanov ) - image-desc: Remove CR_FD_FILE_LOCKS_PID (Radostin Stoyanov ) - cgroup: fix cg_yard leak on error path in prepare_cgroup_sfd (Pavel Tikhomirov ) - page-pipe: Resize up to PIPE_MAX_SIZE (Radostin Stoyanov ) - Guard against empty file lock status (Nicolas Viennot ) - image: avoid name conflicts in image files (Andrei Vagin ) - criu: use atomic_add instead of atomic_sub (Andrei Vagin ) - lib/c: fix a compile time error (Andrei Vagin ) - zdtm: handle --pre-dump-mode in the rpc mode (Andrei Vagin ) - Refactor time accounting macros (Abhishek Dubey ) - read mode pre-dump implementation (Abhishek Dubey ) - Adding cnt_sub for stats manipulation (Abhishek Dubey ) - Skip adding PROT_READ to non-PROT_READ mappings (Abhishek Dubey ) - Handling iov generation for non-PROT_READ regions (Abhishek Dubey ) - Adding --pre-dump-mode option (Abhishek Dubey ) - restorer/inotify: Don't overflow PIE stack (Dmitry Safonov ) - Cleanup do_full_int80() (Nicolas Viennot ) - unix: print inode numbers as unsigned int (Andrei Vagin ) - pipe: print pipe_id as unsigned to generate an external pipe name (Andrei Vagin ) - cgroup: fixup nits (Pavel Tikhomirov ) - zdtm/cgroup_yard: create a test cgroup yard from the post-start hook (Andrei Vagin ) - test/cgroup_yard: always clean up a test cgroup yard (Andrei Vagin ) - Convert pr_msg() error messages to pr_err() (Radostin Stoyanov ) - Introduce flush_early_log_to_stderr destructor (Radostin Stoyanov ) - arch/x86: fpu_state->fpu_state_ia32.xsave hast to be 64-byte aligned (Andrei Vagin ) - travis: Install missing diffutils dependency (Radostin Stoyanov ) - test: implement test for new --cgroup-yard option (Michał Cłapiński ) - Add new command line option: --cgroup-yard (Michał Cłapiński ) - scripts: Drop Fedora 28/rawhide fix (Radostin Stoyanov ) - compel/x86: Don't use pushq for a label (Dmitry Safonov ) - arch/x86: push correct eip on the stack before lretq (Andrei Vagin ) - cr-dump: Remove redundant if-statement (Radostin Stoyanov ) - files-reg: Drop clear_ghost_files() prototype (Radostin Stoyanov ) - py: Manual fixlets of code formatting (Radostin Stoyanov ) - criu: Version 3.13 (Pavel Emelyanov ) - py: Fix tabs in code comments (Radostin Stoyanov ) - pyimages: Add pb2dict.py to checked and fix warnings/errors (Pavel Emelyanov ) - test/others: Reuse setup_swrk() (Radostin Stoyanov ) - test/other: Resolve Py3 compatibility issues (Radostin Stoyanov ) - py: Reformat everything into pep8 style (Andrei Vagin ) - zdtm: make inotify04 require restore (Pavel Tikhomirov ) - travis: add podman test case (Adrian Reber ) - README: fix broken links to github.com/xemul/criu (Sebastiaan van Stijn ) - Replace references to github.com/xemul/criu (Sebastiaan van Stijn ) - kerndat: remove unused code (Andrei Vagin ) - kerndat: mark functions as static which are used in kerndat.c only (Andrei Vagin ) - vdso: Correctly track vdso position without vvar (Dmitry Safonov ) - test: bring the lo interface up in each network namespace (Andrei Vagin ) - zdtm/inotify: add a test that no unexpected events appear after c/r (Pavel Tikhomirov ) - inotify: cleanup auxiliary events from queue (Pavel Tikhomirov ) - restorer: Use gettimeofday() from rt-vdso for log timings (Dmitry Safonov ) - vdso: Add compatible property to vdso_maps (Dmitry Safonov ) - seccomp/restorer: Disable gtod from vdso in strict mode (Dmitry Safonov ) - restorer/parasite-vdso: Don't move vvar if failed to move vdso (Dmitry Safonov ) - vdso/restorer: Always track vdso/vvar positions in vdso_maps_rt (Dmitry Safonov ) - vdso/restorer: Try best to preserve vdso during restore (Dmitry Safonov ) - compel/std/uapi: Provide setter for gettimeofday() (Dmitry Safonov ) - compel/log: Use enum as parameter for std_log_set_loglevel() (Dmitry Safonov ) - pb2dict: Disable undefined name 'basestring' (Radostin Stoyanov ) - scripts: Install flake8 with dnf in Fedora (Radostin Stoyanov ) - scripts: Set PYTHON=python3 in Fedora Dockerfiles (Radostin Stoyanov ) - scripts: Remove yaml/ipaddress Py2 fedora modules (Radostin Stoyanov ) - mount: fix inconsistent return and goto err alternation (Pavel Tikhomirov ) - scripts: remove python2 from Fedora Dockerfiles (Adrian Reber ) - scripts: add possibility to override docker with podman (Adrian Reber ) - images: convert type of child_subreaper from int32 to bool (Andrei Vagin ) - restorer: print errors if prctl syscalls failed (Andrei Vagin ) - make: Insert version macros in criu.h (Radostin Stoyanov ) - mem/shmem: Fix typos for_each_shmem macro (Cyrill Gorcunov ) - mem/shmem: Use xmalloc in collect_sysv_shmem (Cyrill Gorcunov ) - mem/shmem: More elegant entries declaration (Cyrill Gorcunov ) - mem/shmem: Use xrealloc_safe in expand_shmem (Cyrill Gorcunov ) - mem/page-pipe: Use xrealloc_safe in page_pipe_add_hole (Cyrill Gorcunov ) - mem/pmc: Print pid for debug sake (Cyrill Gorcunov ) - mem/pmc: Use pr_warn_once if cache is disabled (Cyrill Gorcunov ) - mem/page-xfer: Add log prefix (Cyrill Gorcunov ) - mem/vma: Sanitize struct vm_area_list (Cyrill Gorcunov ) - mem/vma: Drop never used VM_AREA_LIST macro (Cyrill Gorcunov ) - mem/vma: Use vm_area_list_init where appropriate (Cyrill Gorcunov ) - mem/vma: Use memset for vm_area_list_init (Cyrill Gorcunov ) - mem/page-pipe: Use ssize_t for splice/tee results (Cyrill Gorcunov ) - mem/page-pipe: Align members for readability sake (Cyrill Gorcunov ) - mem/page-pipe: create_page_pipe -- Drop redundant zero assignment (Cyrill Gorcunov ) - mem/page-pipe: Eliminate redundant pipe_off setup (Cyrill Gorcunov ) - Add ZDTM tests for child subreaper property (Michał Cłapiński ) - Add support for migrating CHILD_SUBREAPER prctl (Michał Cłapiński ) - Replace libprotobuf-c0-dev with libprotobuf-c-dev (Sebastiaan van Stijn ) - zdtm: use a proper page size for the host (Andrei Vagin ) - test/packet_sock_mmap: parse inode as unsigned long long (Andrei Vagin ) - zdtm: make grep_errors also grep warnings (Pavel Tikhomirov ) - inventory: skip warning in case of no parent directory (Pavel Tikhomirov ) - dedup: convert noisy warning to debug and improve messages (Pavel Tikhomirov ) - files-reg: fix coverity RESOURCE_LEAK (Adrian Reber ) - util: fix clang 'null pointer passed' (Adrian Reber ) - seize: fix coverity RESOURCE_LEAK (Adrian Reber ) - sk-inet: fix coverity IDENTICAL_BRANCHES (Adrian Reber ) - tty: Move tty layer shared init into tty_init_restore (Cyrill Gorcunov ) - fix segmentation fault caused by uninitialized mutex (Dengguangxing ) - Documentation: Create man page for libcompel (Harshavardhan Unnibhavi ) - flake.cfg: Update to yapf formatting (Pavel Emelyanov ) - lint: Print flake8 version before checking (Pavel Emelyanov ) - travis: Enable TLS testing (Radostin Stoyanov ) - zdtm: Add --tls option (Radostin Stoyanov ) - rpc: Add support for TLS options (Radostin Stoyanov ) - tls: Add --tls-no-cn-verify option (Radostin Stoyanov ) - page-xfer: Add TLS support with X509 certificates (Radostin Stoyanov ) - make: config -- Link with GnuTLS (Radostin Stoyanov ) - fsnotify: More precious error handling (Cyrill Gorcunov ) - c-lib: Install and uninstall libcriu.a (Uchio Kondo ) - Add CRIU_A to cleanup target (Uchio Kondo ) - c-lib: Add lib-a into all-y targets (Uchio Kondo ) - c-lib: Support to build a static archive (Uchio Kondo ) - zdtm: Fix memory and resource leaks (Radostin Stoyanov ) - criu/vdso: Purge CONFIG_VDSO (Dmitry Safonov ) - pie/build: Add CFLAGS_PIE to CFLAGS (Dmitry Safonov ) - util-vdso: Check chain for STN_UNDEF (Dmitry Safonov ) - x86/vdso: Don't insert trampolines in vsyscall (Dmitry Safonov ) - rt-vdso: Be verbose if !blobs_matches() (Dmitry Safonov ) - arm/pie: Provide __clear_cache() (Dmitry Safonov ) - arm: Provide aeabi helpers in ARM format (Dmitry Safonov <0x7f454c46@gmail.com>) - arm: Build {pie-, }util-vdso with CONFIG_VDSO_32 (Dmitry Safonov <0x7f454c46@gmail.com>) - vdso/arm32: Add vdso trampoline support (Dmitry Safonov ) - parasite-vdso: Add ugly casts for arm32 (Dmitry Safonov ) - vdso/arm: Add vdso symbols from kernel (Dmitry Safonov ) - cr-check: Add check for mremap() of special mappings (Dmitry Safonov ) - pb2dict: Resolve Python 2/3 compatibility issues (Radostin Stoyanov ) - pb2dict: Fix is_string() check for Python 2 (Radostin Stoyanov ) - zdtm: Check stats file presence before reading (Pavel Emelianov ) - aarch64: Remove stack pointer from clobber list (Radostin Stoyanov ) - test/s390: add a new patch to xtables libraries (Andrei Vagin ) - util: use F_DUPFD when we don't want to overwrite an existing descriptor (Andrei Vagin ) - stats: Make dstats shmem (Pavel Emelianov ) - zdtm: Check pages stats after dump (Pavel Emelianov ) - shmem: Save pages stats too (Pavel Emelianov ) - mem: Update stats for overflow page pipes (Pavel Emelianov ) - make: Use asciidoctor by default (Radostin Stoyanov ) - python: Drop six dependency (Radostin Stoyanov ) - sk-unix: fix coverity NULL_RETURNS (Adrian Reber ) - image: fix coverity RESOURCE_LEAK (Adrian Reber ) - util: fix coverity FORWARD_NULL (Adrian Reber ) - sk-unix: fix coverity RESOURCE_LEAK (Adrian Reber ) - sk-unix: fix clang 'value is never read' (Adrian Reber ) - sk-queue: fix clang 'potential memory leak' (Adrian Reber ) - sk-inet: fix clang 'potential memory leak' (Adrian Reber ) - sk-inet: fix coverity RESOURCE_LEAK (Adrian Reber ) - proc_parse: fix coverity RESOURCE_LEAK (Adrian Reber ) - pie/restorer: fix clang 'value is never read' (Adrian Reber ) - page-xfer: fix clang 'value is never read' (Adrian Reber ) - pagemap: fix coverity FORWARD_NULL (Adrian Reber ) - pagemap: fix clang 'free released memory' (Adrian Reber ) - mem: fix coverity RESOURCE_LEAK (Adrian Reber ) - lsm: fix clang 'Use of memory after it is freed' (Adrian Reber ) - lib/c: fix coverity DEADCODE (Adrian Reber ) - libcriu: fix coverity RESOURCE_LEAK (Adrian Reber ) - log: fix coverity OVERRUN (Adrian Reber ) - image: fix clang 'dereference of a null pointer' (Adrian Reber ) - files-reg: fix coverity NULL_RETURNS (Adrian Reber ) - files: fix coverity RESOURCE_LEAK (Adrian Reber ) - cr-service: fix clang 'dereference of a null pointer' (Adrian Reber ) - cr-service: fix coverity STRING_OVERFLOW (Adrian Reber ) - compel: fix clang 'value stored is never read' (Adrian Reber ) - cgroup: fix clang 'free released memory' (Adrian Reber ) - autofs: fix coverity RESOURCE_LEAK (Adrian Reber ) - x86/crtools: do not error when YMM is missing (Zhang Ning ) - build/criu/pie: Move trampolines to restorer-obj-y (Dmitry Safonov ) - criu/ia32: Consolidate compat vdso and move to arch/x86 (Dmitry Safonov ) - make: Move CR_NOGLIBC into CFLAGS_PIE (Dmitry Safonov ) - compel: Don't use CFLAGS_PIE for libcompel.so (Dmitry Safonov ) - build: Use cflags from compel for pie.lib.a (Dmitry Safonov ) - Makefile.crtools: Remove bogus ccflags-y (Dmitry Safonov ) - make: Don't export ccflags-y (Dmitry Safonov ) - build: Move __ASSEMBLY__ define to the top Makefile (Dmitry Safonov ) - arm/build: Move -marm cflag to CFLAGS_PIE (Dmitry Safonov ) - build/pie: Add comments to build files (Dmitry Safonov ) - lazy-pages: fix stack detection (Mike Rapoport ) - crtools: Print err messages from check_options() (Radostin Stoyanov ) - config: Exit with error if ps-socket is std fd (Radostin Stoyanov ) - util: cr_daemon: Drop keep_fd argument (Radostin Stoyanov ) - zdtm: Add UDP broadcast test (Radostin Stoyanov ) - sk-inet: restore SO_BROADCAST option (Radostin Stoyanov ) - zdtm: Simplify string to boolean conversion (Radostin Stoyanov ) - [coredump]: correct the parsing of reg_files from files.img (guoqd ) - test/exhaustive: Replace map by list comprehension (Harshavardhan Unnibhavi ) - cgroup: Add "ignore" mode for --manage-cgroups (Dmitry Safonov ) - zdtm/thread-bomb: Limit stack size in thread-bomb (Dmitry Safonov ) - x86/compel/infect: Be verbose on remote mmap failure (Dmitry Safonov ) - zdtm/vdso/ia32: Ignore vsyscall page appear (Dmitry Safonov ) - zdtm/vdso/ia32: Use uint64_t for /proc/self/maps (Dmitry Safonov ) - test/bers: Fix sizeof to memset (Rikard Falkeborn ) - test: add missing va_end (Rikard Falkeborn ) - files-reg: Remove redundant inner if (Rikard Falkeborn ) - test: remove unused variables (Rikard Falkeborn ) - test/zdtm: Move assignment after return value check (Rikard Falkeborn ) - compel/s390: Fix return value in error path (Rikard Falkeborn ) - compel/s390: Fix memset sizeof (Rikard Falkeborn ) - criu/clone: stack size is too small for Android (Zhang Ning ) - test: socket_udplite -- Test shudowned sockets (Cyrill Gorcunov ) - sk-inet: udp -- Don't fail on calling shutdown on disconnected socket (Cyrill Gorcunov ) - arch: add Hygon CPU Vendor ID("HygonGenuine") checking in compel_cpuid() (hygonsoc ) - Convert spaces to tabs (Radostin Stoyanov ) - zdtm/ia32: fcntl() wrapper for old glibc(s) (Dmitry Safonov ) - zdtm: Refactor seccomp_filter_{threads,tsync} (Radostin Stoyanov ) - criu: Version 3.12.1 (Andrei Vagin ) - lsm: fix compiler error on Fedora 30 (Adrian Reber ) - lsm: don't reset socket contex if SELinux is disabled (Andrei Vagin ) - lsm: fix compiler error 'unused-result' (Adrian Reber ) - selinux: add socket label test (Adrian Reber ) - sockets: dump and restore xattr security labels (Adrian Reber ) - test: Verify that sockcreate does not change during restore (Adrian Reber ) - lsm: also dump and restore sockcreate (Adrian Reber )- mount: ignore root change in cgroup mounts in case of container rename (Pavel Tikhomirov ) (#PSBM-108126) - spfs: fix usage of new_cg_root_get (Pavel Tikhomirov ) (#PSBM-108126)- zdtm: add scm07 SCM_RIGHTS & SCM_CREDENTIALS case (Pavel Tikhomirov ) (#PSBM-99868) - sk-queue: fix SCM restore in case when SCM_RIGHTS & SCM_CREDS in one packet (Pavel Tikhomirov ) (#PSBM-99868) - sk-queue: fix lost ScmEntries during SkPacketEntry copy (Pavel Tikhomirov ) (#PSBM-99868)- binfmt_misc: isolate binfmt_misc dump logic from mountinfo/mountpoint dump. (Pavel Tikhomirov ) (#PSBM-96362) - build: Adjust versions for u16 (Pavel Tikhomirov ) - zdtm: add propagation group with mount flags to mount_complex_sharing (Pavel Tikhomirov ) (#PSBM-96308)- Added ipset requirement (#PSBM-103070)- PSBM-102980 (Alexander Mikhalitsyn ) (#PSBM-102980)- PSBM-102972 (Alexander Mikhalitsyn ) (#PSBM-102972)- PSBM-102791 (Alexander Mikhalitsyn ) (#PSBM-102791)- PSBM-102605 (Alexander Mikhalitsyn ) (#PSBM-102605)- PSBM-96385 PSBM-100080 (Pavel Tikhomirov ) (#PSBM-96385 #PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080) - PSBM-100080 (Pavel Tikhomirov ) (#PSBM-100080)- PSBM-100083 (Valeriy Vdovin ) (#PSBM-100083) - PSBM-100083 (Valeriy Vdovin ) (#PSBM-100083) - PSBM-99926 (Alexander Stefanov ) (#PSBM-99926)- PSBM-101433 (Pavel Tikhomirov ) (#PSBM-101433) - PSBM-101433 (Pavel Tikhomirov ) (#PSBM-101433) - PSBM-101145 (Pavel Tikhomirov ) (#PSBM-101145) - PSBM-101433 (Pavel Tikhomirov ) (#PSBM-101433) - PSBM-101433 (Pavel Tikhomirov ) (#PSBM-101433)- PSBM-64123 (Valeriy Vdovin ) (#PSBM-64123)- PSBM-100775 (Pavel Tikhomirov ) (#PSBM-100775)- PSBM-99969 (Alexander Mikhalitsyn ) (#PSBM-99969)- PSBM-100053 (Pavel Tikhomirov ) (#PSBM-100053)- Fixup 4fd65f5762002a8ed57c6c5b3b2f189f70ce3b74 (#PSBM-99360)- mount: Order call_helper_process calls (Cyrill Gorcunov ) (#PSBM-99360) - Revert "restore: Serialize access to last_pid"- build: Adjust versions for u13 - restore: Serialize access to last_pid (#PSBM-99360) - Revert "./test/zdtm/static:conntracks: Support nftables" (#PSBM-99112)- PSBM-99194 (Pavel Tikhomirov ) (#PSBM-99194)- PSBM-99292 (Pavel Tikhomirov ) (#PSBM-99292)- pie: restorer -- Show pids statistics on thread creation failure (#PSBM-99230)- PSBM-99001 (Pavel Tikhomirov ) (#PSBM-99001) - PSBM-99101 (Vitaly Ostrosablin ) (#PSBM-99101)- PSBM-98958 (Pavel Tikhomirov ) (#PSBM-98958) - PSBM-98958 (Pavel Tikhomirov ) (#PSBM-98958)- PSBM-98888 (Pavel Tikhomirov ) (#PSBM-98888) - PSBM-98888 (Pavel Tikhomirov ) (#PSBM-98888)- pie/restorer: Fix typo in debug print (#PSBM-98453)- PSBM-98702 (Pavel Tikhomirov ) (#PSBM-98702)- PSBM-98502 (Pavel Tikhomirov ) (#PSBM-98502)- PSBM-98438 (Pavel Tikhomirov ) (#PSBM-98438)- PSBM-98231 (Pavel Tikhomirov ) (#PSBM-98231)- PSBM-96943 (Pavel Tikhomirov ) (#PSBM-96943)- PSBM-98094 (Pavel Tikhomirov ) (#PSBM-98094)- PSBM-97810 (Pavel Tikhomirov ) (#PSBM-97810)- PSBM-97787 (Pavel Tikhomirov ) (#PSBM-97787)- test: Add pipe04 test - pipes: Make pipe_data_dump dynamic (#PSBM-97048)- restorer: Add debug print for clone call (#PSBM-97408) - mount: fix external mounts so that they pass check-mounts (Pavel Tikhomirov ) (#PSBM-96385)- PSBM-96981 (Cyrill Gorcunov ) (#PSBM-96981)- PSBM-96973 (Pavel Tikhomirov ) (#PSBM-96973)- zdtm: make grep_errors also grep warnings (Pavel Tikhomirov ) (#PSBM-60715) - inventory: skip warning in case of no parent directory (Pavel Tikhomirov ) (#PSBM-60715) - dedup: convert noisy warning to debug and improve messages (Pavel Tikhomirov ) (#PSBM-60715) - zdtm/inotify: add a test that no unexpected events appear after c/r (Pavel Tikhomirov ) (#PSBM-60715) - inotify: cleanup auxiliary events from queue (Pavel Tikhomirov ) (#PSBM-60715) - vtty: tty_verify_ctty -- Fix a typo (#PSBM-96852) - mount/restore: create mountpoint for auxiliary binfmt_misc mount (Pavel Tikhomirov ) (#PSBM-96621)- mount/restore: create mountpoint for auxiliary binfmt_misc mount (Pavel Tikhomirov ) (#PSBM-96621)- mount: delay setting unbindable flag where possible (Pavel Tikhomirov ) (#PSBM-96376) - mount: fix error print in case of failed bind-mount (Stanislav Kinsburskiy ) - mount/restore: create auxiliary binfmt_misc mount in the root yard (Pavel Tikhomirov ) (#PSBM-96082 #PSBM-96362) - mount: remove a leftover mnt_path check (Pavel Tikhomirov ) (#PSBM-96087) - mount: check error return of cut_root_for_bind (Pavel Tikhomirov ) (#PSBM-96087) - mount: fix parentheses nit in else condition in do_bind_mount (Pavel Tikhomirov ) (#PSBM-96087)- build: Adjust version for vz7-u12 - check-mounts/spfs: skip flags check for nfs (Pavel Tikhomirov ) (#PSBM-96106) - check-mounts: check all mntnses before failing to have a full picture (Pavel Tikhomirov ) (#PSBM-96106) - mount/check-mounts: remove auxiliary cr-time mount from tree after umount (Pavel Tikhomirov ) (#PSBM-96082)- pie/restorer: Reread last_pid on error (#PSBM-96105) - pie/restorer: Fix fd leaking on error path (#PSBM-96105)- seize: Print tracer pid for debug sake (#PSBM-96110)- mem/pagema-cache: Drop confusing log (#PSBM-95760) - mem/shmem: Use pmc_ helpers instead of accessing map directly - mem: generate_iovs -- Use pmc_get_pfn_from helper - mem/pagemap-cache: Provide api for map access - mem/pagema-cache: Make sure we're not accessing stale data - stats: Make dstats shmem (Pavel Emelianov ) - shmem: Save pages stats too (Pavel Emelianov ) - mem: Update stats for overflow page pipes (Pavel Emelianov ) - mem/shmem: Fix typos for_each_shmem macro - mem/shmem: Use xmalloc in collect_sysv_shmem - mem/shmem: Reorder code in expand_shmem - mem/shmem: Use xrealloc_safe in expand_shmem - mem/page-pipe: Use xrealloc_safe in page_pipe_add_hole - mem/pmc: Print pid for debug sake - mem/pmc: Use pr_warn_once if cache is disabled - mem/page-xfer: Add log prefix - mem/vma: Sanitize struct vm_area_list - mem/vma: Drop never used VM_AREA_LIST macro - mem/vma: Use vm_area_list_init where appropriate - mem/vma: Use memset for vm_area_list_init - mem/page-pipe: Use ssize_t for splice/tee results - mem/page-pipe: Align members for readability sake - mem/page-pipe: create_page_pipe -- Drop redundant zero assignment - mem/page-pipe: Eliminate redundant pipe_off setup- Add phaul requirement (#PSBM-95828)- scripts/nfs: collect nfs mount servers only from ve processes (Pavel Tikhomirov ) (#PSBM-95775)- spfs: make spfs logs relative to criu working directory (Pavel Tikhomirov ) (#PSBM-59204)- pid-reuse: Ensure we're fetching params from ve0 (#PSBM-95422)- fsnotify: Allow to get updated restored wd (#PSBM-91520) - Revert "vz7: cgroup -- Rename net_cls to net_cls,net_prio on the fly" - criu.spec: Add python-ipaddress for python-criu package (#PSBM-94578)- vz: close_fds -- Addition to 6af5df67245755cf7e75553ee65b4a360cbdc602 (#PSBM-95035)- vz: close_fds -- Skip closing external service fd (#PSBM-94949) - netlink: Fix for 52828b9aa350cb027c2cb4c1330e0cd7ceac4b46 - vz7: x86,cpu -- Fixup for 4d76e16247621082580e1d137aeba18791040541 - vz7: action scripts: set spfs environment in run_scripts (Stanislav Kinsburskiy ) - log: Increase early log buffer- build: Switch to v3.12 vanilla branch - files-reg: Fix 847db9c3239f9951407a2d09b794eea63d24b2df - vz7: cpu -- Move vz_cpu_parse_cpuid_override to early_init (#PSBM-85265) - test: bers -- Provide --pidfile option - fsnotify: Add error print for nexwd failure (#PSBM-91520) - spfs: Retrieve NFS server IP address from mountinfo (Pavel Vokhmyanin ) (#PSBM-94209 #PSBM-92070) - net: add support for "net/core/*" sysctls (Jan Dakinevich ) (#PSBM-91415) - sk-inet: udp -- Don't fail on calling shutdown on disconnected socket (#PSBM-93461) - files: make rst_remaps shmalloc'ed to see it's change in other process (Pavel Tikhomirov ) (#PSBM-93511) - files: split remaps list to two one on dump one on restore (Pavel Tikhomirov ) (#PSBM-93511) - spfs: Fix typo in get_spfs_mngr_sock (#PSBM-93663) - spfs: When fetching sfd provide a copy of it (#PSBM-93663) - spfs: Return proper service fd from install_service_fd call (#PSBM-93462) - mount: fix order of mnt namespaces in united mount tree (Pavel Tikhomirov ) (#PSBM-93305) - test: Add unlink_dir test (Cyrill Gorcunov ) - files: Rework clean_one_remap to order ghost dirs removal (Cyrill Gorcunov ) (#PSBM-91524) - zdtm: use --check-mounts by default (Pavel Tikhomirov ) (#PSBM-86686) - rpc: Add interface for --check-mounts option (Pavel Tikhomirov ) (#PSBM-86686) - mount: check that mounts tree restored without any hidden problems (Pavel Tikhomirov ) (#PSBM-86686) - mount: rework mount tree build step on restore (Pavel Tikhomirov ) (#PSBM-86686) - ns/restore/image: do not read namespace images for non-namespaced case (Pavel Tikhomirov ) (#PSBM-86686) - ns: make rst_new_ns_id static (Pavel Tikhomirov ) (#PSBM-86686) - mount: remove useless check in populate_mnt_ns (Pavel Tikhomirov ) (#PSBM-86686) - epoll: Fix qsort args passing - test: epoll -- Add migrated targets (Cyrill Gorcunov ) - epoll: Add suppport for migrated targets (Cyrill Gorcunov ) (#PSBM-90012) - epoll: Fix typo in message when no target found (Cyrill Gorcunov ) - epoll: Drop duped and closed targets (Cyrill Gorcunov ) - test: epoll -- Add file inherited case (Cyrill Gorcunov ) - epoll: Ignore migrated targets (Cyrill Gorcunov ) - epoll: Defer queued epolls to write at the end of checkpoint (Cyrill Gorcunov ) - epoll: Eliminate potential variable shadowing (Cyrill Gorcunov ) - restorer: add additional debugging on clone errors (Pavel Tikhomirov ) (#PSBM-92904) - files: Add file_remap_init (Cyrill Gorcunov ) - util: Add mkdirpat_precise helper (Cyrill Gorcunov ) - test: sockets_dgram -- Don't use /tmp (Cyrill Gorcunov ) - zdtm/mntns_deleted: check if c/r is fine with deleted directory ancestor (Pavel Tikhomirov ) (#PSBM-77022) - mount: temporary create needed ancestor directories for deleted root (Pavel Tikhomirov ) (#PSBM-77022) - arch,x86: Investigate OSPKE status when handling PKU (#PSBM-91098) - ve: tty -- Preallocate space for itty pool (#PSBM-90662) - ve: tty -- Eliminate possible race in ve_itty_insert - ve: tty -- Drop leftover comment - ve: tty -- Investigate master fds with a mutex taken (#PSBM-90662) - ve: rst,files -- Guard list with mutex (#PSBM-90662) - test: tty-inherit -- Don't forget to clean buffer (#PSBM-94706) - test: tty-inherit -- Handle parse_pid_stat errors (#PSBM-94405) - ve: tty -- Add tty-inherit test - ve: tty -- Add support of tty inheritance, v2 (#PSBM-76490) - crtools: Show command line in log - files: Select proper master fd when collecting fd (#PSBM-90293) - pstree: Introduce pstree_pid_cmp helper - test: netns_sub_veth -- Disable for a while - restore: Fix hang if root task is waiting on zombie (#PSBM-89830) - restore: Don't ignore errors on wait in restore_one_zombie - restore: Add more detailed log in wait_exiting_children - restore: zombie -- Add more detailed log on signals - inet: raw -- Add compatibility layer for old images - net: Add prefixes for better logging (Cyrill Gorcunov ) - mount: cr_pivot_root -- Try temp directory first (#PSBM-89582) - mount: Fix typo in message - ve: Add helpers for debug sake - fown: test -- Improve error messaging in file_fown_dead - fown: test -- Update file_own_dead to test O_PATH case - fown: Don't fail on dumping files opened wit O_PATH (#PSBM-89680) - fown: test -- Add file_fown_dead - fown: Dont fail if owner is a dead pid (#PSBM-88336) - .gitignore: Add patches/ - ve: tty -- Add more detailed debug print in ctty verification - ve: tty -- Save pid of a task which setups a controlling terminal - ve: tty -- Save tty_pgrp in process tree upon read - unix: Don't forget to restore original errno - pr-warn: Add missing newlines - compel: Don't forget to zap remote_map pointer after release (#PSBM-89231) - ve: tty -- Don't stuck if several ctty opened - ve: tty -- Save virtual group id - ve: tty -- Collect real ppid, pgid, sid on dump - ve: tty -- Add kdat entry to test if wa have ability to restore inhertied tty - unix: Disable switching mount namespace (#PSBM-89126) - vz7: files-reg -- Show which exactly file can't be created - unix: Don't forget to close ns descriptor on error path - tun: Add compatibility with old images - test: bind-mount-unix -- Implement real connect - unix: unix_prepare_bindmount -- Allow to connect via relative name (#PSBM-88274) - unix: unlink_sk -- Don't unlink bindmounted sockets - unix: bind_unix_sk -- Add ability to skip waiters notification (#PSBM-88274) - unix: make_socket -- Break connected pair if requested - unix: make_socket -- Add more detailed logs - unix: break_connected -- Add a log recod - unix: bindmount -- Show details about queuer - nfs: when allowing ports in CT netns on dump use host's iptables binary (Pavel Tikhomirov ) (#PSBM-88499) - test: sk-unix-ucred -- Make compatible with gcc 8 - vz7: image -- Add compat layer for Core entry (#PSBM-88238) - test: cgroup04 -- Disable - unix: bindmount -- Move mounting code to be called before first mount - vz7: unix: Add compatibility with u7 images (#PSBM-86861) - unix: test -- Add bind-mount-unix test case - zdtm: Add sstrncpy helper (Cyrill Gorcunov ) - unix: Add support for bindmounted sockets - unix: Move shared data init into early stage (Cyrill Gorcunov ) - unix: Collect bindmounted unix sockets into own list (Cyrill Gorcunov ) - unix: Collect images before opening mountpoints (Cyrill Gorcunov ) - unix: Collect bindmounted unix sockets (Cyrill Gorcunov ) - unix: image -- Move uflags into enum - unix: image -- Shift mnt_id index (Cyrill Gorcunov ) - unix: Fix path resolving for sockets with abs symlinks in paths - vz7: sk-unix -- Restore qlen before pushing queued data back (#PSBM-63762) - vz7: sk-unix -- Adjust default dgram qlen for systemd sake (#PSBM-64628) - spfs: suppress compilation warnings by roughly approximating path lenths (Pavel Tikhomirov ) - vz7/mount: show the real mount which is behind the clean mount (Pavel Tikhomirov ) - vz7: reenable not-failing cgroup tests in automatic runs (Pavel Tikhomirov ) - spfs: Fix nil dereference if no bindmount present (#PSBM-86775) - zdtm: temporary make mnt_ext_auto and private_bind_propagation noauto (Pavel Tikhomirov ) (#PSBM-85251) - net: Add net log prefix - vz7: net -- Add missing newline into debug message - files: Don't forget on stipping deleted postfix on linked files (#PSBM-84731) - netlink: Change NETLINK_REPAIR number (Kirill Tkhai ) (#PSBM-83415) - files: Don't fail on cgroup directories mode change (#PSBM-83154) - test: unlink_multiple_largefiles -- Make noauto - vz: test -- Make socket_udp-corked use different port (Vitaly Ostrosablin ) - vz: test,file_lease00 -- Disable for a while - vz: test,pipe03 -- Don't run in uns - vz: test,transition,fork -- Postpone for a while - vz: test,thread_different_uid_gid -- Postpone for a while - vz: test,sched_policy00 -- Drop ns flag for a while - vz: test,cgroups -- Skip testing via zdtm run - vz: test,tty -- Use ns flavor - vz: test,pty -- Use ns flavor - vz: zdtm,mount -- Don't fetch veid when testing and skip cr moutns - vz: zdtm,restore -- Skip entering veX when testing - vz: zdtm,dump,bc -- Skip bc read/write when testing - vz: zdtm,net,iptables -- Don't enter userns for a root - vz: kdat -- Query zdtm status runtime - vz: zdtm -- Export ZDTM_RUN variable to notify criu - vz: zdtm -- Don't fail in __construct_root if entries exist - vz7: net: do iptables restore in ve0 (Stanislav Kinsburskiy ) (#PSBM-58574) - vz7: net: iptables_tool_{dump,restore} helpers introduced (Stanislav Kinsburskiy ) - vz7: sockets: Separate socket buffer size setting into a helper (#PSBM-63762) - vz7: Unlimit and limit file number resource for c/r sake (#PSBM-61573 #PSBM-61812) - tty: Move session lookup leader into find_session_leader - tty: Fetch ctty index based on sid - tty: Add is_ctty helper - tty: Don't check for group inheritance - files-reg: Prepare for sysfs entries mode change (#PSBM-80585) - arch, x86: int80 -- Clobber all rX registers (#PSBM-80095) - spfs: start SPFS manager in containers network namespace (Stanislav Kinsburskiy ) (#PSBM-79733) - spfs: switch mounts mode to STUB after root yard depopulation (Stanislav Kinsburskiy ) - spfs: return duplicated socket from usernsd (Stanislav Kinsburskiy ) (#PSBM-79462) - spfs: improve prints in spfs_set_mode() and spfs_release_replace() (Stanislav Kinsburskiy ) - spfs: improve SPFS manager start debug and error output (Stanislav Kinsburskiy ) - spfs: remove redundant spfs_service_fd() helper (Stanislav Kinsburskiy ) - spfs: improve error and debug output for spfs_mount() (Stanislav Kinsburskiy ) - spfs: introduce request_spfs_mngr_sock)() helper (Stanislav Kinsburskiy ) - tty: Use mnt_id for first lookup of toplevel devpts (#PSBM-78460) - ns: Set hookups for all namespaces (Kirill Tkhai ) - ns: Set nested namespaces hookups (Kirill Tkhai ) - vz7: service: Allow keep_open flag for a WAIT_PID command (Pavel Vokhmyanin ) (#PSBM-58198) - net: execute iptables-restore in a target network namespace (Andrei Vagin ) (#PSBM-75531) - action-scripts: Export mount namespace roots via CRIU_MNT_NS_ROOTS (#PSBM-71861) - mount: Add export_mnt_ns_roots helper (#PSBM-71861) - scripts: add "-w" to iptables command (Stanislav Kinsburskiy ) (#PSBM-73153) - tty: collect_one_tty_info_entry -- Move tracking setup into main cycle (#PSBM-70929) - tty: collect_one_tty -- Make sure the index is in range - tty: tty_has_active_pair -- Make sure no overflow happened - tty: tty_test_and_set -- Make sure no overflow happened - tty: Fix __tty_verify_active_pairs - tty: Use macros for bitmap length - vz7: images -- Add task_core_entry_vz730 stub (#PSBM-67671) - vz7: Log into /var/log/mesages large ghost files dumps (Andrei Vagin ) (#PSBM-68320) - vz7: page-xfer: Make error message more verbose (#PSBM-68738) - vz7: systemd-autofs-restart.sh: return meaningful value from restore_mountpoint (Stanislav Kinsburskiy ) - vz7: mount: restore_task_mnt_ns - Lookup for mount namespace conditionally (#PSBM-68062) - vz7: criu: export join_ve helper (Stanislav Kinsburskiy ) - vz7: page-xfer: handle a case when splice returns zero (Andrei Vagin ) (#PSBM-68732) - vz7: mount: allow any types of NFS mount for a while (Stanislav Kinsburskiy ) (#PSBM-68663) - vz7: mounts: support NFS bind-mounts in the same shared group (Stanislav Kinsburskiy ) (#PSBM-68663) - vz7: criu: don't abort criu in lookup_create_item() (Andrei Vagin ) (#PSBM-68607) - vz7: dump: set pid->state for threads (Andrei Vagin ) (#PSBM-68585) - vz7: mounts: support only shared NFS mounts in inits mount namespace (Stanislav Kinsburskiy ) (#PSBM-66945) - vz7: mount: Switch user_ns before mount binfmt_misc (Kirill Tkhai ) (#PSBM-68377) - vz7: ve: Call binfmt_misc-mounting code in call_in_child_process() (Kirill Tkhai ) - vz7: mount: Move binfmt_misc-mounting code to separate function (Kirill Tkhai ) - vz7: mount: Consider EBUSY binfmt_misc mount return as error (Kirill Tkhai ) - vz7: mount: Don't search for siblings inside self (Dmitry Safonov ) (#PSBM-67723) - vz7: sk-queue: fix non-fatal print log level (Stanislav Kinsburskiy ) - vz7: cr-service: Init page_ids laterly (Dmitry Safonov ) - vz7: images: Initialize images earlier (before page-server starts) (Dmitry Safonov ) (#PSBM-67335) - vz7: pages: Share page_ids between ns dump-helpers (Dmitry Safonov ) (#PSBM-67335) - vz7: mount: check for mount is unsupported only on dump (Stanislav Kinsburskiy ) - vz7: files-reg: forbid migration of opened device files on NFS (Stanislav Kinsburskiy ) (#PSBM-55590) - vz7: scripts: cleanup error output in systemd-autofs-restart.sh (Stanislav Kinsburskiy ) (#PSBM-67544) - vz7: scripts: check service mountpoint is not empty in systemd-autofs- restart.sh (Stanislav Kinsburskiy ) (#PSBM-67544) - vz7: mounts: print NFS nested mountpoint info (Stanislav Kinsburskiy ) (#PSBM-67466) - vz7: mounts: add unsupported mount helper (Stanislav Kinsburskiy ) (#PSBM-67466) - vz7: spfs: fix usage of mi->ns_mountpoint (Stanislav Kinsburskiy ) (#PSBM-66943) - vz7: spfs: pass both "mountpoint" and "ns_mountpoint" paths to manager (Stanislav Kinsburskiy ) (#PSBM-66943) - vz7: tests: shm-unaligned -- Use unique key for simultaneous run (#PSBM-66764) - vz7: scripts: use absolute binaries paths systemd-autofs-restart.sh (Stanislav Kinsburskiy ) (#PSBM-66967) - vz7: scripts: skip spfs mount points in systemd-autofs-restart.sh (Stanislav Kinsburskiy ) (#PSBM-66285) - vz7: scripts: check service mount point in "skip_service" systemd-autofs- restart.sh (Stanislav Kinsburskiy ) - vz7: scripts: "skip_service" helper introduced in systemd-autofs-restart.sh (Stanislav Kinsburskiy ) - vz7: fs: Add new argument to fstype::parse() and use it in binfmt_misc (Kirill Tkhai ) - vz7: Makefile: Fix scripts installation - vz7: scripts: systemd-autofs-restart.sh -- Enter container net ns upon join (Stanislav Kinsburskiy ) (#PSBM-65483) - vz7: filesystems: binfmt -- Add debug print on dumping stage (#PSBM-65185) - vz7: restore_sk_queue -- Show how many bytes already sent (#PSBM-64628) - vz7: sk-queue: Don't fail if we're dumping dead process queued creds (#PSBM-62778) - vz7: sk-queue -- Show the creds we're sending (#PSBM-64009) - vz7: seize -- Wait for seize in thawed state (#PSBM-63841) - vz7: freezer -- Add set_freezer_state helper (#PSBM-63841) - vz7: dump: Any non-negative return code of run_scripts means an error (Andrei Vagin ) (#PSBM-62583) - vz7: seize -- Show detached pid in freezer_detach - vz7: Show status of uninterruptable task (#PSBM-63211) - vz7: ucred -- Drop packets from dead processes (#PSBM-62603) - vz7: sk-queue -- Add support of ucreds in unix sockets (#PSBM-61095) - vz7: test: Add ucreds test - vz7: Zap file size checking for "atop" (#PSBM-61459) - vz7: dump_packet_cmsg -- Allow to receive timestamp data (#PSBM-61248) - vz7: dump_sk_creds -- Don't leak memory for SkUcredEntry (#PSBM-61248) - vz7: netlink: avoid ENOBUF when a netlink queue is dumped (Andrei Vagin ) (#PSBM-60643) - vz7: netlink: skip pktinfo scm if a sender group is less than 32 (Andrei Vagin ) - vz7: socket: don't restore ucred from kernel messages (Andrei Vagin ) - vz7: netlink: dump/restore netlink options (Andrei Vagin ) - vz7: netlink: restore queues and only then restore opts (Andrei Vagin ) - vz7: cgroup -- Rename net_cls to net_cls,net_prio on the fly (#PSBM-60606 #PSBM-61459 #PSBM-61851) - vz7: criu: add more information about control messages (Andrei Vagin ) (#PSBM-60643) - vz7: test: check ucred for netlink messages (Andrei Vagin ) - vz7: netlink: dump and restore ucred-s for netlink messages (Andrei Vagin ) (#PSBM-59339) - vz7: mount: fix mounting non-root shared mounts (Andrei Vagin ) (#PSBM-55494) - vz7: pipes -- Restore pipe size via userns call (#PSBM-59829) - vz7: test: pty05 -- Add testing of multiple devpts instance - vz7: tty -- Don't fail if @mnt_id is not present in images (#PSBM-60606) - vz7: mount -- Add lookup_first_fstype helper - vz7: tty: Fix devpts mounts resolving (Cyrill Gorcunov ) (#PSBM-59223) - vz7: tty: Add support for multiple devpts instances (#PSBM-58616) - vz7: tty: Save mount ids for terminals into image - vz7: tty: mount -- Add mount_resolve_devpts_mnt_id helper (Cyrill Gorcunov ) - vz7: Unlimit UBC when chekpointing (#PSBM-53593 #PSBM-61534 #PSBM-53593) - vz7: restore -- Enter destination veX once usernsd is up (#PSBM-56407) - vz7: zdtm: check a netlink socket with in-kernel state (Andrei Vagin ) - vz7: netlink: allow to dump netlink sockets with in-progress operations (Andrew Vagin ) - vz7: ghost files: don't check ghost size if it's an NFS path (Stanislav Kinsburskiy ) (#PSBM-56159) - vz7: Always define CONFIG_BINFMT_MISC_VIRTUALIZED - vz7: Don't use executable stacks in @syscall_ip (#PSBM-55989) - vz7: util: Add rmdirp helper - vz7: mount: handle error from restore_shared_options() (Andrei Vagin ) - vz7: seize: Add additional diagnose messages (#PSBM-53929) - vz7: mount: bind-mount autofs mounts via a file descriptors (Andrei Vagin ) (#PSBM-53194) - vz7: spfs: create control socket in /run/spfs-manager/ (Stanislav Kinsburskiy ) (#PSBM-59199) - vz7: spfs: move SPFS manager to corresponding container's dump directory (Stanislav Kinsburskiy ) - vz7: scripts: add unmasked NFS route print to nfs-ports-allow.sh (Stanislav Kinsburskiy ) (#PSBM-52353) - vz7: mnt -- Fetch VEID from cgroup for migration sake (#PSBM-52372) - vz7: mount: Enter/exit VE while mounting CR-time binfmt_misc (Kirill Tkhai ) (#PSBM-52320) - vz7: cg: Don't dump devices.list (#PSBM-50551) - vz7: cr-restore: use spfs helpers to control spfs manager (Stanislav Kinsburskiy ) - vz7: spfs: add new helpers to replces bash scripts calls (Stanislav Kinsburskiy ) - vz7: files-reg: move ghost_apply_metadata out of create_ghost_dentry (Stanislav Kinsburskiy ) - vz7: mount: create a temporary mount to restore shared and master groups (Andrey Vagin ) (#PSBM-47508) - vz7: files-reg: fix silly-renamed files migration (Stanislav Kinsburskiy ) - vz7: files-reg: improve spfs_file helper (Stanislav Kinsburskiy ) - vz7: spfs: remove obsolete code (Stanislav Kinsburskiy ) - vz7: files-reg: migrate "spfs" files as ghost-ones (Stanislav Kinsburskiy ) - vz7: files-reg: conditionally dump content in dump_ghost_file (Stanislav Kinsburskiy ) - vz7: files-reg: split create_ghost (Stanislav Kinsburskiy ) - vz7: scripts: remove obsolete scripts (Stanislav Kinsburskiy ) - vz7: Makefile: install spfs-release-replace.sh script (Stanislav Kinsburskiy ) (#PSBM-49726) - vz7: util: mkdirname helper introduced (Stanislav Kinsburskiy ) - vz7: dump: Show task comm early - vz7: spfs: do not tolerate file existence on creation (Stanislav Kinsburskiy ) - vz7: spfs: fix freeze cgroup path discovery (Stanislav Kinsburskiy ) - vz7: cgroup: new_cg_root_get helper introduced (Stanislav Kinsburskiy ) - vz7: criu: remove NFS unlinked files restriction (Stanislav Kinsburskiy ) - vz7: files-reg: migrate spfs unlinked file as "link remap" objects (Stanislav Kinsburskiy ) - vz7: files-reg: migrate spfs file as "link remap" objects (Stanislav Kinsburskiy ) - vz7: spfs: pass mount ID instead of namespace descriptor to spfs_create_file (Stanislav Kinsburskiy ) - vz7: spfs: explicitly pass size and mode to spfs_create_file (Stanislav Kinsburskiy ) - vz7: link_remap: do not create excessive links for a single file (Stanislav Kinsburskiy ) - vz7: mount: forbid dumping overmounted NFS (Stanislav Kinsburskiy ) (#PSBM-48620) - vz7: zdtm: add a new test to check netlink sockets with queued data (Andrew Vagin ) - vz7: netlink: restore data in a received queue for netlink sockets (Andrei Vagin ) (#PSBM-28386) - vz7: sk-queue: add an ability to dump addresses for messages (Andrew Vagin ) - vz7: check: check whether NETLINK_REPAIR is supported or not (Andrew Vagin ) - vz7: netlink: request flags for netlink sockets (Andrew Vagin ) - vz7: files-reg: forbid to dump unlinked NFS files (Stanislav Kinsburskiy ) - vz7: proc_parse: forbid dumping NFS remote locks (Stanislav Kinsburskiy ) - vz7: files-reg: create spfs file in case of parent mount is SPFS (Stanislav Kinsburskiy ) - restore: pidfile -- write before post-restore stage (#PSBM-90289) - log: Write more details in write_pidfile - vz7: compel -- Add support for vz7 specific cpuid masking (#PSBM-47748 #PSBM-49423) - vz7: tty: Save task current terminal if present - vz7: files: Allow to dump ploopX files opened (#PSBM-49723) - vz7: spfs: remove "ns_list" option from "replace" command as obsolete (Stanislav Kinsburskiy ) - vz7: scripts: remove bogus command substitution in nfs-ports-allow.sh (Eugene Kolomeetz ) (#PSBM-44207) - vz7: scripts: restart all systemd automount services (Eugene Kolomeetz ) (#PSBM-46672) - vz7: util: Add cr_set_root/cr_restore_root helpers (Andrew Vagin ) - vz7: spfs: do not treat existent file as error in create_reg_file (Stanislav Kinsburskiy ) - vz7: scripts: spfs-release-replace.sh introduced (Stanislav Kinsburskiy ) - vz7: criu: spfs -- Fixup various nits for NFS sake - vz7: nfs: build -- Add install of spfs-change-mode.sh and nfs-ports-allow.sh - vz7: mounts: mount spfs instead of NFSv3 and NFSv4 (Stanislav Kinsburskiy ) (#PSBM-26967) - vz7: mount: Add support for NFSv4 (Stanislav Kinsburskiy ) - vz7: protobuf/mnt.proto: NFSv4 type added (Stanislav Kinsburskiy ) - vz7: mount: add support for NFS (Stanislav Kinsburskiy ) - vz7: protobuf/mnt.proto: NFS type added (Stanislav Kinsburskiy ) - vz7: spfs -- Mitigate sock_seqpacket_connect - vz7: spfs -- Mitigate spfs_manager_socket_path - vz7: mount: add support for SUNRPC Pipefs (Stanislav Kinsburskiy ) - vz7: protobuf/mnt.proto: RPC Pipefs type added (Stanislav Kinsburskiy ) - vz7: scripts: allow-nfs-ports.sh added (Stanislav Kinsburskiy ) - vz7: action-scripts: ACT_POST_NET_LOCK stage added (Stanislav Kinsburskiy ) - vz7: scripts: spfs-change-mode.sh added (Stanislav Kinsburskiy ) - vz7: spfs: delayed mounts facility introduced (Stanislav Kinsburskiy ) - vz7: cr-restore: declare SPFS_MNGR_SK service fd (Stanislav Kinsburskiy ) - vz7: filemap: collect mapped file fs type (Stanislav Kinsburskiy ) - vz7: aio: Don't fail if kernel does not support aio wait (Kirill Tkhai ) (#PSBM-42488) - vz7: Wait aio pending requests (Kirill Tkhai ) (#PSBM-42488)- spfs: Retrieve NFS server IP address from mountinfo (Pavel Vokhmyanin ) (#PSBM-94209 #PSBM-92070) - Revert "spfs: Retrieve NFS server IP address from mountinfo" - Revert "script/spfs: resolve dns to ip for iptables utility" (Pavel Tikhomirov )- spfs: Retrieve NFS server IP address from mountinfo (Pavel Vokhmyanin ) (#PSBM-92070)- script/spfs: resolve dns to ip for iptables utility (Pavel Tikhomirov ) (#PSBM-92070)- Revert "spfs: Retrieve NFS server IP address from mountinfo" (#PSBM-93882)- build: Makefile.version - net: add support for "net/core/*" sysctls (Jan Dakinevich ) (#PSBM-91415) - spfs: Retrieve NFS server IP address from mountinfo (Pavel Vokhmyanin ) (#PSBM-92070) - sk-inet: udp -- Don't fail on calling shutdown on disconnected socket (#PSBM-93461) - files: make rst_remaps shmalloc'ed to see it's change in other process (Pavel Tikhomirov ) (#PSBM-93511) - files: split remaps list to two one on dump one on restore (Pavel Tikhomirov ) (#PSBM-93511)- sk-inet: udp -- Don't fail on calling shutdown on disconnected socket (#PSBM-93461)- files: make rst_remaps shmalloc'ed to see it's change in other process (Pavel Tikhomirov ) (#PSBM-93511) - files: split remaps list to two one on dump one on restore (Pavel Tikhomirov ) (#PSBM-93511)- spfs: Fix typo in get_spfs_mngr_sock (#PSBM-93663)- spfs: When fetching sfd provide a copy of it (#PSBM-93663)- spfs: Return proper service fd from install_service_fd call (#PSBM-93462)- mount: fix order of mnt namespaces in united mount tree (Pavel Tikhomirov ) (#PSBM-93305)- test: Add unlink_dir test (Cyrill Gorcunov ) - files: Rework clean_one_remap to order ghost dirs removal (Cyrill Gorcunov ) (#PSBM-91524) - zdtm: use --check-mounts by default (Pavel Tikhomirov ) (#PSBM-86686) - rpc: Add interface for --check-mounts option (Pavel Tikhomirov ) (#PSBM-86686) - mount: check that mounts tree restored without any hidden problems (Pavel Tikhomirov ) (#PSBM-86686) - mount: rework mount tree build step on restore (Pavel Tikhomirov ) (#PSBM-86686) - ns/restore/image: do not read namespace images for non-namespaced case (Pavel Tikhomirov ) (#PSBM-86686) - ns: make rst_new_ns_id static (Pavel Tikhomirov ) (#PSBM-86686) - mount: remove useless check in populate_mnt_ns (Pavel Tikhomirov ) (#PSBM-86686)- epoll: Fix qsort args passing- test: epoll -- Add migrated targets (Cyrill Gorcunov ) - epoll: Add suppport for migrated targets (Cyrill Gorcunov ) (#PSBM-90012) - epoll: Fix typo in message when no target found (Cyrill Gorcunov ) - epoll: Drop duped and closed targets (Cyrill Gorcunov ) - test: epoll -- Add file inherited case (Cyrill Gorcunov ) - epoll: Ignore migrated targets (Cyrill Gorcunov ) - epoll: Defer queued epolls to write at the end of checkpoint (Cyrill Gorcunov ) - epoll: Eliminate potential variable shadowing (Cyrill Gorcunov ) - Revert "test: epoll -- Add migrated target test" - Revert "epoll: Eliminate potential variable shadowing" - Revert "epoll: Defer queued epolls to write at the end of checkpoint" - Revert "epoll: Drop duped and closed targets" - Revert "epoll: Add ability to restore migrated targets" - Revert "epoll: Save virtual pid for targets" - Revert "epoll: Fix typo in flush_eventpoll_dinfo_queue"- restorer: add additional debugging on clone errors (Pavel Tikhomirov ) (#PSBM-92904) - epoll: Fix typo in flush_eventpoll_dinfo_queue (#PSBM-92672)- early_init: Force to unlimit files on early init (#PSBM-92451)- Revert "test: Add unlink_dir test" - Revert "files: Rework clean_one_remap to order ghost dirs removal"- test: Add unlink_dir test (Cyrill Gorcunov ) - files: Rework clean_one_remap to order ghost dirs removal (Cyrill Gorcunov ) (#PSBM-91524) - files: Add file_remap_init (Cyrill Gorcunov ) - util: Add mkdirpat_precise helper (Cyrill Gorcunov ) - Revert "files: Order ghost directories enties" - Revert "test: Add unlink_dir test" - test: sockets_dgram -- Don't use /tmp (Cyrill Gorcunov )- zdtm/mntns_deleted: check if c/r is fine with deleted directory ancestor (Pavel Tikhomirov ) (#PSBM-77022) - mount: temporary create needed ancestor directories for deleted root (Pavel Tikhomirov ) (#PSBM-77022)- test: Add unlink_dir test (Cyrill Gorcunov ) - files: Order ghost directories enties (Cyrill Gorcunov ) (#PSBM-91524) - arch,x86: Investigate OSPKE status when handling PKU (#PSBM-91098)- ve: tty -- Preallocate space for itty pool (#PSBM-90662) - ve: tty -- Eliminate possible race in ve_itty_insert - ve: tty -- Drop leftover comment - ve: tty -- Investigate master fds with a mutex taken (#PSBM-90662) - ve: rst,files -- Guard list with mutex (#PSBM-90662) - ve: tty -- Add tty-inherit test - ve: tty -- Add support of tty inheritance, v2 (#PSBM-76490) - sockets: Don't exit with error if raw module unloaded (Cyrill Gorcunov ) - sockets: Be more verbose in collect_err (Cyrill Gorcunov ) - net: libnetlink -- Drop ERROR keyword from default handler (Cyrill Gorcunov ) - net: sockets -- Don't spam log with known errors (Cyrill Gorcunov ) - net: libnetlink -- Call error handler instead of unconditional error message (Cyrill Gorcunov ) - test: epoll -- Add migrated target test - epoll: Save virtual pid for targets - epoll: Add ability to restore migrated targets (#PSBM-90012) - epoll: Drop duped and closed targets - epoll: Defer queued epolls to write at the end of checkpoint - Revert "epoll: Ignore migrated tfds on checkpoint" - Revert "test: epoll -- Add file inherited case" - zdtm.py: also check that mount flags are restored correct (Pavel Tikhomirov ) (#PSBM-82991) - zdtm: test dumping file on overmounted mount fails (Pavel Tikhomirov ) (#PSBM-82991) - files: open files on overmounted mounts are not supported (Pavel Tikhomirov ) (#PSBM-82991) - zdtm: ghost on readonly fs (Pavel Tikhomirov ) (#PSBM-82991) - mount: remount ro mounts writable before ghost-file restore (Pavel Tikhomirov ) (#PSBM-82991) - mount: save the result of mnt_is_overmounted (Pavel Tikhomirov ) (#PSBM-82991) - mount: remove unused argument of do_restore_task_mnt_ns (Pavel Tikhomirov ) (#PSBM-82991) - files: don't add double slash to path in create_ghost (Pavel Tikhomirov ) - vz7: Add Makefile.version - crtools: Show command line in log - Rebase to vanilla criu v3.11- restore: pidfile -- write before post-restore stage (#PSBM-90289) - Revert "restore: pidfile -- Write from ve0 context"- restore: pidfile -- Write from ve0 context (#PSBM-90289)- log: Write more details in write_pidfile - files: Select proper master fd when collecting fd (#PSBM-90293) - pstree: Introduce pstree_pid_cmp helper- test: epoll -- Add file inherited case - epoll: Ignore migrated tfds on checkpoint (#PSBM-89961) - test: netns_sub_veth -- Disable for a while - epoll: Eliminate potential variable shadowing (#PSBM-89961)- restore: Fix hang if root task is waiting on zombie (#PSBM-89830) - restore: Don't ignore errors on wait in restore_one_zombie - restore: Add more detailed log in wait_exiting_children - restore: zombie -- Add more detailed log on signals- raw: Don't carry zero options into the image (#PSBM-89822)- inet: raw -- Add compatibility layer for old images - inet: More readable content in show methods (Cyrill Gorcunov ) - sockets: Improve helpers to make sockets more readable (Cyrill Gorcunov ) - net: Add prefixes for better logging (Cyrill Gorcunov ) - inet: raw -- Add socket-raw test (Cyrill Gorcunov ) - inet: raw -- Add checkpoint and restore of raw sockets - inet: raw -- Split lookup_socket helper (Cyrill Gorcunov ) - inet: raw -- Add preloading raw_diag module (Cyrill Gorcunov ) - inet: raw -- Add raw sockets into can_dump_inet_sk (Cyrill Gorcunov ) - inet: raw -- Skip IP_FREEBIND for ipv6 SOCK_RAW sockets (Kirill Tkhai ) - inet: raw -- Prepare gen_uncon_sk for raw sockets (Cyrill Gorcunov ) - inet: raw -- Reuse already known family and type in gen_uncon_sk (Cyrill Gorcunov ) - inet: raw -- Fetch socket type and check for being raw in can_dump_ipproto (Cyrill Gorcunov ) - inet: raw -- Check for kernel diag module support (Cyrill Gorcunov ) - inet: raw -- Add constants needed to fetch properties of a raw socket (Cyrill Gorcunov ) - compiler: Add NELEMS_AS_ARRAY helper (Cyrill Gorcunov )- mount: cr_pivot_root -- Try temp directory first (#PSBM-89582) - mount: Fix typo in message - ve: Add helpers for debug sake- fown: test -- Improve error messaging in file_fown_dead - fown: test -- Update file_own_dead to test O_PATH case - fown: Don't fail on dumping files opened wit O_PATH (#PSBM-89680) - fown: test -- Add file_fown_dead - fown: Dont fail if owner is a dead pid (#PSBM-88336) - .gitignore: Add patches/- ve: tty -- Add tty-inherit test - ve: tty -- Add support of tty inheritance, v2 (#PSBM-76490) - ve: tty -- Add more detailed debug print in ctty verification - ve: tty -- Save pid of a task which setups a controlling terminal - ve: tty -- Save tty_pgrp in process tree upon read - Revert "ve: tty -- Add support of tty inheritance" - Revert "ve: tty -- Fill ctty deps from the root task" - Revert "ve: tty -- Add tty-inherit test" - unix: Don't forget to restore original errno - pr-warn: Add missing newlines- ve: tty -- Fill ctty deps from the root task (#PSBM-89336)- image: Add missing newline into messages - zdtm: check criu restore with --auto-dedup (Pavel Tikhomirov ) (#PSBM-89056) - image/dedup: use userns_call to be able to open images for write (Pavel Tikhomirov ) (#PSBM-89056) - Punch holes in input files when restoring anonymous non-shared memory if --auto-dedup is enabled. (Pawel Stradomski ) (#PSBM-89056)- cr_pre_dump_finish: Fix ignorance of error upon enter (#PSBM-89231) - compel: Don't forget to zap remote_map pointer after release (#PSBM-89231)- ve: tty -- Add tty-inherit test - ve: tty -- Add support of tty inheritance (#PSBM-76490) - ve: tty -- Don't stuck if several ctty opened - ve: tty -- Save virtual group id - ve: tty -- Collect real ppid, pgid, sid on dump - ve: tty -- Add kdat entry to test if wa have ability to restore inhertied tty - x86: cpu -- Don't fail if member is not present in image (#PSBM-89215)- unix: Disable switching mount namespace (#PSBM-89126) - vz7: files-reg -- Show which exactly file can't be created - crtools: Show command line in log - unix: Don't forget to close ns descriptor on error path- test: tun -- Check if names are not clashed in different ns (#PSBM-88851) - tun: Add compatibility with old images (#PSBM-88851)- tun: Add support for multiple net ns (Cyrill Gorcunov ) - tun: Set net ns before opening master (Cyrill Gorcunov ) (#PSBM-88714) - tun: Define log prefix (Cyrill Gorcunov ) - test: sk-unix-mntns -- Check for unshare code - test: tun_ns -- Make sure unshare passed - test: bind-mount-unix -- Implement real connect - unix: unix_prepare_bindmount -- Allow to connect via relative name (#PSBM-88274) - unix: unlink_sk -- Don't unlink bindmounted sockets - unix: bind_unix_sk -- Add ability to skip waiters notification (#PSBM-88274) - unix: make_socket -- Break connected pair if requested - unix: make_socket -- Add more detailed logs - unix: break_connected -- Add a log recod - unix: bindmount -- Show details about queuer- Revert "vz7: scripts: use absolute binaries paths nfs-ports-allow.sh" (Pavel Tikhomirov ) (#PSBM-88499) - nfs: when allowing ports in CT netns on dump use host's iptables binary (Pavel Tikhomirov ) (#PSBM-88499) - python-criu: Add dependency on python-six (#PSBM-88425)- inet: raw -- Skip IP_FREEBIND for ipv6 SOCK_RAW sockets (Kirill Tkhai ) (#PSBM-88262) - test: sk-unix-ucred -- Make compatible with gcc 8- vz7: image -- Add compat layer for Core entry (#PSBM-88238) - unix: typo fix (Andrei Vagin ) - unix: check that a length of a socket is less than UNIX_PATH_MAX (Andrei Vagin ) - compel: Make sure the hostprog is built early (Cyrill Gorcunov ) - compel: Move lib files into lib-y (Cyrill Gorcunov ) - nmk: Make collect-deps to be more precise about targets (Cyrill Gorcunov ) - nmk: Add obj and lib deps gathering via helpers (Cyrill Gorcunov ) - nmk: Add collect-target-deps helper (Cyrill Gorcunov ) - nmk: Add collect-hostprogs-deps helper (Cyrill Gorcunov ) - nmk: Align continuations (Cyrill Gorcunov ) - nmk: Drop unneeded ld_flags (Cyrill Gorcunov ) - nmk: Gather reserved vars on top of build (Cyrill Gorcunov ) - nmk: Filter out already seen targets from collect-deps (Cyrill Gorcunov ) - nmk: Don't include deps on mrproper (Cyrill Gorcunov )- x86: cpu -- Require compatibility on instruction level by default (#PSBM-88119) - x86: cpu -- Use native uint_x types - Rebase to vanilla criu v3.10- mount: fix segmentation fault in can_mount_now on no mnt_master (Pavel Tikhomirov ) (#PSBM-86978)- unix: Add compatibility with u7 images (#PSBM-86861) - unix: image -- Restore mnt_id index - zdtm: temporary make mnt_ext_auto and private_bind_propagation noauto (Pavel Tikhomirov ) (#PSBM-85251) - dump/files: remove a leftover from dead_pid_conflict (Pavel Tikhomirov ) (#PSBM-55217) - mount: fix regression where open_mountpoint failed on readonly fs (Pavel Tikhomirov )- zdtm: add a test for non-uniform shares (Pavel Tikhomirov ) - mount: remove validate_shared as now we allow non-uniform sharings (Pavel Tikhomirov ) (#PSBM-78703) - mount: use propagation groups in propagate_mount replacing excess search (Pavel Tikhomirov ) - mount: improve can_mount_now using propagation groups (Pavel Tikhomirov ) - mount: put all mounts which propagate from each other to a list (Pavel Tikhomirov ) - zdtm: check children of shared slaves restore (Pavel Tikhomirov ) - mount: fix can_mount_now to wait children of master's share properly (Pavel Tikhomirov ) - zdtm: add a test for unsupported children collision (Pavel Tikhomirov ) - mount: add helper to check unsupported children collision (Pavel Tikhomirov )- inet: raw -- Storm the test with all protos (#PSBM-86357) - inet: raw -- Lookup for collected bit on non-raw sockets only (#PSBM-86357)- zdtm/static: add a test to check epoll file descriptors (Andrei Vagin ) - epoll: Use epoll queues to speedup multiple duped fds (#PSBM-86295) - files: make_gen_id -- Promote to be general helper (Cyrill Gorcunov ) - epoll: Add kid_lookup_epoll_tfd helper (Cyrill Gorcunov ) - epoll: Exit with error if tfd is missing (Cyrill Gorcunov ) - epoll: Save fields of target files in eventpoll_tfd_entry (Cyrill Gorcunov ) - epoll: Add kcmp_epoll check - epoll: Align members in assignments (Cyrill Gorcunov ) - epoll: Print efd id when showing targets (Cyrill Gorcunov ) - epoll: Show tfd in decimal form (Cyrill Gorcunov ) - epoll: Add support for multiple duped fds (Cyrill Gorcunov ) - Revert "epoll: Add support for multiple duped fds" - Revert "epoll: Drop unneeded variable from cycle" - Revert "test: eventfs00 -- Extend to test duped fd" - Revert "epoll: Fix typo in var type"- epoll: Fix typo in var type (#PSBM-86256)- Revert "mount: don't lose shared options for bind mounts"- fdstore: Unlimit fdstore queue on start (#PSBM-86038) - Revert "fdstore: Print detailed error when queue is exhausted" - test: eventfs00 -- Extend to test duped fd (Cyrill Gorcunov ) - epoll: Drop unneeded variable from cycle (Cyrill Gorcunov ) - epoll: Add support for multiple duped fds (#PSBM-60161) - Revert "test: eventfs00 -- Extend to test duped fd"- fdstore: Print detailed error when queue is exhausted (Cyrill Gorcunov ) (#PSBM-86038) - zdtm: shared options should not be lost for bind mounts (Pavel Tikhomirov ) - zdtm.py: also check that sharing options are restored for mounts (Pavel Tikhomirov ) - mount: don't lose shared options for bind mounts (Pavel Tikhomirov ) (#PSBM-85251) - unix: test,sk-unix01 -- Fix data sending for be machines (Cyrill Gorcunov )- net: veth -- Don't force to create master peer index if no nsid (#PSBM-85558) - net: Add net log prefix- test: eventfs00 -- Extend to test duped fd (Cyrill Gorcunov ) - epoll: Use kcmp to find proper target file (Cyrill Gorcunov ) (#PSBM-60161) - epoll: Use real file transferred for target fds check (Cyrill Gorcunov ) - epoll: Pass drained fds to dump_one_file - epoll: kdat -- Check if we have KCMP_EPOLL_TFD support - kcmp: Add epoll definitions (Cyrill Gorcunov ) - kcmp: Drop empty line at EOF (Cyrill Gorcunov ) - kcmp: Beautify kcmp-ids.h (Cyrill Gorcunov ) - kcmp: Cleanup sources (Cyrill Gorcunov ) - Revert "vz7: epoll -- Dont fail on dup'ed fd restore" - Revert "vz7: epoll -- Use real file transferred for target fds check"- inventory: save dump_uptime for criu dump if track_mem is set (Andrei Vagin ) (#PSBM-85936) - zdtm: check that pid-reuse does not break iterative memory dump (Pavel Tikhomirov ) (#PSBM-67502) - zdtm/lib: add pre-dump-notify test flag (Pavel Tikhomirov ) - memory: don't use parent memdump if detected possible pid reuse (Pavel Tikhomirov ) (#PSBM-67502) - inventory: add a helper to get entry of parent pre-dump (Pavel Tikhomirov ) (#PSBM-67502) - inventory: save uptime to know when dump had happened (Pavel Tikhomirov ) (#PSBM-67502) - parse: add a helper to obtain an uptime (Pavel Tikhomirov ) (#PSBM-67502) - Revert "parse: add a helper to obtain an uptime" - Revert "stats: save uptime to know when dump had happened" - Revert "stats: add a helper to get stats of parent pre-dump" - Revert "memory: don't use parent memdump if detected possible pid reuse" - Revert "mem: Fix typo in detect_pid_reuse" - Revert "mem: pid-reuse -- Don't fail if no stat image present" - Revert "pid-reuse: temporary use stat file from cwd if has no parent stats" - x86: cpu -- Proceed even if xsavec detected for dev reason (Cyrill Gorcunov )- unix: Add bind-mount-unix test case (Cyrill Gorcunov ) - unix: Add support for bindmounted sockets (#PSBM-82616) - unix: Move shared data init into early stage (Cyrill Gorcunov ) - unix: Collect bindmounted unix sockets into own list (Cyrill Gorcunov ) - unix: Collect images before opening mountpoints (Cyrill Gorcunov ) - unix: Collect bindmounted unix sockets - unix: image -- Move uflags into enum - unix: image -- Shift mnt_id index (Cyrill Gorcunov ) - zdtm: Add sstrncpy helper (Cyrill Gorcunov )- x86: cpu -- Show which exactly features are failing in fpu capability mode (Cyrill Gorcunov ) - x86: cpu -- Use rt information since it might we filtered - x86: cpu -- Add ability to ignore xsaves (Cyrill Gorcunov ) - compel: cpu -- Add ability to clear features (Cyrill Gorcunov ) - x86: cpu -- Report when unsupported compact xsave frame detected (#PSBM-83611) - x86: cpu -- Check for xsaves bit on cpu validation (Cyrill Gorcunov ) - x86: cpu -- Show additional xsave info on init (Cyrill Gorcunov ) - x86: cpu -- Add new instruction bits to check (Cyrill Gorcunov ) - x86: cpu -- Sync bits with kernel - crit: Show cpuinfo image - x86: Use uint_x types in rt_sigcontext (Cyrill Gorcunov ) - vz7: net -- Add missing newline into debug message- vz7: Move cpu_init into early_init (#PSBM-85265)- unix: test -- Add sk-unix01 test (#PSBM-82615) - unix: Improve debug message when collecting socket (Cyrill Gorcunov ) - unix: Add support of ghost sockets (#PSBM-82615) - unix: Use decimal format for inode printing (Cyrill Gorcunov ) - unix: Rename unlink_stale to unlink_sk (Cyrill Gorcunov ) - unix: Move unix_resolve_name declaration on top - sk-unix: don't pass a negative value to close() (Andrei Vagin ) - parasite: Rename misnamed nr_pages (Dmitry Safonov ) - zdtm: mount tmpfs into /run in a test root (Andrei Vagin ) - fs: take into account that cr_system overrides standard descriptors (Andrei Vagin ) - net: workaround a problem when iptables can't open /run/xtables.lock (Andrei Vagin ) - zdtm: create /run in a test root (Andrei Vagin ) - criu: fix 'criu --version' - service: don't cache a service descriptor - files: drop O_TMPFILE from file descriptor flags (Andrei Vagin ) - criu: print criu and kernel versions from log_init() - criu: initialize logging for libraries from log_set_loglevel() - zdtm: check an exit code of a straced restore (Andrey Vagin ) - zdtm.py: fix a logic about determing a test flavor in a error case (Andrei Vagin ) - unix: split dump_external_sockets() for readability (Andrey Vagin ) - unix: fix an error code in bind_unix_sk() - unit: don't check ui->ue->name.len twice in bind_unix_sk() (Andrey Vagin ) - unix: split bind_unix_sk() for readability (Andrey Vagin ) - unix: restore sockets on correct mount points - unix: resolve a socket file when a socket descriptor is available - kerndat: check the SIOCUNIXFILE ioctl for unix sockets - unix: handle sockets with USK_CALLBACK as external sockets (Andrey Vagin ) - sockets: Add sock_type_name and tcp_state_name helpers (Cyrill Gorcunov ) - unix: Unify id and ino prints (Cyrill Gorcunov ) - seccomp: Don't exit from __export_restore_thread (Cyrill Gorcunov ) - seccomp: Use own seccomp_metadata_t type (Cyrill Gorcunov ) - action-scripts: check a return code of get_service_fd - kdat: fill kdat by zero-s before initializing it (Andrei Vagin )- files: Don't forget on stipping deleted postfix on linked files (#PSBM-84731)- unix: Improve init_unix_sk_info - unix: Unify printings on peer open (Cyrill Gorcunov ) - unix: Print reverted dir info if only directory provided - unix: Don's spam with warning if nothing to unlink (Cyrill Gorcunov ) - unix: Adjust unix_desc_ops members - unix: Adjust unix_sk_info members - unix: Use uint32_t instead of u32 - unix: Use one word log prefix (Cyrill Gorcunov ) - arch, ppc64: Add missing atomic_dec_and_test helper (Cyrill Gorcunov ) - seccomp: Fix building issue on recent kernels (Cyrill Gorcunov ) - mem: Fix typo in detect_pid_reuse - seccomp: Fix typo in collect_filters - tun: don't leak a file descriptor (Andrei Vagin ) - pie/log: print space after timestamp (Andrei Vagin ) - compel/log: increase a max line length (Andrey Vagin ) - sfd: Don't forget to test sfd_map when closing old fds (#PSBM-83892)- swrk: Don't forget to setup loggin into compel (#PSBM-84029) - cpu: x86 -- Call for cpu_init before kerndat_init (#PSBM-84029)- seccomp: Move changed ptrace flags setup after creds (#PSBM-84198)- seccomp: test,seccomp_filter_threads -- Fix compilation on old distros - seccomp: test -- Open in readonly mode (Cyrill Gorcunov ) - seccomp: test,seccomp_filter_threads -- Use multiple threads (Cyrill Gorcunov ) - seccomp: Dont forget to suspend filtering on threads (#PSBM-78762)- files: define O_TMPFILE (Pavel Tikhomirov ) (#PSBM-83713)- seccomp: test -- Add seccomp_filter_threads (Cyrill Gorcunov ) - seccomp: Add engine to checkpoint per-thread seccomp chains (#PSBM-78762) - seccomp: Add engine to restore per-thread seccomp chains (#PSBM-78762) - seccomp: Fetch seccomp flags if kernel provides (Cyrill Gorcunov ) - seccomp: Move seccomp_info into seccomp.h (Cyrill Gorcunov ) - seccomp: Define log prefix (Cyrill Gorcunov ) - seccomp: compel -- Add PTRACE_SECCOMP_GET_METADATA definition (Cyrill Gorcunov )- pid-reuse: temporary use stat file from cwd if has no parent stats (Pavel Tikhomirov ) (#PSBM-82864)- files: fix clone_service_fd overlap handling (Pavel Tikhomirov ) (#PSBM-83472)- netlink: Change NETLINK_REPAIR number (#PSBM-83415) - files: Fail dump if dump_one_file() fails (Andy Tucker )- sfds: Fix UB in choose_service_fd_base due to calling __builtin_clz(0) (Radoslaw Burny ) - files: Don't fail on cgroup directories mode change (Cyrill Gorcunov ) (#PSBM-83154)- files: Don't fail on cgroup directories mode change (#PSBM-83154)- zdtm: Add tun_ns test (Andrew Vagin ) - net: Dump tun device net id in img (Andrew Vagin ) - tun: Check that net ns of tun device is dumped - tun: Check tun has ioctl() cmd SIOCGSKNS - net: Extrack ioctl() call from kerndat_socket_netns() - test: unlink_multiple_largefiles -- Make noauto (Cyrill Gorcunov ) - zdtm: Add a test to check if we can C/R ghost files with no parent dirs. (Vitaly Ostrosablin ) - restore: Do not init fdstore twice - sk-unix: Use unsigned values for inodes (Cyrill Gorcunov ) (#PSBM-82945) - vz: test -- Make socket_udp-corked use different port (Vitaly Ostrosablin )- mem: pid-reuse -- Don't fail if no stat image present (Pavel Tikhomirov ) (#PSBM-82806)- vz: pipes -- Restore pipe size in sync mode (#PSBM-82796) - unix: Fix nil dereference in find_queuer_for (#PSBM-82796)- inet: raw -- Add simple socket-raw test (Cyrill Gorcunov ) - inet: raw -- Add restore of raw sockets (Cyrill Gorcunov ) (#PSBM-82683) - inet: raw -- Dump raw sockets options (Cyrill Gorcunov ) - inet: raw -- Add raw sockets into can_dump_inet_sk (Cyrill Gorcunov ) - inet: raw -- Prepare gen_uncon_sk for raw sockets (Cyrill Gorcunov ) - inet: raw -- Reuse already known family and type in gen_uncon_sk (Cyrill Gorcunov ) - inet: raw -- Fetch socket type and check for being raw in can_dump_ipproto (Cyrill Gorcunov ) - inet: raw -- Check for kernel diag module support - inet: raw -- Add constants needed to fetch properties of a raw socket (Cyrill Gorcunov ) - Revert "vz7: sk-inet: Add initial support for raw sockets" - Revert "vz7: test: Add simple socket-raw test" - Revert "vz: test,socket-raw -- Disable for a while" - memory: don't use parent memdump if detected possible pid reuse (Pavel Tikhomirov ) (#PSBM-67502) - stats: add a helper to get stats of parent pre-dump (Pavel Tikhomirov ) (#PSBM-67502) - stats: save uptime to know when dump had happened (Pavel Tikhomirov ) (#PSBM-67502) - parse: add a helper to obtain an uptime (Pavel Tikhomirov ) (#PSBM-67502)- vz: net: Skip IP_FREEBIND for ipv6 SOCK_RAW sockets (Kirill Tkhai ) (#PSBM-82558)- seccomp: test -- Add seccomp_filter_threads (Cyrill Gorcunov ) - seccomp: Allow to dump thread with different seccomps (Cyrill Gorcunov ) - seccomp: Drop no longer needed comment (Cyrill Gorcunov ) - seccomp: Drop filter mode on tsync propagation (Cyrill Gorcunov ) - seccomp: dump_seccomp_filters -- Be ready for chains absence (Cyrill Gorcunov ) - seccomp: collect_filters -- Drop unneeded parent (Cyrill Gorcunov ) - seccomp: Always setup chain flags (Cyrill Gorcunov ) - seccomp: Try use tsync flag if possible (Cyrill Gorcunov ) - seccomp: Add restore of per-thread filters (#PSBM-78762) - seccomp: Don't use BUG_ON in dump_seccomp_filters - seccomp: Rename last_filter to img_filter_pos - seccomp: Speedup entry cleaning - seccomp: Add support of per thread filters on dump - seccomp: Produce thread core records - seccomp: Drop leftover member from pstree - seccomp: Untaggle entries from process_tree - seccomp: Move filter position into seccomp_entry - seccomp: images,core -- Move seccomp data into per-thread origin - seccomp: Use tid_real member name - seccomp: Drop pi_creds from dmp_info - seccomp: Drop pstree_item from find_inherited - seccomp: Define prefix for logging - seccomp: Use collected seccomp_entry to figure out if filter is present - seccomp: Collect seccomp data on per-thread basis - seccomp: Move seccomp_info into seccomp.h - seccomp: Fetch seccomp flags if kernel provides - compel: seccomp -- Add PTRACE_SECCOMP_GET_METADATA data - eventpoll: Take into account number of semi-valid fds when dumping (#PSBM-81809)- eventpoll: Take into account number of semi-valid fds when dumping (#PSBM-81809) - check: Include sys/mount.h before linux/aio_abi.h - log: pr_warn_once -- Fix formatting- version: Lift up version to 200 - tty: ctty -- Add support for multiple inherited ctty opened (#PSBM-76490) - tty: Move session lookup leader into find_session_leader - kdat: Add test for ctty inheritance - tty: Fetch ctty index based on sid - tty: Add is_ctty helper - tty: Don't check for group inheritance - check: Include sys/mount.h before linux/aio_abi.h - log: pr_warn_once -- Fix formatting- inotify: Use fast way of obtaining desired watch descriptor number (#PSBM-81411) - kdat: Add check for inotify() INOTIFY_IOC_SETNEXTWD cmd (#PSBM-81411)- inotify: Fix open_*notify_fd() never fails - inotify: Do not DDOS by debug message on restore watch descriptor- files: change error to warning in linkat_hard error path (Pavel Tikhomirov ) - zdtm: check ghost restores on readonly fs if it is also a ghost in other writable bind (Pavel Tikhomirov ) - files: make convert_path_from_another_mp always return relative path (Pavel Tikhomirov ) (#PSBM-72351)- files-reg: Prepare for sysfs entries mode change (#PSBM-80585)- vz7/cgroup: fix ifpriomap skip (Pavel Tikhomirov )- zdtm: improve tempfs_overmounted test (Pavel Tikhomirov ) - mount: do remaps for child-overmount of another overmount (Pavel Tikhomirov ) - mount: fix try_remap_mount (Pavel Tikhomirov ) - mount: fix mnt_resort_siblings to work as described (Pavel Tikhomirov ) - zdtm: now tempfs_overmounted will pass so remove crfail (Pavel Tikhomirov ) - mount: make open_mountpoint handle overmouts properly (#PSBM-57362) - mount add umount_overmounts helper to make mount visible (Pavel Tikhomirov ) - mount: add __umount_children_overmounts helper to make mount visible (Pavel Tikhomirov ) - mount: add mnt_is_overmounted helper to check mount visibility (Pavel Tikhomirov )- restore: Split restore_one_helper() and wait exiting zombie children- Revert "vz7: bc, restore -- Check for failcounters on error" (#PSBM-80056)- arch, x86: int80 -- Clobber all rX registers (#PSBM-80095)- spfs: start SPFS manager in containers network namespace (Stanislav Kinsburskiy ) (#PSBM-79733)- spfs: switch mounts mode to STUB after root yard depopulation (Stanislav Kinsburskiy ) - spfs: return duplicated socket from usernsd (Stanislav Kinsburskiy ) (#PSBM-79462) - spfs: improve prints in spfs_set_mode() and spfs_release_replace() (Stanislav Kinsburskiy ) - spfs: improve SPFS manager start debug and error output (Stanislav Kinsburskiy ) - spfs: remove redundant spfs_service_fd() helper (Stanislav Kinsburskiy ) - spfs: improve error and debug output for spfs_mount() (Stanislav Kinsburskiy ) - spfs: introduce request_spfs_mngr_sock)() helper (Stanislav Kinsburskiy )- criu: Don't fail if ghost file has no parent dirs. (Vitaly Ostrosablin )- tty: Use mnt_id for first lookup of toplevel devpts (#PSBM-78460) - ns: Set hookups for all namespaces - ns: Set nested namespaces hookups- Revert "vz7: sfd: Lift up own fd limit on bootup" (#PSBM-67194) - vz7: service: Allow keep_open flag for a WAIT_PID command (#PSBM-58198) - test: static,aio01 -- Use proper type for context - test: sigaltstack -- Drop useless test of a leader stack (#PSBM-76744)- Revert "restore/cgroup: make root task enter cgroups before setup-namespaces action" (#PSBM-76648 #PSBM-76609) - soccr: c/r ipv6 sockets which handles ipv4 connections (#PSBM-72350)- soccr: c/r ipv6 sockets which handles ipv4 connections (#PSBM-72350)- restore/cgroup: make root task enter cgroups before setup-namespaces action (#PSBM-64756)- sk-inet: restore a value of SO_REUSEADDR (#PSBM-75515)- compel: x86,compat -- Make sure mmap fits compat task size (#PSBM-76379) - compel: Do not loose sign of result in compat syscall (#PSBM-76379)- compel: Do not loose sign of result in compat syscall (#PSBM-76379)- mount: export_mnt_ns_roots -- Fix lack on ending EOS- mount: allow overmount on parent with shared group (#PSBM-69501) - mount: fix parent shared group dependency in can_mount_now (#PSBM-69501)- net: execute iptables-restore in a target network namespace (#PSBM-75531) - vz7: crit: Use lu for pagemap images (#PSBM-75112) - vz7: image-desc -- Make pagemap and pagemap-shmem images to use lu (#PSBM-75112)- action-scripts: Export mount namespace roots via CRIU_MNT_NS_ROOTS (#PSBM-71861) - mount: Add export_mnt_ns_roots helper (#PSBM-71861) - build: Rename snapshot to tarball- vz7: libsoccr: ignore data in a sent queue, if a connect is closed (#PSBM-67026) - make: Add snapshot target- scripts: add "-w" to iptables command (Stanislav Kinsburskiy ) (#PSBM-73153)- kdat: if iptables-restore has xtable lock support do wait on lock - Revert "net: Call ip[6]tables-restore with -w parameter"- fsnotify: Filter event mask from old kernels (#PSBM-73140)- net: Call ip[6]tables-restore with -w parameter - Revert "net: Execute ip[6]tables-{save,restore} with -w option"- net: Execute ip[6]tables-{save,restore} with -w option (Kirill Tkhai )- net: Execute ip[6]tables-{save,restore} with -w option- autofs: use safe xatol() and xatoi() helpers (#PSBM-72109) - util: xatol() and xatoi() helpers introduced - Revert "vz7: util: xatol() and xatoi() helpers introduced" - Revert "vz: autofs: use safe xatol() and xatoi() helpers" - vz: autofs: use safe xatol() and xatoi() helpers (#PSBM-72109) - vz7: util: xatol() and xatoi() helpers introduced - zdtm: Implement different per-thread credentials testcase- vz: autofs: use safe xatol() and xatoi() helpers (#PSBM-72109) - vz7: util: xatol() and xatoi() helpers introduced - zdtm: Implement different per-thread credentials testcase- vz7: vdso: Map vdso with arch_prctl() if kdat.can_map_vdso (#PSBM-71884) - vz7: vdso/restorer: Don't map compatible vdso if it was unmapped (#PSBM-71884) - vz7: vdso: Don't park vdso/vvar if restoree doesn't have them (#PSBM-71884) - vz7: kdat: Add test for presence of vdso mapping API (#PSBM-71884) - vz7: vdso: Don't read pagemap or parse symtable (#PSBM-71884)- vz7: tests: do not try to read more than packet in AutoFS test (#PSBM-71078) - Revert "vz7: zdtm: print autofs request size, if read more than expected" - Revert "vz7: zdtm: fix autofs tes compilation" - Revert "vz7: zdtm: fix package memory allocation in autofs.c"- vz7: zdtm: fix package memory allocation in autofs.c (#PSBM-71078) - vz7: tty -- Fix TTY_BITMAP_BITS - vz7: image -- Add compat layer for Core entry (#PSBM-67671)- vz7: sk-unix -- Drop redundant unix_sk_cinfo reference- vz7: sk-tcp: Print libsoccr_save() error message - vz7: zdtm: fix autofs tes compilation (#PSBM-71041) - tty: collect_one_tty_info_entry -- Move tracking setup into main cycle (#PSBM-70929) - tty: collect_one_tty -- Make sure the index is in range - tty: tty_has_active_pair -- Make sure no overflow happened - tty: tty_test_and_set -- Make sure no overflow happened - tty: Fix __tty_verify_active_pairs - tty: Use macros for bitmap length - vz7: images -- Add task_core_entry_vz730 stub- Rebase on CRIU v3.4 (#PSBM-70650)- zdtm: print autofs request size, if read more than expected (#PSBM-70345)- test: mount -- Add bind-mount-unix - sk-unix: Handle bindmounted dgram sockets on restore (#PSBM-69473) - sk-unix: Save mnt_id for bindmounted entries (#PSBM-69473) - versions: Increase to not conflict with hotfix series- version: Force increase for hf1 - fsnotify: open_handle -- Handle multiple mounts with same s_dev (#PSBM-69473) - Log into /var/log/mesages large ghost files dumps (#PSBM-68320)- fsnotify: open_handle -- Handle multiple mounts with same s_dev (#PSBM-69473) - Log into /var/log/mesages large ghost files dumps (#PSBM-68320)- pie, restorer: Fix typo in wait_helpers (#PSBM-69378)- page-xfer: Make error message more verbose (#PSBM-68738)- Revert "sfd: Reserve service descriptors early" (#PSBM-69279 #PSBM-69259) - Revert "sfd: Don't forget to close pre-opened tty service fd"- sfd: Don't forget to close pre-opened tty service fd (#PSBM-69211)- sfd: Reserve service descriptors early (#PSBM-68738)- vz7/cgroup: Skip for awhile ifpriomap property restore (#PSBM-66683)- vz7: bc, restore -- Check for failcounters on error (#PSBM-68868) - vz7: criu: update second "iptables restore" helper to work in VE#0 (#PSBM-58574) - vz7: systemd-autofs-restart.sh: return meaningful value from restore_mountpoint- vz7: criu: update second "iptables restore" helper to work in VE#0 (#PSBM-58574) - vz7: systemd-autofs-restart.sh: return meaningful value from restore_mountpoint- vz7: criu: threads -- Allow uids/gids being different (#PSBM-68756) - vz7: sk-inet: udp -- Don't fail on calling shutdown on disconnected socket (#PSBM-68062) - vz7: mount: restore_task_mnt_ns - Lookup for mount namespace conditionally (#PSBM-68062)- net: do iptables restore in ve0 (#PSBM-58574) - net: iptables_tool_{dump,restore} helpers introduced - criu: export join_ve helper- restore: Fix deadlock when helper's child dies (#PSBM-67930) - page-xfer: handle a case when splice returns zero (#PSBM-68732)- mount: allow any types of NFS mount for a while (#PSBM-68663)- mounts: support NFS bind-mounts in the same shared group (#PSBM-68663)- criu: don't abort criu in lookup_create_item() (#PSBM-68607) - dump: set pid->state for threads (#PSBM-68585) - mounts: support only shared NFS mounts in inits mount namespace (#PSBM-66945)- mount: Switch user_ns before mount binfmt_misc (#PSBM-68377) - ve: Call binfmt_misc-mounting code in call_in_child_process() - util: Implement clone_in_child_process() helper - clone_noasan: Allow to create CLONE_VM|CLONE_VFORK processes - mount: Move binfmt_misc-mounting code to separate function - mount: Consider EBUSY binfmt_misc mount return as error- vz7: files -- Don't access value from stack in outer contex - mount: Don't search for siblings inside self (#PSBM-67723) - vz7: vdso: Map vdso with arch_prctl() if kdat.can_map_vdso (#PSBM-67017) - vdso/restorer: Don't map compatible vdso if it was unmapped - vdso: Don't park vdso/vvar if restoree doesn't have them - kdat: Add test for presence of vdso mapping API - vz7: vdso: Don't read pagemap or parse symtable (#PSBM-67017) - vdso: Introduce type for checking vdso hint in maps file - vz7: sk-queue: fix non-fatal print log level - vz7: netlink: fix warning print- vz7: vdso: Map vdso with arch_prctl() if kdat.can_map_vdso (#PSBM-67017) - vdso/restorer: Don't map compatible vdso if it was unmapped - vdso: Don't park vdso/vvar if restoree doesn't have them - kdat: Add test for presence of vdso mapping API - vz7: vdso: Don't read pagemap or parse symtable (#PSBM-67017) - vdso: Introduce type for checking vdso hint in maps file - vz7: sk-queue: fix non-fatal print log level - vz7: netlink: fix warning print- cr-service: Init page_ids laterly - images: Initialize images earlier (before page-server starts) (#PSBM-67335) - pages: Share page_ids between ns dump-helpers (#PSBM-67335) - vz7: mount: check for mount is unsupported only on dump - vz7: files-reg: forbid migration of opened device files on NFS (#PSBM-55590)- images: Initialize images earlier (before page-server starts) (#PSBM-67335) - pages: Share page_ids between ns dump-helpers (#PSBM-67335) - vz7: mount: check for mount is unsupported only on dump - vz7: files-reg: forbid migration of opened device files on NFS (#PSBM-55590)- pages: Share page_ids between ns dump-helpers (#PSBM-67335) - vz7: mount: check for mount is unsupported only on dump - vz7: files-reg: forbid migration of opened device files on NFS (#PSBM-55590)- scripts: cleanup error output in systemd-autofs-restart.sh (#PSBM-67544) - scripts: check service mountpoint is not empty in systemd-autofs-restart.sh (#PSBM-67544)- mem: Don't assume guard page is returned in procfs with new kernels (#PSBM-67433) - kerndat: Detect if we have guard page mangle in procfs output- mounts: print NFS nested mountpoint info (#PSBM-67466) - mounts: add unsupported mount helper (#PSBM-67466)- Drop libcompel explicit dependency from criu- Split libcompel and libcompel-devel to subpackages- spfs: fix usage of mi->ns_mountpoint (#PSBM-66943) - spfs: pass both "mountpoint" and "ns_mountpoint" paths to manager (#PSBM-66943)- Revert "vz7: sfd: Move service fd helpers into separate file" (#PSBM-65382) - Revert "vz7: sfd: Rework install, clone helpers to use fcntl" (#PSBM-65382) - Revert "vz7: sfd -- Don't forget to skip reserved fds on clone" (#PSBM-65382) - files: remove extra newline from a message- mount: don't use phys_stat_resolve_dev() in open_mount() (#PSBM-66981) - vz7: tests: shm-unaligned -- Use unique key for simultaneous run (Cyrill Gorcunov ) (#PSBM-66764)- scripts: use absolute binaries paths systemd-autofs-restart.sh (#PSBM-66967)- zdtm: run page-server via rpc - lib/py: allow to execute page-server as a child process - service: allow to execute page-server as a child process - scripts: use absolute binaries paths nfs-ports-allow.sh (#PSBM-66901)- ia32/feature-test: Don't check i686 libraries presence - nmk: Provide try-asm build check function - mount: Find NS_ROOT for cr-time mount on restore (#PSBM-66457)- vz7: sfd -- Don't forget to skip reserved fds on clone (#PSBM-66874)- Revert "vz7: Unlimit self RLIMIT_NOFILE resource for dump/predump" - Revert "vz7: restore -- Lift up own file limits" - vz7: sfd: Lift up own fd limit on bootup (#PSBM-65382) - vz7: kdat: Add fetching files stat (#PSBM-65382) - vz7: sfd: Rework install, clone helpers to use fcntl (#PSBM-65382) - vz7: sfd: Move service fd helpers into separate file (#PSBM-65382) - x86/ia32: fix build with DEBUG=1 (Dmitry Safonov ) - vdso/compat: Don't unmap missing vdso/vvar vmas (Dmitry Safonov ) - pie/vdso: return back ELF header mismatch error (Dmitry Safonov ) - ia32/futex: restore compat_robust_list (Dmitry Safonov ) - ia32/futex: add dumping compat_robust_list (Dmitry Safonov ) - restorer: remove always true `has_futex' arg (Dmitry Safonov )- scripts: skip spfs mount points in systemd-autofs-restart.sh (#PSBM-66285) - scripts: check service mount point in "skip_service" systemd-autofs- restart.sh - scripts: "skip_service" helper introduced in systemd-autofs-restart.sh - vz7: tests -- Drop _GNU_SOURCE from source code (Cyrill Gorcunov ) (#PSBM-66278)- vz7: fs: Add new argument to fstype::parse() and use it in binfmt_misc (Cyrill Gorcunov ) - make: Report dependencies absence more exactly - ia32: Rename has_compat_sigreturn => compat_cr - ia32: Clearify if 32bit C/R is compile-disabled- vz7: Makefile.version -- Adjust number for new series - vz7: Makefile: Fix scripts installation - vz7: scripts: systemd-autofs-restart.sh -- Enter container net ns upon join (#PSBM-65483) - vz7: tty: Make sure no /dev/tty inheritance exist (#PSBM-65637) - vz7: filesystems: binfmt -- Add debug print on dumping stage (#PSBM-65185) - vz7: test: sk-unix01 -- Make sure the dir with ghost files are empty - vz7: sk-unix: Don't wait on socketpair (#PSBM-65051) - vz7: sk-unix -- Add info print about slave peers - vz7: sk-unix -- Adjust default dgram qlen for systemd sake (#PSBM-64628) - vz7: sk-unix -- Fix typo in namelen comparision (#PSBM-64715) - vz7: sk-queue: Add missing newline into log - vz7: restore_sk_queue -- Show how many bytes already sent (#PSBM-64628) - vz7: test: sk-unix01 -- Fix compilation - vz7: sk-unix: Don't append ghost postfix on subsequent checkpoint (#PSBM-55992) - test: Add sk-unix01 test - vz7: sk-unix: Add ability to restore sockets with deleted vfs addresses - vz7: sk-unix: Print cwd been restored if @name_dir is present - vz7: sk-unix: Don't warn if nothing to unlink - vz7: sk-unix: Collect deleted identical addresses in the queues - vz7: sk-unix: Make USK_ flags in shift form - vz7: sk-unix: Drop empty line at eof - vz7: sk-unix: Use add_post_prepare_cb_once helper - vz7: sk-unix: Drop empty line - vz7: sk-unix: Use generic xptr_pull in dump_one_unix_fd - vz7: sk-unix: Use native types in unix_sk_info - vz7: sk-unix: Adjust unix_sk_info members - vz7: sk-unix: Adjust unix_sk_cinfo members - vz7: sk-unix: Make can_dump_unix_sk being boolean - vz7: pipes: Use add_post_prepare_cb_once - vz7: tty: Use add_post_prepare_cb_once - vz7: restore: Add add_post_prepare_cb_once helper - sk-queue: Don't fail if we're dumping dead process queued creds (#PSBM-62778) - vz7: sk-queue -- Show the creds we're sending (#PSBM-64009) - vz7: sk-queue -- Show peers in hex form (#PSBM-64009) - vz7: seize -- Wait for seize in thawed state (#PSBM-63841) - vz7: freezer -- Add set_freezer_state helper (#PSBM-63841) - vz7: epoll -- Dont fail on dup'ed fd restore (#PSBM-63850) - vz7: dump: Any non-negative return code of run_scripts means an error (#PSBM-62583) - vz7: sk-unix -- Restore qlen before pushing queued data back (#PSBM-63762) - vz7: sockets: Separate socket buffer size setting into a helper (#PSBM-63762) - vz7: seize -- Show detached pid in freezer_detach - vz7: Show status of uninterruptable task (#PSBM-63211) - vz7: files -- Select proper master fd when collecting fd (#PSBM-63355) - vz7: pstree -- Introduce pstree_pid_cmp helper - vz7: page-xfer -- Handle partial splicing (#PSBM-63161) - vz7: ucred -- Drop packets from dead processes (#PSBM-62603) - vz7: epoll -- Use real file transferred for target fds check (#PSBM-62108) - vz7: sk-queue -- Add support of ucreds in unix sockets (#PSBM-61095) - test: Add ucreds test - vz7: pagemap -- Use ssize_t type where appropriate (#PSBM-62199) - vz7: compel -- Use unsigned long for arguments (#PSBM-61961) - vz7: dump -- Set file limits back before fetching them into dump (#PSBM-61812) - vz7: Drop redundant comment - vz7: restore -- Lift up own file limits (#PSBM-63094) - vz7: Unlimit self RLIMIT_NOFILE resource for dump/predump (#PSBM-63002) - vz7: Unlimit and limit file number resource for c/r sake (#PSBM-61573) - vz7: kdat: Add fetching files stat - vz7: Don't forget to restore memory cgroup limits on pre-dupms (#PSBM-61534 #PSBM-53593) - vz7: Zap file size checking for "atop" (#PSBM-61459) - vz7: dump_packet_cmsg -- Allow to receive timestamp data (#PSBM-61248) - vz7: dump_sk_creds -- Don't leak memory for SkUcredEntry (#PSBM-61248) - vz7: netlink: avoid ENOBUF when a netlink queue is dumped (#PSBM-60643) - vz7: netlink: skip pktinfo scm if a sender group is less than 32 - vz7: socket: don't restore ucred from kernel messages - vz7: netlink: dump/restore netlink options - vz7: netlink: restore queues and only then restore opts - vz7: cgroup -- Rename net_cls to net_cls,net_prio on the fly (#PSBM-60606 #PSBM-61459 #PSBM-61851) - vz7: mount -- Add lookup_first_fstype helper - vz7: criu: add more information about control messages (#PSBM-60643) - vz7: test: check ucred for netlink messages - vz7: netlink: dump and restore ucred-s for netlink messages (#PSBM-59339) - vz7: eventpoll: Skip inaccessible descriptors (#PSBM-60042) - vz7: pipes -- Restore pipe size via userns call (#PSBM-59829) - vz7: mount: fix mounting non-root shared mounts (#PSBM-55494) - vz7: test: pty05 -- Add testing of multiple devpts instance - vz7: tty -- Don't fail if @mnt_id is not present in images (#PSBM-60606) - vz7: tty: Fix devpts mounts resolving (#PSBM-59223) - vz7: tty: Add support for multiple devpts instances (#PSBM-58616) - vz7: tty: Save mount ids for terminals into image - vz7: tty: mount -- Add mount_resolve_devpts_mnt_id helper - vz7: tty: Save task current terminal if present - vz7: Unlimit UBC when chekpointing (#PSBM-53593) - vz7: restore -- Enter destination veX once usernsd is up (#PSBM-56407) - vz7: Make get_dumpee_veid been exported - vz7: zdtm: check a netlink socket with in-kernel state - vz7: netlink: allow to dump netlink sockets with in-progress operations - vz7: sk-inet: Fix lookup for raw sockets (#PSBM-55835) - vz7: shmem: skip zero pages - vz7: shmem: don't write zero pages into an image - vz7: seccomp -- Switch to prctl interface if syscall is not implemented (#PSBM-55593) - vz7: ghost files: don't check ghost size if it's an NFS path (#PSBM-56159) - vz7: Always define CONFIG_BINFMT_MISC_VIRTUALIZED - vz7: test: Add simple socket-raw test - vz7: sk-inet: Add initial support for raw sockets (#PSBM-51614) - vz7: Don't use executable stacks in @syscall_ip (#PSBM-55989) - vz7: util: Add rmdirp helper - vz7: mount: handle error from restore_shared_options() - vz7: seize: Add additional diagnose messages (#PSBM-53929) - vz7: mount: bind-mount autofs mounts via a file descriptors (#PSBM-53194) - vz7: spfs: create control socket in /run/spfs-manager/ (#PSBM-59199) - vz7: spfs: move SPFS manager to corresponding container's dump directory - vz7: scripts: add unmasked NFS route print to nfs-ports-allow.sh (#PSBM-52353) - vz7: mnt -- Fetch VEID from cgroup for migration sake (#PSBM-52372) - vz7: mount: Enter/exit VE while mounting CR-time binfmt_misc (#PSBM-52320) - vz7: cg: Don't dump devices.list (#PSBM-50551) - vz7: scripts: remove obsolete scripts - vz7: cr-restore: use spfs helpers to control spfs manager - vz7: spfs: add new helpers to replces bash scripts calls - vz7: files-reg: move ghost_apply_metadata out of create_ghost_dentry - vz7: mount: create a temporary mount to restore shared and master groups (#PSBM-47508) - vz7: files-reg: fix silly-renamed files migration - vz7: files-reg: improve spfs_file helper - vz7: Makefile: install spfs-release-replace.sh script (#PSBM-49726) - vz7: files: Allow to dump ploopX files opened (#PSBM-49723) - vz7: spfs: remove obsolete code - vz7: files-reg: migrate "spfs" files as ghost-ones - vz7: files-reg: conditionally dump content in dump_ghost_file - vz7: util: mkdirname helper introduced - vz7: files-reg: split create_ghost - vz7: files_reg: remove unused "struct ghost_file" from mkreg_ghost prototype - vz7: dump: Show task comm early - vz7: spfs: do not tolerate file existence on creation - vz7: spfs: fix freeze cgroup path discovery - vz7: cgroup: new_cg_root_get helper introduced - vz7: criu: remove NFS unlinked files restriction - vz7: files-reg: migrate spfs unlinked file as "link remap" objects - vz7: files-reg: migrate spfs file as "link remap" objects - vz7: spfs: pass mount ID instead of namespace descriptor to spfs_create_file - vz7: spfs: explicitly pass size and mode to spfs_create_file - vz7: link_remap: do not create excessive links for a single file - vz7: mount: forbid dumping overmounted NFS (#PSBM-48620) - vz7: zdtm: add a new test to check netlink sockets with queued data - vz7: netlink: restore data in a received queue for netlink sockets (#PSBM-28386) - vz7: sk-queue: add an ability to dump addresses for messages - vz7: check: check whether NETLINK_REPAIR is supported or not - vz7: netlink: request flags for netlink sockets - vz7: files-reg: forbid to dump unlinked NFS files - vz7: proc_parse: forbid dumping NFS remote locks - vz7: files-reg: remove "unreachable" protobuf field as redundant - vz7: files-reg: create spfs file in case of parent mount is SPFS - vz7: files-reg: do not create spfs file in case of external resource - vz7: spfs: remove "ns_list" option from "replace" command as obsolete - vz7: compel -- Add support for vz7 specific cpuid masking (#PSBM-47748 #PSBM-49423) - vz7: scripts: remove bogus command substitution in nfs-ports-allow.sh (#PSBM-44207) - vz7: scripts: restart all systemd automount services (#PSBM-46672) - vz7: sk-unix: Fix path resolving for sockets with abs symlinks in paths - vz7: util: Add cr_set_root/cr_restore_root helpers - vz7: spfs: do not treat existent file as error in create_reg_file - vz7: scripts: spfs-release-replace.sh introduced - vz7: criu: spfs -- Fixup various nits for NFS sake - vz7: nfs: build -- Add install of spfs-change-mode.sh and nfs-ports-allow.sh - vz7: mounts: mount spfs instead of NFSv3 and NFSv4 (#PSBM-26967) - vz7: mount: Add support for NFSv4 - vz7: protobuf/mnt.proto: NFSv4 type added - vz7: mount: add support for NFS - vz7: protobuf/mnt.proto: NFS type added - vz7: mount: add support for SUNRPC Pipefs - vz7: protobuf/mnt.proto: RPC Pipefs type added - vz7: scripts: allow-nfs-ports.sh added - vz7: action-scripts: ACT_POST_NET_LOCK stage added - vz7: scripts: spfs-change-mode.sh added - vz7: action scripts: set spfs environment in run_scripts - vz7: regular files: create temporary spfs file if marked as unreachable - vz7: spfs: delayed mounts facility introduced - vz7: cr-restore: declare SPFS_MNGR_SK service fd - vz7: regular files: protobuf "unreachable" field introduced - vz7: filemap: collect mapped file fs type - vz7: reg_file_entry: add "mode" variable - vz7: aio: Don't fail if kernel does not support aio wait (#PSBM-42488) - vz7: Wait aio pending requests (#PSBM-42488) - vz7: criu: tty -- Restore tty params synchronously (#PSBM-46382) - vz7: Merge vanilla 3.0- vz7: Makefile.version -- Adjust number for new series - vz7: scripts: systemd-autofs-restart.sh -- Enter container net ns upon join (#PSBM-65483) - vz7: tty: Make sure no /dev/tty inheritance exist (#PSBM-65637) - vz7: filesystems: binfmt -- Add debug print on dumping stage (#PSBM-65185) - vz7: test: sk-unix01 -- Make sure the dir with ghost files are empty - vz7: sk-unix: Don't wait on socketpair (#PSBM-65051) - vz7: sk-unix -- Add info print about slave peers - vz7: sk-unix -- Adjust default dgram qlen for systemd sake (#PSBM-64628) - vz7: sk-unix -- Fix typo in namelen comparision (#PSBM-64715) - vz7: sk-queue: Add missing newline into log - vz7: restore_sk_queue -- Show how many bytes already sent (#PSBM-64628) - vz7: test: sk-unix01 -- Fix compilation - vz7: sk-unix: Don't append ghost postfix on subsequent checkpoint (#PSBM-55992) - test: Add sk-unix01 test - vz7: sk-unix: Add ability to restore sockets with deleted vfs addresses - vz7: sk-unix: Print cwd been restored if @name_dir is present - vz7: sk-unix: Don't warn if nothing to unlink - vz7: sk-unix: Collect deleted identical addresses in the queues - vz7: sk-unix: Make USK_ flags in shift form - vz7: sk-unix: Drop empty line at eof - vz7: sk-unix: Use add_post_prepare_cb_once helper - vz7: sk-unix: Drop empty line - vz7: sk-unix: Use generic xptr_pull in dump_one_unix_fd - vz7: sk-unix: Use native types in unix_sk_info - vz7: sk-unix: Adjust unix_sk_info members - vz7: sk-unix: Adjust unix_sk_cinfo members - vz7: sk-unix: Make can_dump_unix_sk being boolean - vz7: pipes: Use add_post_prepare_cb_once - vz7: tty: Use add_post_prepare_cb_once - vz7: restore: Add add_post_prepare_cb_once helper - sk-queue: Don't fail if we're dumping dead process queued creds (#PSBM-62778) - vz7: sk-queue -- Show the creds we're sending (#PSBM-64009) - vz7: sk-queue -- Show peers in hex form (#PSBM-64009) - vz7: seize -- Wait for seize in thawed state (#PSBM-63841) - vz7: freezer -- Add set_freezer_state helper (#PSBM-63841) - vz7: epoll -- Dont fail on dup'ed fd restore (#PSBM-63850) - vz7: dump: Any non-negative return code of run_scripts means an error (#PSBM-62583) - vz7: sk-unix -- Restore qlen before pushing queued data back (#PSBM-63762) - vz7: sockets: Separate socket buffer size setting into a helper (#PSBM-63762) - vz7: seize -- Show detached pid in freezer_detach - vz7: Show status of uninterruptable task (#PSBM-63211) - vz7: files -- Select proper master fd when collecting fd (#PSBM-63355) - vz7: pstree -- Introduce pstree_pid_cmp helper - vz7: page-xfer -- Handle partial splicing (#PSBM-63161) - vz7: ucred -- Drop packets from dead processes (#PSBM-62603) - vz7: epoll -- Use real file transferred for target fds check (#PSBM-62108) - vz7: sk-queue -- Add support of ucreds in unix sockets (#PSBM-61095) - test: Add ucreds test - vz7: pagemap -- Use ssize_t type where appropriate (#PSBM-62199) - vz7: compel -- Use unsigned long for arguments (#PSBM-61961) - vz7: dump -- Set file limits back before fetching them into dump (#PSBM-61812) - vz7: Drop redundant comment - vz7: restore -- Lift up own file limits (#PSBM-63094) - vz7: Unlimit self RLIMIT_NOFILE resource for dump/predump (#PSBM-63002) - vz7: Unlimit and limit file number resource for c/r sake (#PSBM-61573) - vz7: kdat: Add fetching files stat - vz7: Don't forget to restore memory cgroup limits on pre-dupms (#PSBM-61534 #PSBM-53593) - vz7: Zap file size checking for "atop" (#PSBM-61459) - vz7: dump_packet_cmsg -- Allow to receive timestamp data (#PSBM-61248) - vz7: dump_sk_creds -- Don't leak memory for SkUcredEntry (#PSBM-61248) - vz7: netlink: avoid ENOBUF when a netlink queue is dumped (#PSBM-60643) - vz7: netlink: skip pktinfo scm if a sender group is less than 32 - vz7: socket: don't restore ucred from kernel messages - vz7: netlink: dump/restore netlink options - vz7: netlink: restore queues and only then restore opts - vz7: cgroup -- Rename net_cls to net_cls,net_prio on the fly (#PSBM-60606 #PSBM-61459 #PSBM-61851) - vz7: mount -- Add lookup_first_fstype helper - vz7: criu: add more information about control messages (#PSBM-60643) - vz7: test: check ucred for netlink messages - vz7: netlink: dump and restore ucred-s for netlink messages (#PSBM-59339) - vz7: eventpoll: Skip inaccessible descriptors (#PSBM-60042) - vz7: pipes -- Restore pipe size via userns call (#PSBM-59829) - vz7: mount: fix mounting non-root shared mounts (#PSBM-55494) - vz7: test: pty05 -- Add testing of multiple devpts instance - vz7: tty -- Don't fail if @mnt_id is not present in images (#PSBM-60606) - vz7: tty: Fix devpts mounts resolving (#PSBM-59223) - vz7: tty: Add support for multiple devpts instances (#PSBM-58616) - vz7: tty: Save mount ids for terminals into image - vz7: tty: mount -- Add mount_resolve_devpts_mnt_id helper - vz7: tty: Save task current terminal if present - vz7: Unlimit UBC when chekpointing (#PSBM-53593) - vz7: restore -- Enter destination veX once usernsd is up (#PSBM-56407) - vz7: Make get_dumpee_veid been exported - vz7: zdtm: check a netlink socket with in-kernel state - vz7: netlink: allow to dump netlink sockets with in-progress operations - vz7: sk-inet: Fix lookup for raw sockets (#PSBM-55835) - vz7: shmem: skip zero pages - vz7: shmem: don't write zero pages into an image - vz7: seccomp -- Switch to prctl interface if syscall is not implemented (#PSBM-55593) - vz7: ghost files: don't check ghost size if it's an NFS path (#PSBM-56159) - vz7: Always define CONFIG_BINFMT_MISC_VIRTUALIZED - vz7: test: Add simple socket-raw test - vz7: sk-inet: Add initial support for raw sockets (#PSBM-51614) - vz7: Don't use executable stacks in @syscall_ip (#PSBM-55989) - vz7: util: Add rmdirp helper - vz7: mount: handle error from restore_shared_options() - vz7: seize: Add additional diagnose messages (#PSBM-53929) - vz7: mount: bind-mount autofs mounts via a file descriptors (#PSBM-53194) - vz7: spfs: create control socket in /run/spfs-manager/ (#PSBM-59199) - vz7: spfs: move SPFS manager to corresponding container's dump directory - vz7: scripts: add unmasked NFS route print to nfs-ports-allow.sh (#PSBM-52353) - vz7: mnt -- Fetch VEID from cgroup for migration sake (#PSBM-52372) - vz7: mount: Enter/exit VE while mounting CR-time binfmt_misc (#PSBM-52320) - vz7: cg: Don't dump devices.list (#PSBM-50551) - vz7: scripts: remove obsolete scripts - vz7: cr-restore: use spfs helpers to control spfs manager - vz7: spfs: add new helpers to replces bash scripts calls - vz7: files-reg: move ghost_apply_metadata out of create_ghost_dentry - vz7: mount: create a temporary mount to restore shared and master groups (#PSBM-47508) - vz7: files-reg: fix silly-renamed files migration - vz7: files-reg: improve spfs_file helper - vz7: Makefile: install spfs-release-replace.sh script (#PSBM-49726) - vz7: files: Allow to dump ploopX files opened (#PSBM-49723) - vz7: spfs: remove obsolete code - vz7: files-reg: migrate "spfs" files as ghost-ones - vz7: files-reg: conditionally dump content in dump_ghost_file - vz7: util: mkdirname helper introduced - vz7: files-reg: split create_ghost - vz7: files_reg: remove unused "struct ghost_file" from mkreg_ghost prototype - vz7: dump: Show task comm early - vz7: spfs: do not tolerate file existence on creation - vz7: spfs: fix freeze cgroup path discovery - vz7: cgroup: new_cg_root_get helper introduced - vz7: criu: remove NFS unlinked files restriction - vz7: files-reg: migrate spfs unlinked file as "link remap" objects - vz7: files-reg: migrate spfs file as "link remap" objects - vz7: spfs: pass mount ID instead of namespace descriptor to spfs_create_file - vz7: spfs: explicitly pass size and mode to spfs_create_file - vz7: link_remap: do not create excessive links for a single file - vz7: mount: forbid dumping overmounted NFS (#PSBM-48620) - vz7: zdtm: add a new test to check netlink sockets with queued data - vz7: netlink: restore data in a received queue for netlink sockets (#PSBM-28386) - vz7: sk-queue: add an ability to dump addresses for messages - vz7: check: check whether NETLINK_REPAIR is supported or not - vz7: netlink: request flags for netlink sockets - vz7: files-reg: forbid to dump unlinked NFS files - vz7: proc_parse: forbid dumping NFS remote locks - vz7: files-reg: remove "unreachable" protobuf field as redundant - vz7: files-reg: create spfs file in case of parent mount is SPFS - vz7: files-reg: do not create spfs file in case of external resource - vz7: spfs: remove "ns_list" option from "replace" command as obsolete - vz7: compel -- Add support for vz7 specific cpuid masking (#PSBM-47748 #PSBM-49423) - vz7: scripts: remove bogus command substitution in nfs-ports-allow.sh (#PSBM-44207) - vz7: scripts: restart all systemd automount services (#PSBM-46672) - vz7: sk-unix: Fix path resolving for sockets with abs symlinks in paths - vz7: util: Add cr_set_root/cr_restore_root helpers - vz7: spfs: do not treat existent file as error in create_reg_file - vz7: scripts: spfs-release-replace.sh introduced - vz7: criu: spfs -- Fixup various nits for NFS sake - vz7: nfs: build -- Add install of spfs-change-mode.sh and nfs-ports-allow.sh - vz7: mounts: mount spfs instead of NFSv3 and NFSv4 (#PSBM-26967) - vz7: mount: Add support for NFSv4 - vz7: protobuf/mnt.proto: NFSv4 type added - vz7: mount: add support for NFS - vz7: protobuf/mnt.proto: NFS type added - vz7: mount: add support for SUNRPC Pipefs - vz7: protobuf/mnt.proto: RPC Pipefs type added - vz7: scripts: allow-nfs-ports.sh added - vz7: action-scripts: ACT_POST_NET_LOCK stage added - vz7: scripts: spfs-change-mode.sh added - vz7: action scripts: set spfs environment in run_scripts - vz7: regular files: create temporary spfs file if marked as unreachable - vz7: spfs: delayed mounts facility introduced - vz7: cr-restore: declare SPFS_MNGR_SK service fd - vz7: regular files: protobuf "unreachable" field introduced - vz7: filemap: collect mapped file fs type - vz7: reg_file_entry: add "mode" variable - vz7: aio: Don't fail if kernel does not support aio wait (#PSBM-42488) - vz7: Wait aio pending requests (#PSBM-42488) - vz7: criu: tty -- Restore tty params synchronously (#PSBM-46382) - vz7: Merge vanilla 3.0- vz7: scripts: systemd-autofs-restart.sh -- Enter container net ns upon join (#PSBM-65483)- vz7: tty: Make sure no /dev/tty inheritance exist (#PSBM-65637)- vz7: fs: Populate opts.has_binfmt_misc on dump only (#PSBM-65367)- vz7: filesystems: binfmt -- Add debug print on dumping stage (#PSBM-65185)- vz7: test: sk-unix01 -- Make sure the dir with ghost files are empty - vz7: sk-unix: Don't wait on socketpair (#PSBM-65051) - vz7: sk-unix -- Add info print about slave peers- vz7: sk-unix -- Adjust default dgram qlen for systemd sake (#PSBM-64628) - Revert "vz7: sockets: Separate socket buffer size setting into a helper" - Revert "vz7: sk-unix -- Restore qlen before pushing queued data back" - Revert "sk-queue: Queue length must be sync"- vz7: sk-unix -- Fix typo in namelen comparision (#PSBM-64715) - vz7: sk-queue: Add missing newline into log - vz7: restore_sk_queue -- Show how many bytes already sent - vz7: test: sk-unix01 -- Fix compilation- vz7: sk-unix: Don't append ghost postfix on subsequent checkpoint (#PSBM-55992)- Revert "unix: switch into the root mount namespace before cleaning stale sockets" (#PSBM-64369)- test: Add sk-unix01 test - vz7: sk-unix: Add ability to restore sockets with deleted vfs addresses (#PSBM-55992) - vz7: sk-unix: Print cwd been restored if @name_dir is present - vz7: sk-unix: Don't warn if nothing to unlink - vz7: sk-unix: Collect deleted identical addresses in the queues - vz7: sk-unix: Make USK_ flags in shift form - vz7: sk-unix: Drop empty line at eof - vz7: sk-unix: Use add_post_prepare_cb_once helper - vz7: sk-unix: Drop empty line - vz7: sk-unix: Use generic xptr_pull in dump_one_unix_fd - vz7: sk-unix: Use native types in unix_sk_info - vz7: sk-unix: Adjust unix_sk_info members - vz7: sk-unix: Adjust unix_sk_cinfo members - vz7: sk-unix: Make can_dump_unix_sk being boolean - vz7: pipes: Use add_post_prepare_cb_once - vz7: tty: Use add_post_prepare_cb_once - vz7: restore: Add add_post_prepare_cb_once helper - unix: a unix name can be a non-null terminated string - unix: Do pr_perror() before cleanup - files: Sanitize helpers for scattering two-headed files - unix: Factor out common parts restoration (v2) - unix: Fix tail processing for peer-less sockets - unix: don't leak a file descriptor - unix: switch into the root mount namespace before cleaning stale sockets - Revert "vz7: sk-unix: Restore deleted sockets together with removed dirs"- sk-queue: Don't fail if we're dumping dead process queued creds (#PSBM-62778)- sk-queue: Queue length must be sync (#PSBM-64009) - vz7: sk-queue -- Show the creds we're sending (#PSBM-64009) - vz7: sk-queue -- Show peers in hex form (#PSBM-64009)- vz7: seize -- Wait for seize in thawed state (#PSBM-63841) - vz7: freezer -- Add set_freezer_state helper (#PSBM-63841) - vz7: epoll -- Dont fail on dup'ed fd restore (#PSBM-63850)- vz7: dump: Any non-negative return code of run_scripts means an error (#PSBM-62583)- vz7: sk-unix -- Restore qlen before pushing queued data back (#PSBM-63762) - vz7: sockets: Separate socket buffer size setting into a helper (#PSBM-63762) - vz7: seize -- Show detached pid in freezer_detach- vz7: seize -- Make sure there is enough space for eol on debug print (#PSBM-63211) - vz7: Show status of uninterruptable task (#PSBM-63211)- vz7: files -- Select proper master fd when collecting fd (#PSBM-63355) - vz7: pstree -- Introduce pstree_pid_cmp helper - vz7: page-xfer -- Handle partial splicing (#PSBM-63161)- vz7: restore -- Lift up own file limits (#PSBM-63094) - vz7: Make rlimit_limit_nofile_self being global- vz7: Unlimit self RLIMIT_NOFILE resource for dump/predump (#PSBM-63002) - Revert "vz7: Increase the number of files limit"- vz: zdtm/mnt_ext_auto: add different bind-mounts of external mount (#PSBM-46753) - vz7: mount: migrate bindmounts of external mounts (#PSBM-46753) - vz7: mount: save ext_real_root for external mounts (#PSBM-46753) - vz7: mount: remove excess mi->external checks - vz7: mount: fix confusing naming- vz7: ucred -- Drop packets from dead processes (#PSBM-62603)- vz7: epoll -- Use real file transferred for target fds check (#PSBM-62108) - vz7: epoll: Report error instead of BUG (#PSBM-62108)- vz7: sk-queue -- Add support of ucreds in unix sockets (#PSBM-61095) - test: Add ucreds test- vz7: parasite-syscall -- Move rlimit_limit_nofile into parasite_cure_remote (#PSBM-62267)- vz7: spfs: create control socket in /run/spfs-manager/ (#PSBM-59199) - vz7: pagemap -- Use ssize_t type where appropriate (#PSBM-62199) - pagemap: Support async pages reading by chunks (v2)- fsnotify: skip non-direcory mounts (#PSBM-57362)- test: Add shutdown'ed UDP socket test - sk-inet: Add support for shutdown'ed UDP/UDPlite sockets (#PSBM-61550)- vz7: parasite -- Use long for memory size (#PSBM-61961) - vz7: dump -- Set file limits back before fetching them into dump (#PSBM-61812) - vz7: parasite-syscall -- Export rlimit_[un]limit_nofile - vz7: Unlimit and limit file number for dump stage only (#PSBM-61812)- vz7: dump -- Set file limits back before fetching them into dump (#PSBM-61812) - vz7: parasite-syscall -- Export rlimit_[un]limit_nofile - vz7: Unlimit and limit file number for dump stage only (#PSBM-61812)- vz7: Unlimit and limit file number for dump stage only (#PSBM-61812)- vz7: Fix net_cls controllers transition (#PSBM-61851 #PSBM-60606) - vz7: Drop redundant comment - vz7: Drop debug leftover from 0a3713ab2c44f- vz7: Unlimit and limit file number resource for c/r sake (#PSBM-61573) - vz7: kdat: Add fetching files stat - vz7: parasite: Switch to map-files interface is memfd failed - vz7: memfd: Print detailed error if memfd_create failed - Revert "vz7: Dump only known controllers" (#PSBM-61768)- Revert "vz7: Dump only known controllers" (#PSBM-61768)- vz7: Don't forget to restore memory cgroup limits on pre-dupms (#PSBM-61534 #PSBM-53593)- vz7: Don't rename net_cls if no net_cls,net_prio present (#PSBM-60606 #PSBM-61459) - vz7: Zap file size checking for "atop" (#PSBM-61459)- vz7: dump_packet_cmsg -- Allow to receive timestamp data (#PSBM-61248) - vz7: restore_sk_queue -- Drop trailing tabs - vz7: dump_sk_creds -- Don't leak memory for SkUcredEntry (#PSBM-61248)- vz7: systemd-autofs-restart.sh: fix issue with removed check_fs_type reference (#PSBM-60980) - vz7: Fix type conversion in dump_packet_cmsg- vz7: netlink: avoid ENOBUF when a netlink queue is dumped (#PSBM-60643) - vz7: netlink: skip pktinfo scm if a sender group is less than 32 - vz7: socket: don't restore ucred from kernel messages - vz7: netlink: dump/restore netlink options - vz7: netlink: restore queues and only then restore opts- vz7: cgroup -- Rename net_cls to net_cls,net_prio on the fly (#PSBM-60606) - vz7: tty -- Don't fail if @mnt_id is not present in images (#PSBM-60606) - vz7: mount -- Add lookup_first_fstype helper- vz7: criu: add more information about control messages (#PSBM-60643) - docs: criu -- Explain pre-resume stage - action-scripts: Add "pre-resume" stage (#PSBM-58742) - Revert "vz7: Add ACT_POST_SIGRETURN" - vz7: Fix type conversion in dump_packet_cmsg- vz7: test: check ucred for netlink messages - vz7: netlink: dump and restore ucred-s for netlink messages (#PSBM-59339)- vz7: eventpoll: Skip inaccessible descriptors (#PSBM-60042)- vz7: pipes -- Restore pipe size via userns call (#PSBM-59829)- vz7: eventpoll: Fix dependency check (#PSBM-59550)- vz7: tty: Fix devpts mounts resolving (#PSBM-59223) - vz7: test: pty05 -- Extend test for unshared mount ns- vz7: files: Fix test and set endianess problem (#PSBM-58228) - vz7: tty: Optimize dependencies check - vz7: files: Merge collect_gen_fd() and collect_used_fd(), and call it unconditionally - vz7: files: Kill pid parameter of open_fdinfos() - vz7: eventpoll: Use generic list for eventpoll files - vz7: tty: Use generic list for tty files - vz7: files: Move ctty fixup to open_fd() - vz7: tty: Set dependencies between masters, slaves and ctty - vz7: files: Kill struct file_desc_ops::post_open - vz7: files: Make recv_fd_from_peer() non-block - vz7: files: Add new_fd parameter to file_desc_ops::open() - vz7: files: Set fds event after sending fd to peer - vz7: eventpoll: Make post_open stage may fail - vz7: files: BUG on reopening already opened fle - vz7: timerfd: Kill post_open stage - vz7: inet: Use task_st futex for notification instead of per-port - vz7: inet: Link sockets in port_type list - vz7: unix: Wait a peer using task_st futex - vz7: unix: Link connected to peer sockets to its list - vz7: files: Add fdinfo_list_entry::stage - vz7: files: Implement {set,clear,wait}_fds_event() - vz7: bits: Add test_and_set_bit() - vz7: pstree: Add task_st bit field - vz7: headers: Move lock.h into include/common/ - vz7: files: Merge states iteration into open_fdinfos() - vz7: files: Kill fd_open_state::receive_fd stage - vz7: files: Kill want_post_open_stage() - vz7: files: Kill fd parameter of transport_name_gen() - vz7: files: Kill file_desc_ops::want_transport() - vz7: files: Receive real fd numbers using recv_fd_from_peer() - vz7: files: Make sending fds to peers async - vz7: files: Allow to receive further fds - vz7: files: Add fle_init() for initialization new fdinfo_list_entry - vz7: files: Move derefferencing of TRANSPORT_FD_OFF to send_fd_to_peer() - vz7: files: Move closing fle's transport_fd to recv_fd_from_peer() - vz7: files: Send/receive fds with pointers on their struct fdinfo_list_entry in receiver- pcs7: mount: fix mounting non-root shared mounts- vz7: test: pty05 -- Add testing of multiple devpts instance - vz7: tty: Add support for multiple devpts instances (#PSBM-58616) - vz7: tty: Save mount ids for terminals into image - vz7: tty: mount -- Add mount_resolve_devpts_mnt_id helper - vz7: tty: Save task current terminal if present - vz7: tty: Print rdev and dev pair in case of error - vz7: tty: Unify id printing- vz7: Makefile.version -- Adjust number for new series - Rebase to vanilla criu v2.10- vz7: Unlimit UBC when chekpointing (#PSBM-53593) - vz7: restore -- Enter destination veX once usernsd is up (#PSBM-56407) - vz7: Add ACT_POST_SIGRETURN - vz7: Make get_dumpee_veid been exported - vz7: zdtm: check a netlink socket with in-kernel state - vz7: netlink: allow to dump netlink sockets with in-progress operations- pcs7: tcp: bind tcp sockets after enabling the repair mode (#PSBM-57413) - Revert "pcs7: tcp: bind tcp sockets after enabling the repair mode"- pcs7: tcp: bind tcp sockets after enabling the repair mode (#PSBM-57413) - pcs7: scripts: Print error value in case of action script fail- Rebuild in 7.3 environment- pcs7: sk-inet: Fix lookup for raw sockets (#PSBM-55835)- zdtm: add a test to check a mount tree with overmounts (Andrei Vagin ) - mount: clone a mount namespace to open a detached mount (Andrei Vagin ) (#PSBM-57135) - mnt: try to split a mount tree to restore over-mounted mounts (Andrei Vagin ) - mnt: rename roots_mp into root_yard_mp and make it global (Andrei Vagin ) - mnt: add a sub-id to print_ns_root (Andrei Vagin ) - mnt: clean up (Andrei Vagin ) - mnt: add a function to check whether a mount overmounts something (Andrei Vagin )- pcs7: shmem: skip zero pages- pcs7: shmem: don't write zero pages into an image- pcs7: zdtm: check sequence numbers for tcp sockets - pcs7: build: install libnet-dev - pcs7: zdtm.py: pass a test PID into zdtm hooks - pcs7: zdtm: add test cases on TCP_SYN_SENT - pcs7: zdtm: add a test for unconnected tcp sockets - pcs7: zdmt: add more checks into socket-closed-tcp - pcs7: zdtm: check sockets in the TCP_CLOSING state - pcs7: zdtm: add test cases on TCP_CLOSE_WAIT and TCP_LAST_ACK states - pcs7: zdtm: add test cases on TCP_FIN_WAIT* states - pcs7: tcp: add support for synsent - pcs7: tcp: allow to dump intermediate closing states - pcs7: inet: dump source and destination addresses for closed sockets - pcs7: soccr: add support for syn-sent sockets - pcs7: soccr: add support for half-closed sockets - pcs7: soccr: move connect from criu to soccr - pcs7: soccr: add source and destination addresses to libsoccr_sk_data - pcs7: criu: check whether tcp_repair can be enabled for half-closed sockets - pcs7: soccr: add prefixes for log messages and print errno - pcs7: soccr: add '\n' to all loge/logd - pcs7: criu: enable soccr logging - pcs7: build: only generate soccr config.h if necessary - pcs7: soccr: Generate config.h dynamically - pcs7: soccr: rectify Alpine build - pcs7: make, soccr: let CRIU depend on libsoccr - pcs7: soccr: Add soccr.h's comments - pcs7: soccr: Handle connection state - pcs7: soccr/tcp: Restore queues using library - pcs7: soccr/tcp: Restore socket's info after binding it - pcs7: soccr/tcp: Restore socket's info before binding it - pcs7: soccr/tcp: Prepare connection info for restore - pcs7: soccr/tcp: Read queues contents using library - pcs7: soccr/tcp: Fill actual connection info using the library - pcs7: soccr/tcp: Introduce blob with connection info and getter for it - pcs7: soccr/tcp: Add _pause and _resume to library and use it - pcs7: soccr: Add logging - pcs7: soccr: Wire into builder - criu.spec: Add libnet-devel requirement for tcp-close sake- pcs7: seccomp -- Switch to prctl interface if syscall is not implemented (#PSBM-55593)- pcs7: restore: Fetch mmap_minimal_address runtime (#PSBM-56797)- pcs7: ghost files: don't check ghost size if it's an NFS path (#PSBM-56159)- pcs7: criu: Fix open() retval analysing (#PSBM-56384)- pcs7: fs: Fix retval analysing erratum (#PSBM-56384)- pcs7: Always define CONFIG_BINFMT_MISC_VIRTUALIZED- pcs7: Adjust version for 2.8 series - Rebase to vanilla CRIU-2.8 series- pcs7: test: Add simple socket-raw test - pcs7: sk-inet: Add initial support for raw sockets (#PSBM-51614)- pcs7: Don't use executable stacks in @syscall_ip (#PSBM-55989) - Revert "pcs7: criu: proc_parse -- Add guard page the same way as kernel detects them" - Revert "pcs7: parasite: Don't try to start executing syscall from guard page"- pcs7: parasite: Don't try to start executing syscall from guard page (#PSBM-55989) - pcs7: criu: proc_parse -- Add guard page the same way as kernel detects them (#PSBM-55989)- pcs7: test: Add del_standalone_un_dentry test - pcs7: sk-unix: Restore deleted sockets together with removed dirs (#PSBM-55495) - pcs7: util: Add rmdirp helper - pcs7: test: rmdir_open -- Delete two levels of directories - pcs7: criu: files-reg -- Create a complete path to delete dentry - pcs7: util: Make mkdirpat more generic- pcs7: mount: don't create a temporary directory if /tmp exists - ps7: mount: fix mounting non-root shared mounts (#PSBM-55494) - pcs7: mount: handle error from restore_shared_options()- seize: Add additional diagnose messages (#PSBM-53929)- pcs7: mount: bind-mount autofs mounts via a file descriptors (#PSBM-53194)- pcs7: Fix seize_cgroup_tree error code collide- pcs7: freeze -- Wait for exiting tasks to complete (#PSBM-53282)- pcs7: scripts -- systemd-autofs-restart.sh: explicitly return result from get_fs_type (#PSBM-53239)- pcs7: spfs: move SPFS manager to corresponding container's dump directory- pcs7: mount: Correct s_dev conversion in mount_cr_time_mount() (#PSBM-52460)- pcs7: mount: Set opts.has_binfmt_misc regardless of mnt_ns level (#PSBM-52513)- pcs7: mount: Move adding cr-time binfmt_misc to collect_mnt_namespaces() (#PSBM-52513) - pcs7: mount: Do not fail on shared cr-time mounts mismatch (#PSBM-52513)- pcs7: restorer: add forgotten CLONE_FS flag for threads clone (#PSBM-47623)- pcs7: scripts: add unmasked NFS route print to nfs-ports-allow.sh (#PSBM-52353) - pcs7: mnt -- Fix case where ve cgroup not found- pcs7: mnt -- Fetch VEID from cgroup for migration sake (#PSBM-52372)- pcs7: mount: Corrent sibling path when parent and child have the same mountpoint (#PSBM-52346)- pcs7: mount: Enter/exit VE while mounting CR-time binfmt_misc (#PSBM-52320)- mount: Prohibit second binfmt_misc superblock (#PSBM-47737) - mount: Restore binfmt_misc content in case of missing mount - mount: Forced mount unmounted binfmt_misc to do not lost its content - mount: Autodetect binfmt_misc - mount: Create binfmt_misc image w/o device suffix - mount: Move binfmt_misc entry restore code to subfunction - mount: Collect new type binfmt_misc.img image entries - image: Rename binfmt_misc image format as "old" - pcs7: shmem -- Inspect pages before the dump (#PSBM-52138)- pcs7: systemd-autofs-restart.sh: fix error handling in case of system limitation (#PSBM-51299)- seize: collect_pstree -- Add missing error sign return (#PSBM-51428)- pcs7: Adjust version for v2.5.x.x series - pcs7: conflict resolve - pcs7: scritps: systemd-autofs-restart.sh -- Do not treat absence on bindmount as error (#PSBM-50684) - pcs7: cg: Don't dump devices.list (#PSBM-50551) - unix: don't drop the path on unix sockets if they don't exist (Dmitry Safonov ) - pcs7: Increase the number of files limit (#PSBM-46761 #PSBM-50607) - pcs7: scripts: remove obsolete scripts - pcs7: cr-restore: use spfs helpers to control spfs manager - pcs7: spfs: add new helpers to replces bash scripts calls - pcs7: files-reg: move ghost_apply_metadata out of create_ghost_dentry - pcs7: Lift up local version - pcs7: Dump only known controllers (#PSBM-46382) - pcs7: log: Print version into the log (#PSBM-50239) - pcs7: mount: create a temporary mount to restore shared and master groups (#PSBM-47508) - pcs7: files-reg: fix silly-renamed files migration - pcs7: files-reg: improve spfs_file helper - pcs7: mount: sysfs -- Use slave mounting for the root (#PSBM-50010) - pcs7: util-vdso: correct vdso symbol's length - pcs7: Makefile: install spfs-release-replace.sh script (#PSBM-49726) - pcs7: files: Allow to dump ploopX files opened (#PSBM-49723) - pcs7: spfs: remove obsolete code - pcs7: files-reg: migrate "spfs" files as ghost-ones - pcs7: files-reg: conditionally dump content in dump_ghost_file - pcs7: util: mkdirname helper introduced - pcs7: files-reg: split create_ghost - pcs7: files_reg: remove unused "struct ghost_file" from mkreg_ghost prototype - pcs7: seize: Wait the freezer to complete before processing tags (#PSBM-49439) - pcs7: dump: Move task_comm_info helpers into seize.c - pcs7: spfs: do not tolerate file existence on creation - pcs7: dump: Show task comm early - pcs7: spfs: add device files creation support (#PSBM-48985) - pcs7: spfs: fix freeze cgroup path discovery - pcs7: cgroup: new_cg_root_get helper introduced - pcs7: criu: remove NFS unlinked files restriction - pcs7: files-reg: migrate spfs unlinked file as "link remap" objects - pcs7: files-reg: migrate spfs file as "link remap" objects - pcs7: spfs: pass mount ID instead of namespace descriptor to spfs_create_file - pcs7: spfs: explicitly pass size and mode to spfs_create_file - pcs7: link_remap: do not create excessive links for a single file - pcs7: proc_parse: fix vma file open mode recognition (#PSBM-49199) - pcs7: log: files-ext -- Show exactly which file can't be dumped - pcs7: criu: util -- Add __read_fd_link helper - pcs7: mount: forbid dumping overmounted NFS (#PSBM-48620) - pcs7: zdtm: add a new test to check netlink sockets with queued data - pcs7: netlink: restore data in a received queue for netlink sockets (#PSBM-28386) - pcs7: sk-queue: add an ability to dump addresses for messages - pcs7: check: check whether NETLINK_REPAIR is supported or not - pcs7: netlink: request flags for netlink sockets - pcs7: files-reg: forbid to dump unlinked NFS files - pcs7: proc_parse: forbid dumping NFS remote locks - pcs7: files-reg: remove "unreachable" protobuf field as redundant - pcs7: files-reg: create spfs file in case of parent mount is SPFS - pcs7: files-reg: do not create spfs file in case of external resource - pcs7: spfs: remove "ns_list" option from "replace" command as obsolete - pcs7: namespace: mark mount namespaces as populated after the forking stage (#PSBM-48222) - pcs7: arch, x86 -- Add support for vz7 specific cpuid masking (#PSBM-47748 #PSBM-49423) - pcs7: scripts: remove bogus command substitution in nfs-ports-allow.sh (#PSBM-44207) - pcs7: scripts: restart all systemd automount services (#PSBM-46672) - pcs7: sk-unix: Fix path resolving for sockets with abs symlinks in paths - pcs7: util: Add cr_set_root/cr_restore_root helpers - pcs7: spfs: do not treat existent file as error in create_reg_file - pcs7: seize: Take --timeout option into account when freezing processes (#PSBM-47539 #PSBM-47538) - pcs7: scripts: spfs-release-replace.sh introduced - pcs7: criu: spfs -- Fixup various nits for NFS sake - pcs7: nfs: build -- Add install of spfs-change-mode.sh and nfs-ports-allow.sh - pcs7: mounts: mount spfs instead of NFSv3 and NFSv4 (#PSBM-26967) - pcs7: mount: add support for NFSv4 - pcs7: protobuf/mnt.proto: NFSv4 type added - pcs7: mount: add support for NFS - pcs7: protobuf/mnt.proto: NFS type added - pcs7: mount: add support for SUNRPC Pipefs - pcs7: protobuf/mnt.proto: RPC Pipefs type added - pcs7: scripts: allow-nfs-ports.sh added - pcs7: action-scripts: ACT_POST_NET_LOCK stage added - pcs7: scripts: spfs-change-mode.sh added - pcs7: action scripts: set spfs environment in run_scripts - pcs7: regular files: create temporary spfs file if marked as unreachable - pcs7: spfs: delayed mounts facility introduced - pcs7: cr-restore: declare SPFS_MNGR_SK service fd - pcs7: regular files: protobuf "unreachable" field introduced - pcs7: filemap: collect mapped file fs type - pcs7: reg_file_entry: add "mode" variable - pcs7: aio: Don't fail if kernel does not support aio wait (#PSBM-42488) - pcs7: Wait aio pending requests (#PSBM-42488) - pcs7: criu: tty -- Restore tty params synchronously (#PSBM-46382) - pcs7: Initial sync with vanilla v2.4 - log: Print version into the log (#PSBM-50239) - files-reg: fix silly-renamed files migration - files-reg: improve spfs_file helper - mounts: export is_root_mount helper - Revert "sk-unix: forbid to dump NFS unix sockets" (#PSBM-47017) - mount: sysfs -- Use slave mounting for the root (#PSBM-50010) - util-vdso: correct vdso symbol's length - Makefile: install spfs-release-replace.sh script (#PSBM-49726) - files: Allow to dump ploopX files opened (#PSBM-49723) - version: Adjust numbering - Revert "files_reg: carry rdev with regular files" - seize: Wait the freezer to complete before processing tags (#PSBM-49439) - spfs: remove obsolete code - files-reg: migrate "spfs" files as ghost-ones - files-reg: conditionally dump content in dump_ghost_file - util: mkdirname helper introduced - files-reg: split create_ghost - files_reg: remove unused "struct ghost_file" from mkreg_ghost prototype - dump: Move task_comm_info helpers into seize.c - pcs7: arch, x86 -- Fix typo in cpuid masking code (#PSBM-49423) - spfs: do not tolerate file existence on creation - dump: Show task comm early - spfs: add device files creation support (#PSBM-48985) - files_reg: carry rdev with regular files - spfs: fix freeze cgroup path discovery - cgroup: new_cg_root_get helper introduced - criu: remove NFS unlinked files restriction - files-reg: migrate spfs unlinked file as "link remap" objects - files-reg: migrate spfs file as "link remap" objects - spfs: pass mount ID instead of namespace descriptor to spfs_create_file - spfs: explicitly pass size and mode to spfs_create_file - link_remap: do not create excessive links for a single file - cr-dump: discover fs type in fill_fd_params_special - proc_parse: fix vma file open mode recognition (#PSBM-49199) - tty: Don't forget to add eol when inverting slave pts paths (#PSBM-49008) - tty: Fix typos in vt driver choosing (#PSBM-48614) - mount: don't do MS_REC|MS_PRIVATE for host mounts (#PSBM-46298) - log: files-ext -- Show exactly which file can't be dumped - criu: util -- Add __read_fd_link helper - mount: forbid dumping overmounted NFS (#PSBM-48620) - zdtm: add a new test to check netlink sockets with queued data - netlink: restore data in a received queue for netlink sockets (#PSBM-28386) - netlink: request flags for netlink sockets - sk-queue: add an ability to dump addresses for messages - check: check whether NETLINK_REPAIR is supported or not - unix: Do not autobind unnamed unix sockets (#PSBM-48446) - pcs7: images: Sync format with vanilla criu (#PSBM-48283) - sk-unix: forbid to dump NFS unix sockets - files-reg: forbid to dump unlinked NFS files - proc_parse: forbid dumping NFS remote locks - files-reg: remove "unreachable" protobuf field as redundant - files-reg: create spfs file in case of parent mount is SPFS - files-reg: do not create spfs file in case of external resource - spfs: remove "ns_list" option from "replace" command as obsolete - rpc: Implement @timeout interface (#PSBM-48256) - namespace: mark mount namespaces as populated after the forking stage (#PSBM-48222) - rpc: Add interface --freeze-cgroup option (#PSBM-44613) - pcs7: arch, x86 -- Add support for vz7 specific cpuid masking (#PSBM-47748) - dump: Allocate root_item before run pre-dump scripts (#PSBM-47737) - scripts: remove bogus command substitution in nfs-ports-allow.sh (#PSBM-44207) - net/sysctl: fix ipv4 forwarding (#PSBM-47355) - scripts: terminate systemd-autofs-restart.sh if saved mountpoint is missing (#PSBM-44207) - scripts: return non zero if save_mountpoint() fails (#PSBM-44207) - scripts: remove bogus command substitution in systemd-autofs-restart.sh (#PSBM-44207) - scripts: detect EOF on read in a usual way in systemd-autofs-restart.sh (#PSBM-44207) - mount: don't add a separate entry for each enabled file systems - scripts: restart all systemd automount services (#PSBM-46672) - sk-unix: Fix path resolving for sockets with abs symlinks in paths - util: Add cr_set_root/cr_restore_root helpers - zdtm/ptrace_sig: don't print from signal handlers (#PSBM-47772) - test: file_locks01 -- Test for dev change if only env is set (#PSBM-47714) - test: fanotify00 -- Test for device change if only env set - test: static, fanotify00 -- Don't compare @s_dev in test (#PSBM-47667) - spfs: do not treat existent file as error in create_reg_file - seize: Take --timeout option into account when freezing processes (#PSBM-47539 #PSBM-47538) - mount: create a temporary mount to restore shared and master groups (#PSBM-47508) - build: Don't forget to relink arch builtins on change - scripts: spfs-release-replace.sh introduced - Revert "scripts: spfs-release-replace.sh introduced" - scripts: spfs-release-replace.sh introduced - scripts: call readlink in CT context in systemd-autofs-restart.sh - scripts: single style for command substitution in systemd-autofs-restart.sh (#PSBM-44207) - tty: Don't forget to unblock tty peers - tty: Save @flags unconditionaly for consistency - zdtm: check in-flight data in ttys - tty: Write unread pty buffers on post dump stage (#PSBM-41399) - criu: don't interrupt do_new_mount() after appling mount options (#PSBM-47489) - aio: Consider AIO pages as "should be dumped" (#PSBM-47489) - test/sockets: add test for shut down stream unix sockets (#PSBM-47023) - sk-unix: ignore shutdown mismatch in unix sockets - scripts: fix strings comparison in systemd-autofs-restart.sh - net/sysctl: zero-init stable_secret strings (#PSBM-30942) - net/sysctl: remove excess type conversions for sysctl_entry.type - net/sysctl: silence read error in case of CTL_FLAGS_READ_EIO_SKIP - zdtm/net/ipv6: add test for string stable_secret - sysctl: fix allocation for array of pointers - zdtm/net/ipv6: add test for confs - zdtm/net/ipv6: add devconfs6 and rand_range6 - zdtm/net/ipv6: allow inacurate match for mldvX_unsolicited_report_interval - zdtm/net/ipv4: split save_and_set and check_and_restore - zdtm/net/ipv4: replace rand limits with rand ranges - zdtm/net/ipv4: make save_and_set and check_and_restore reusable - restore/net/ipv6: net device and def/all configuration - dump/net/ipv6: net device and def/all configuration - net/ipv6: add devconfs6 array to store config option's names - net/ipv6/protobuf: add device config options for ipv6 - net/ipv4: add net_conf_op to reuse for ipv6 - protobuf: add SysctlEntry for ipv4/ipv6 sysctl confs or some others - sysctl: add CTL_FLAGS_HAS to mark successful sysctl_op request - zdtm/net/ipv4: rename devconfs4 and rand_limit4 and dir4 - net/ipv4: suffix devconfs with "4" - net/ipv4: add new sysctls - pcs7: criu: spfs -- Fixup various nits for NFS sake - pcs7: nfs: build -- Add install of spfs-change-mode.sh and nfs-ports-allow.sh - pcs7: mounts: mount spfs instead of NFSv3 and NFSv4 (#PSBM-26967) - pcs7: mount: add support for NFSv4 - pcs7: protobuf/mnt.proto: NFSv4 type added - pcs7: mount: add support for NFS - pcs7: protobuf/mnt.proto: NFS type added - pcs7: mount: add support for SUNRPC Pipefs - pcs7: protobuf/mnt.proto: RPC Pipefs type added - pcs7: scripts: allow-nfs-ports.sh added - pcs7: action-scripts: ACT_POST_NET_LOCK stage added - pcs7: scripts: spfs-change-mode.sh added - pcs7: action scripts: set spfs environment in run_scripts - pcs7: regular files: create temporary spfs file if marked as unreachable - pcs7: spfs: delayed mounts facility introduced - pcs7: cr-restore: declare SPFS_MNGR_SK service fd - pcs7: regular files: protobuf "unreachable" field introduced - pcs7: filemap: collect mapped file fs type - pcs7: reg_file_entry: add "mode" variable - pcs7: cgroup: Fix early update of @dir_name in rewrite_cgsets (#PSBM-46987) - plugins: Initialize plugins control by default - pcs7: mount: add support for external block devices (#PSBM-39381) - pcs7: aio: Fix mmap retval analysing - pcs7: aio: Don't fail if kernel does not support aio wait (#PSBM-42488) - pcs7: Wait aio pending requests (#PSBM-42488) - mount: create a clean mount only if a sub directory is bind-mounted (#PSBM-46908) - mount: dump a file system only if a mount point isn't overmounted (#PSBM-46908) - mount: don't overmount a mount if it should be bind-mounted somewhere (#PSBM-46908) - Revert "mount: dump a file system only if a mount point isn't overmounted" - Revert "mount: don't overmount a mount if it should be bind-mounted somewhere" - scripts: fix mountinfo parsing in systemd-autofs-restart.sh (#PSBM-46889) - mount: don't overmount a mount if it should be bind-mounted somewhere (#PSBM-46732 #PSBM-46662) - mount: remove an extra condition from mounts_equal() - mount: handle a case when parent and child mounts in the same directory - mount: dump a file system only if a mount point isn't overmounted - Revert "mount: don't overmount a mount if it should be bind-mounted somewhere" (#PSBM-46732) - autofs: support of "hidden" catatonic mounts (#PSBM-46572) - autofs: rework pipe search logic a bit - build: Add ability to generate gprof output - pcs7: scripts -- Make sure -1 pid is not passed (#PSBM-46572) - pcs7: Increase the number of files limit (#PSBM-46761) - scripts: do not use stat to discover fs type in systemd-autofs-restart.sh (#PSBM-46756) - scripts: save and restore target mount for autofs service (#PSBM-46672) - mount: don't overmount a mount if it should be bind-mounted somewhere (#PSBM-46662) - pcs7: Dump only known controllers (#PSBM-46382) - Revert "cg: Add ability to dump predefined controllers only" - Revert "pcs7: Increase the number of files limit" - criu: dump filemap as soon as possible (#PSBM-46355) - autofs: collect new pipe fd as used (#PSBM-46601) - autofs: do not create dentries for indirect mount on bind-mounts (#PSBM-46572) - pcs7: Increase the number of files limit (#PSBM-46355) - build: install -- Don't forget to init DESTDIR - scripts: fix typo in binary path in systemd-autofs-restart.sh - restore: Wait for userns being prepared before moving into cgroups (v3) - Revert "restore: Wait for userns being prepared before moving into cgroups (v2)" - cg: Add ability to dump predefined controllers only (#PSBM-46382) - scripts: join pid namespace in systemd-autofs-restart.sh (#PSBM-46470) - files: try to change fsuid only if linkat() failed (#PSBM-46201) - criu: tty -- Restore tty params synchronously (#PSBM-46382) - restore: Wait for userns being prepared before moving into cgroups (v2) (#PSBM-46360) - Revert "restore: Wait for userns being prepared before moving into cgroups" - autofs: use temporary value for virtual pgrp on dump - restore: Wait for userns being prepared before moving into cgroups (#PSBM-46360) - files: Correctly handle tasks with no open file descriptors (#PSBM-46269) - autofs: install -- Fix libexec prefix (#PSBM-46249) - autofs: install -- Ship scripts/systemd-autofs-restart.sh (#PSBM-46249) - pcs7: Update Makefile.local - criu: action-scripts -- Don't access @root_item_pid if not present - zdtm: check the mem_dirty_track if --pre or --snap is set (Pavel Emelyanov ) - ppc64le: fix build with UFFD (Pavel Emelyanov ) - Fix compilation of action-scripts.c (Pavel Emelyanov ) - kdat: Remove tcp_max_rshare (Pavel Emelyanov ) - tcp: Send as much as possible (Pavel Emelyanov ) - join-ns: Fix join-ns zdtm test (Pavel Emelyanov ) - sk: handle erorors of lseek (Pavel Emelyanov ) - util: don't leak a socket (Pavel Emelyanov ) - namespaces: don't leak memory on error paths (Pavel Emelyanov ) - cr-restore: set NS_PID environment variable before "post-resume" hook (Pavel Emelyanov ) - scripts: systemd-autofs-restart.sh added (Pavel Emelyanov ) - build: Add export of sublevels and extra (Pavel Emelyanov ) - build: compel -- Drop double targeting (Pavel Emelyanov ) - cr-restore: "post-resume" hook introduced (Pavel Emelyanov ) - criu: opts -- Shuffle init_opts order (Pavel Emelyanov ) - compel: Drop config.h from deps (Pavel Emelyanov ) - ns: Options join-ns and unshare are conflicting (Pavel Emelyanov ) - compel: Initial commit for standalone tool (Pavel Emelyanov ) - compel: piegen -- Introduce actions (Pavel Emelyanov ) - compel: piegen -- Add @arch option (Pavel Emelyanov ) - compel: piegen -- Add @uapi-dir option (Pavel Emelyanov ) - join-ns: add join-ns zdtm test (Pavel Emelyanov ) - join-ns: perform join_namespace according to join-ns opts (Pavel Emelyanov ) - join-ns: add join-ns option to criu CLI and RPC (Pavel Emelyanov ) - uffd: add handling of zero pages (Pavel Emelyanov ) - uffd: introduce uffd_handle_page (Pavel Emelyanov ) - uffd: increment uffd_copied_pages only in one place (Pavel Emelyanov ) - uffd.c: move the code out of the 'main' function (Pavel Emelyanov ) - uffd.c: make some variable static global (Pavel Emelyanov ) - uffd.c: move code into subfunctions (Pavel Emelyanov ) - uffd.c: remove unused variable vma_size (Pavel Emelyanov ) - autofs: free leaked opts in autofs_mount (Pavel Emelyanov ) - autofs: free leaked info in autofs_mount on error path (Pavel Emelyanov ) - autofs: free leaked AutofsEntry in autofs_dump_entry (Pavel Emelyanov ) - autofs: do not close NULL image (Pavel Emelyanov ) - uffd: remove handling of VDSO pages (Pavel Emelyanov ) - uffd: do not treat VDSO pages as lazy (Pavel Emelyanov ) - uffd: Fix pr_debug format for vma start (Pavel Emelyanov ) - autofs: fix device id modifier on error path in autofs_mnt_open (Pavel Emelyanov ) - autofs: fix device id printf modifier on error path in autofs_mnt_open (Pavel Emelyanov ) - autofs: do not treat old kernel as error in autofs_parse() (Pavel Emelyanov ) - autofs: include limit.h before auto_fs.h (Pavel Emelyanov ) - autofs: fix build on Fedora 22 (Pavel Emelyanov ) - uffd.c: do not call unneeded functions (Pavel Emelyanov ) - cr-restore: move add_ns_shared_cb declaration to include/namespaces.h (Pavel Emelyanov ) - Fix userfaultfd code with newer compilers (Pavel Emelyanov ) - check: "autofs" feature added (Pavel Emelyanov ) - zdtm.py: create "dev/autofs" root contruction (Pavel Emelyanov ) - zdtm: add autofs test (Pavel Emelyanov ) - mount: create target directory for AutoFS indirect mounts. (Pavel Emelyanov ) - autofs: restore stage introduced (Pavel Emelyanov ) - autofs: declare ioctl helpers and constants (Pavel Emelyanov ) - pipes: export collect_one_pipe_ops() helper (Pavel Emelyanov ) - files: new dup_fdinfo() and dup_fle() helpers introduced (Pavel Emelyanov ) - files: new "used" files list introduced (Pavel Emelyanov ) - autofs: dump fsinfo stage introduced (Pavel Emelyanov ) - autofs: parse fsinfo stage introduced (Pavel Emelyanov ) - protobuf: autofs entry introduced (Pavel Emelyanov ) - devices: add support for /dev/autofs (Pavel Emelyanov ) - protobuf/mnt.proto: AutoFS type added (Pavel Emelyanov ) - unshare: Check private remount error code (Pavel Emelyanov ) - unshare: Define UNSHARE_MOUNT_PROC constant (Pavel Emelyanov ) - pstree: try to find a free pid between busy pids (v2) (Pavel Emelyanov ) - pstree: use rbtree to find a specified pid (v3) (Pavel Emelyanov ) - pstree: prepare to store all pid-s in rb-tree (v3) (Pavel Emelyanov ) - pstree: split alloc_pstree_helper (Pavel Emelyanov ) - pstree: move state from pstree_item to pid (Pavel Emelyanov ) - Try to include userfaultfd with criu (part 2) (Pavel Emelyanov ) - Try to include userfaultfd with criu (part 1) (Pavel Emelyanov ) - Remove static from prepare_task_entries function (Pavel Emelyanov ) - Make skip_pages function available criu-wide (Pavel Emelyanov ) - unshare: Support pidns (Pavel Emelyanov ) - unshare: Mount new proc (Pavel Emelyanov ) - unshare: Support mntns (Pavel Emelyanov ) - unshare: Preparations and CLI option (Pavel Emelyanov ) - pcs7: Extend version output via local build (#PSBM-45009) - build: criu -- Don't forget to cleanup arch directory - cg: Add rollback in get_cg_set (#PSBM-45553) - cg: Add rollback for add_cgroup (#PSBM-45553) - cg: Fix use-after-free in put_ctls (#PSBM-45553) - pie: open_detach_mount -- Use pr_perror for regular build - util: return aligned pointers from shmalloc() - Makefile: drop 'rebuild' from help message - nmk: build.mk -- Add @libso-y helper - nmk: build.mk -- Add @hostprogs-y mode - nmk: msg.mk -- Add host- messages - nmk: build.mk -- Shrink gen-cc-rules - nmk: build.mk -- Drop any-match rule - nmk: build.mk -- Fix deps for target mode - nmk: build.mk -- Squash gen-rule-x into gen-cc-rules - nmk: Drop rules.mk - nmk: rules.mk -- Fix AFLAGS typo - tests: remap_dead_pid[_root] -- Run in namespace only - log: add gnu-styled output to stdout - build: images -- Add missing cleanups - namespaces: zero struct ns_id when allocating - criu: use strsignal to describe kill reason - nmk: build.mk -- Fix ar rule for external libs - nmk: build.mk -- Make process depend on Makefile itself - nmk: build.mk -- On cleanup use cleanup-y only - nmk: utils.mk -- Add cleanify helper - nmk: utils.mk -- Drop redundant spaces - nmk: build.mk -- Fix typo in gen-ar-target-rule - nmk: rules.mk -- Add per-obj flags - nmk: build.mk -- Drop unused objlist target - nmk: rules.mk -- Drop @CFLAGS_ and @ASFLAGS_ but add ability to bring them via param - build: add mrproper target - build/nmk: add mrproper-y - build: Drop @images - nmk: scritps/macro.mk -- Enhance gen-built-in - x86/restorer: drop unused struct pt_regs - types: Remove setns override with sys_setns - rst-malloc: adjust free_bytes in rst_mem_align_cpos - netfilter: add -n to iptables and ip6tables calls - build: docs -- Use autogenerated footer - pstree: try to find a free pid between busy pids (v2) - pstree: use rbtree to find a specified pid (v3) - pstree: prepare to store all pid-s in rb-tree (v3) - pstree: split alloc_pstree_helper - pstree: move state from pstree_item to pid - criu: seize -- Don't left dangling @processes_to_wait_pids pointer - libnetlink: back port a fix for nlattr_parse() - netlink: Use nlattr instead of rtattr - criu: pstree_switch_state -- Fix nil deref on error path - irmap: use kdev everywere - dump: check for conflicts with the dead processes - irmap: don't try to dereference a null pointer - mounts: handle device numbers in different formats properly - criu: Use __NR_memfd_create for testing memfd presence - build: Conditionally defined SYS_* constants - build: criu -- Don't link with syscalls library - mount: don't use a shared mount to get a clean mount - mount: master_id should be 0 for new mounts - mount: restore a shared group for propagated mounts - build: clean up various other bits - build: Add verbose message on packages needed for CRIU building - build: Unify phony forms usage - pre-dump: don't waste time in error cases - dump: pre-dump should never kill processes - make: Improve tar generation - pcs7: Update local version - dump: don't call rollback actions from a signal handler (#PSBM-44371) - mounts: Skip already bound siblings in propagate_siblings() - PCS7: cgroup: Always restore predefined VE props (#PSBM-41406) - files-reg: Fix rm_parent_dirs() counter - files-reg: Delete ghost file numeric index - files-reg: Revert: Make try_clean_ghost() use struct ghost_file ptr - zdtm: Disable unlink_regular00 by default - zdtm: Add unlink_regular00 test - files-reg: Recreate deleted parent directories during restore of ghost file - files-reg: Create ghost files in first existing parent directory - files-reg: Move applying ghost file metadata from create_ghost() to separate function - files-reg: Make try_clean_ghost() use struct ghost_file ptr - files-reg: Refactor create_ghost() - seize: detach from external processes before killing dumped processes (v2) (#PSBM-43795) - mount: separate private remount conditions for external and non-external (#PSBM-42829) - plugin: Add PRE_DUMP stage into plugins - dump: save master_id for the root mount (#PSBM-43260) - crtools: describe the inherit-fd option - parasite: Don't left memfd opened inside dumpee (#PSBM-43199) - scripts: post-setup-namespaces - seize: remove extra \n from the error message (Cyrill Gorcunov ) - seize: don't detach from a task if a freezer cgroup is set (Cyrill Gorcunov ) - seize: detach from all processes before waiting the root task (Cyrill Gorcunov ) (#PSBM-43089) - make: Add Makefile.version (Cyrill Gorcunov )- pcs7: scritps: systemd-autofs-restart.sh -- Do not treat absence on bindmount as error (#PSBM-50684)- pcs7: cg: Don't dump devices.list (#PSBM-50551)- unix: don't drop the path on unix sockets if they don't exist- pcs7: Increase the number of files limit (#PSBM-50607) - pcs7: scripts: remove obsolete scripts - pcs7: cr-restore: use spfs helpers to control spfs manager - pcs7: spfs: add new helpers to replces bash scripts calls- pcs7: files-reg: move ghost_apply_metadata out of create_ghost_dentry- pcs7: Lift up local version - pcs7: Dump only known controllers (#PSBM-46382) - pcs7: log: Print version into the log (#PSBM-50239) - pcs7: mount: create a temporary mount to restore shared and master groups (#PSBM-47508) - pcs7: files-reg: fix silly-renamed files migration - pcs7: files-reg: improve spfs_file helper - pcs7: mount: sysfs -- Use slave mounting for the root (#PSBM-50010) - pcs7: util-vdso: correct vdso symbol's length - pcs7: Makefile: install spfs-release-replace.sh script (#PSBM-49726) - pcs7: files: Allow to dump ploopX files opened (#PSBM-49723) - pcs7: spfs: remove obsolete code - pcs7: files-reg: migrate "spfs" files as ghost-ones - pcs7: files-reg: conditionally dump content in dump_ghost_file - pcs7: util: mkdirname helper introduced - pcs7: files-reg: split create_ghost - pcs7: files_reg: remove unused "struct ghost_file" from mkreg_ghost prototype - pcs7: seize: Wait the freezer to complete before processing tags (#PSBM-49439) - pcs7: dump: Move task_comm_info helpers into seize.c - pcs7: spfs: do not tolerate file existence on creation - pcs7: dump: Show task comm early - pcs7: spfs: add device files creation support (#PSBM-48985) - pcs7: spfs: fix freeze cgroup path discovery - pcs7: cgroup: new_cg_root_get helper introduced - pcs7: criu: remove NFS unlinked files restriction - pcs7: files-reg: migrate spfs unlinked file as "link remap" objects - pcs7: files-reg: migrate spfs file as "link remap" objects - pcs7: spfs: pass mount ID instead of namespace descriptor to spfs_create_file - pcs7: spfs: explicitly pass size and mode to spfs_create_file - pcs7: link_remap: do not create excessive links for a single file - pcs7: proc_parse: fix vma file open mode recognition (#PSBM-49199) - pcs7: log: files-ext -- Show exactly which file can't be dumped - pcs7: criu: util -- Add __read_fd_link helper - pcs7: mount: forbid dumping overmounted NFS (#PSBM-48620) - pcs7: zdtm: add a new test to check netlink sockets with queued data - pcs7: netlink: restore data in a received queue for netlink sockets (#PSBM-28386) - pcs7: sk-queue: add an ability to dump addresses for messages - pcs7: check: check whether NETLINK_REPAIR is supported or not - pcs7: netlink: request flags for netlink sockets - pcs7: files-reg: forbid to dump unlinked NFS files - pcs7: proc_parse: forbid dumping NFS remote locks - pcs7: files-reg: remove "unreachable" protobuf field as redundant - pcs7: files-reg: create spfs file in case of parent mount is SPFS - pcs7: files-reg: do not create spfs file in case of external resource - pcs7: spfs: remove "ns_list" option from "replace" command as obsolete - pcs7: namespace: mark mount namespaces as populated after the forking stage (#PSBM-48222) - pcs7: arch, x86 -- Add support for vz7 specific cpuid masking (#PSBM-47748 #PSBM-49423) - pcs7: scripts: remove bogus command substitution in nfs-ports-allow.sh (#PSBM-44207) - pcs7: scripts: restart all systemd automount services (#PSBM-46672) - pcs7: sk-unix: Fix path resolving for sockets with abs symlinks in paths - pcs7: util: Add cr_set_root/cr_restore_root helpers - pcs7: spfs: do not treat existent file as error in create_reg_file - pcs7: seize: Take --timeout option into account when freezing processes (#PSBM-47539 #PSBM-47538) - pcs7: scripts: spfs-release-replace.sh introduced - pcs7: criu: spfs -- Fixup various nits for NFS sake - pcs7: nfs: build -- Add install of spfs-change-mode.sh and nfs-ports-allow.sh - pcs7: mounts: mount spfs instead of NFSv3 and NFSv4 (#PSBM-26967) - pcs7: mount: add support for NFSv4 - pcs7: protobuf/mnt.proto: NFSv4 type added - pcs7: mount: add support for NFS - pcs7: protobuf/mnt.proto: NFS type added - pcs7: mount: add support for SUNRPC Pipefs - pcs7: protobuf/mnt.proto: RPC Pipefs type added - pcs7: scripts: allow-nfs-ports.sh added - pcs7: action-scripts: ACT_POST_NET_LOCK stage added - pcs7: scripts: spfs-change-mode.sh added - pcs7: action scripts: set spfs environment in run_scripts - pcs7: regular files: create temporary spfs file if marked as unreachable - pcs7: spfs: delayed mounts facility introduced - pcs7: cr-restore: declare SPFS_MNGR_SK service fd - pcs7: regular files: protobuf "unreachable" field introduced - pcs7: filemap: collect mapped file fs type - pcs7: reg_file_entry: add "mode" variable - pcs7: aio: Don't fail if kernel does not support aio wait (#PSBM-42488) - pcs7: Wait aio pending requests (#PSBM-42488) - pcs7: criu: tty -- Restore tty params synchronously (#PSBM-46382) - pcs7: Initial sync with vanilla v2.4- log: Print version into the log (#PSBM-50239) - files-reg: fix silly-renamed files migration - files-reg: improve spfs_file helper - mounts: export is_root_mount helper- Revert "sk-unix: forbid to dump NFS unix sockets" (#PSBM-47017)- mount: sysfs -- Use slave mounting for the root (#PSBM-50010) - util-vdso: correct vdso symbol's length- Makefile: install spfs-release-replace.sh script (#PSBM-49726)- files: Allow to dump ploopX files opened (#PSBM-49723) - version: Adjust numbering - Revert "files_reg: carry rdev with regular files"- seize: Wait the freezer to complete before processing tags (#PSBM-49439) - spfs: remove obsolete code - files-reg: migrate "spfs" files as ghost-ones - files-reg: conditionally dump content in dump_ghost_file - util: mkdirname helper introduced - files-reg: split create_ghost - files_reg: remove unused "struct ghost_file" from mkreg_ghost prototype - dump: Move task_comm_info helpers into seize.c- pcs7: arch, x86 -- Fix typo in cpuid masking code (#PSBM-49423) - spfs: do not tolerate file existence on creation- dump: Show task comm early - spfs: add device files creation support (#PSBM-48985) - files_reg: carry rdev with regular files- spfs: fix freeze cgroup path discovery - cgroup: new_cg_root_get helper introduced - criu: remove NFS unlinked files restriction - files-reg: migrate spfs unlinked file as "link remap" objects - files-reg: migrate spfs file as "link remap" objects - spfs: pass mount ID instead of namespace descriptor to spfs_create_file - spfs: explicitly pass size and mode to spfs_create_file - link_remap: do not create excessive links for a single file - cr-dump: discover fs type in fill_fd_params_special - proc_parse: fix vma file open mode recognition (#PSBM-49199) - Set hash for -u1 branch- tty: Don't forget to add eol when inverting slave pts paths (#PSBM-49008)- tty: Fix typos in vt driver choosing (#PSBM-48614)- mount: don't do MS_REC|MS_PRIVATE for host mounts (#PSBM-46298) - log: files-ext -- Show exactly which file can't be dumped - criu: util -- Add __read_fd_link helper- mount: forbid dumping overmounted NFS (#PSBM-48620)- zdtm: add a new test to check netlink sockets with queued data - netlink: restore data in a received queue for netlink sockets (#PSBM-28386) - netlink: request flags for netlink sockets - sk-queue: add an ability to dump addresses for messages - check: check whether NETLINK_REPAIR is supported or not - unix: Do not autobind unnamed unix sockets (#PSBM-48446) - pcs7: images: Sync format with vanilla criu (#PSBM-48283) - sk-unix: forbid to dump NFS unix sockets - files-reg: forbid to dump unlinked NFS files - proc_parse: forbid dumping NFS remote locks - files-reg: remove "unreachable" protobuf field as redundant - files-reg: create spfs file in case of parent mount is SPFS - files-reg: do not create spfs file in case of external resource- spfs: remove "ns_list" option from "replace" command as obsolete- rpc: Implement @timeout interface (#PSBM-48256)- namespace: mark mount namespaces as populated after the forking stage (#PSBM-48222)- rpc: Add interface --freeze-cgroup option (#PSBM-44613) - pcs7: arch, x86 -- Add support for vz7 specific cpuid masking (#PSBM-47748) - dump: Allocate root_item before run pre-dump scripts (#PSBM-47737) - scripts: remove bogus command substitution in nfs-ports-allow.sh (#PSBM-44207)- net/sysctl: fix ipv4 forwarding (#PSBM-47355) - scripts: terminate systemd-autofs-restart.sh if saved mountpoint is missing (#PSBM-44207) - scripts: return non zero if save_mountpoint() fails (#PSBM-44207) - scripts: remove bogus command substitution in systemd-autofs-restart.sh (#PSBM-44207) - scripts: detect EOF on read in a usual way in systemd-autofs-restart.sh (#PSBM-44207)- mount: don't add a separate entry for each enabled file systems (#PSBM-47221)- scripts: restart all systemd automount services (#PSBM-46672)- sk-unix: Fix path resolving for sockets with abs symlinks in paths - util: Add cr_set_root/cr_restore_root helpers- zdtm/ptrace_sig: don't print from signal handlers (#PSBM-47772) - test: file_locks01 -- Test for dev change if only env is set (#PSBM-47714) - test: fanotify00 -- Test for device change if only env set - test: static, fanotify00 -- Don't compare @s_dev in test (#PSBM-47667)- spfs: do not treat existent file as error in create_reg_file - seize: Take --timeout option into account when freezing processes (#PSBM-47539 #PSBM-47538) - mount: create a temporary mount to restore shared and master groups (#PSBM-47508) - build: Don't forget to relink arch builtins on change - scripts: spfs-release-replace.sh introduced - Revert "scripts: spfs-release-replace.sh introduced" - scripts: spfs-release-replace.sh introduced - scripts: call readlink in CT context in systemd-autofs-restart.sh - scripts: single style for command substitution in systemd-autofs-restart.sh (#PSBM-44207) - tty: Don't forget to unblock tty peers - tty: Save @flags unconditionaly for consistency - zdtm: check in-flight data in ttys - tty: Write unread pty buffers on post dump stage (#PSBM-41399)- criu: don't interrupt do_new_mount() after appling mount options (#PSBM-47489)- aio: Consider AIO pages as "should be dumped" (#PSBM-47489) - test/sockets: add test for shut down stream unix sockets (#PSBM-47023) - sk-unix: ignore shutdown mismatch in unix sockets - scripts: fix strings comparison in systemd-autofs-restart.sh- net/sysctl: zero-init stable_secret strings (#PSBM-30942) - net/sysctl: remove excess type conversions for sysctl_entry.type - net/sysctl: silence read error in case of CTL_FLAGS_READ_EIO_SKIP - zdtm/net/ipv6: add test for string stable_secret - sysctl: fix allocation for array of pointers - zdtm/net/ipv6: add test for confs - zdtm/net/ipv6: add devconfs6 and rand_range6 - zdtm/net/ipv6: allow inacurate match for mldvX_unsolicited_report_interval - zdtm/net/ipv4: split save_and_set and check_and_restore - zdtm/net/ipv4: replace rand limits with rand ranges - zdtm/net/ipv4: make save_and_set and check_and_restore reusable - restore/net/ipv6: net device and def/all configuration - dump/net/ipv6: net device and def/all configuration - net/ipv6: add devconfs6 array to store config option's names - net/ipv6/protobuf: add device config options for ipv6 - net/ipv4: add net_conf_op to reuse for ipv6 - protobuf: add SysctlEntry for ipv4/ipv6 sysctl confs or some others - sysctl: add CTL_FLAGS_HAS to mark successful sysctl_op request - zdtm/net/ipv4: rename devconfs4 and rand_limit4 and dir4 - net/ipv4: suffix devconfs with "4" - net/ipv4: add new sysctls - pcs7: criu: spfs -- Fixup various nits for NFS sake- pcs7: nfs: build -- Add install of spfs-change-mode.sh and nfs-ports-allow.sh - pcs7: mounts: mount spfs instead of NFSv3 and NFSv4 (#PSBM-26967) - pcs7: mount: add support for NFSv4 - pcs7: protobuf/mnt.proto: NFSv4 type added - pcs7: mount: add support for NFS - pcs7: protobuf/mnt.proto: NFS type added - pcs7: mount: add support for SUNRPC Pipefs - pcs7: protobuf/mnt.proto: RPC Pipefs type added - pcs7: scripts: allow-nfs-ports.sh added - pcs7: action-scripts: ACT_POST_NET_LOCK stage added - pcs7: scripts: spfs-change-mode.sh added - pcs7: action scripts: set spfs environment in run_scripts - pcs7: regular files: create temporary spfs file if marked as unreachable - pcs7: spfs: delayed mounts facility introduced - pcs7: cr-restore: declare SPFS_MNGR_SK service fd - pcs7: regular files: protobuf "unreachable" field introduced - pcs7: filemap: collect mapped file fs type - pcs7: reg_file_entry: add "mode" variable - Add requirement for spfs package- pcs7: cgroup: Fix early update of @dir_name in rewrite_cgsets (#PSBM-46987) - plugins: Initialize plugins control by default- pcs7: mount: add support for external block devices (#PSBM-39381)- pcs7: aio: Fix mmap retval analysing- pcs7: aio: Don't fail if kernel does not support aio wait (#PSBM-42488) - pcs7: Wait aio pending requests (#PSBM-42488)- mount: create a clean mount only if a sub directory is bind-mounted (#PSBM-46908) - mount: dump a file system only if a mount point isn't overmounted (#PSBM-46908) - mount: don't overmount a mount if it should be bind-mounted somewhere (#PSBM-46908) - Revert "mount: dump a file system only if a mount point isn't overmounted" - Revert "mount: don't overmount a mount if it should be bind-mounted somewhere"- scripts: fix mountinfo parsing in systemd-autofs-restart.sh (#PSBM-46889)- mount: don't overmount a mount if it should be bind-mounted somewhere (#PSBM-46732 #PSBM-46662) - mount: remove an extra condition from mounts_equal() - mount: handle a case when parent and child mounts in the same directory - mount: dump a file system only if a mount point isn't overmounted - Revert "mount: don't overmount a mount if it should be bind-mounted somewhere" (#PSBM-46732) - autofs: support of "hidden" catatonic mounts (#PSBM-46572) - autofs: rework pipe search logic a bit - build: Add ability to generate gprof output- autofs: support of "hidden" catatonic mounts (#PSBM-46572) - autofs: rework pipe search logic a bit - build: Add ability to generate gprof output- pcs7: scripts -- Make sure -1 pid is not passed (#PSBM-46572)- pcs7: Increase the number of files limit (#PSBM-46761)- scripts: do not use stat to discover fs type in systemd-autofs-restart.sh (#PSBM-46756)- scripts: save and restore target mount for autofs service (#PSBM-46672)- mount: don't overmount a mount if it should be bind-mounted somewhere (#PSBM-46662)- pcs7: Dump only known controllers (#PSBM-46382) - Revert "cg: Add ability to dump predefined controllers only"- Revert "pcs7: Increase the number of files limit" - criu: dump filemap as soon as possible (#PSBM-46355)- autofs: collect new pipe fd as used (#PSBM-46601)- autofs: do not create dentries for indirect mount on bind-mounts (#PSBM-46572)- pcs7: Increase the number of files limit (#PSBM-46355) - build: install -- Don't forget to init DESTDIR - scripts: fix typo in binary path in systemd-autofs-restart.sh - restore: Wait for userns being prepared before moving into cgroups (v3) - Revert "restore: Wait for userns being prepared before moving into cgroups (v2)" - cg: Add ability to dump predefined controllers only (#PSBM-46382)- scripts: join pid namespace in systemd-autofs-restart.sh (#PSBM-46470) - files: try to change fsuid only if linkat() failed (#PSBM-46201) - criu: tty -- Restore tty params synchronously (#PSBM-46382)- restore: Wait for userns being prepared before moving into cgroups (v2) (#PSBM-46360) - Revert "restore: Wait for userns being prepared before moving into cgroups"- autofs: use temporary value for virtual pgrp on dump - restore: Wait for userns being prepared before moving into cgroups (#PSBM-46360)- files: Correctly handle tasks with no open file descriptors (#PSBM-46269)- autofs: install -- Fix libexec prefix (#PSBM-46249) - autofs: install -- Ship scripts/systemd-autofs-restart.sh (#PSBM-46249)- autofs: install -- Ship scripts/systemd-autofs-restart.sh (#PSBM-46249) - autofs: install -- Ship {_libexecdir}- pcs7: Update Makefile.local - criu: action-scripts -- Don't access @root_item_pid if not present - zdtm: check the mem_dirty_track if --pre or --snap is set (Pavel Emelyanov ) - ppc64le: fix build with UFFD (Pavel Emelyanov ) - Fix compilation of action-scripts.c (Pavel Emelyanov ) - kdat: Remove tcp_max_rshare (Pavel Emelyanov ) - tcp: Send as much as possible (Pavel Emelyanov ) - join-ns: Fix join-ns zdtm test (Pavel Emelyanov ) - sk: handle erorors of lseek (Pavel Emelyanov ) - util: don't leak a socket (Pavel Emelyanov ) - namespaces: don't leak memory on error paths (Pavel Emelyanov ) - cr-restore: set NS_PID environment variable before "post-resume" hook (Pavel Emelyanov ) - scripts: systemd-autofs-restart.sh added (Pavel Emelyanov ) - build: Add export of sublevels and extra (Pavel Emelyanov ) - build: compel -- Drop double targeting (Pavel Emelyanov ) - cr-restore: "post-resume" hook introduced (Pavel Emelyanov ) - criu: opts -- Shuffle init_opts order (Pavel Emelyanov ) - compel: Drop config.h from deps (Pavel Emelyanov ) - ns: Options join-ns and unshare are conflicting (Pavel Emelyanov ) - compel: Initial commit for standalone tool (Pavel Emelyanov ) - compel: piegen -- Introduce actions (Pavel Emelyanov ) - compel: piegen -- Add @arch option (Pavel Emelyanov ) - compel: piegen -- Add @uapi-dir option (Pavel Emelyanov ) - join-ns: add join-ns zdtm test (Pavel Emelyanov ) - join-ns: perform join_namespace according to join-ns opts (Pavel Emelyanov ) - join-ns: add join-ns option to criu CLI and RPC (Pavel Emelyanov ) - uffd: add handling of zero pages (Pavel Emelyanov ) - uffd: introduce uffd_handle_page (Pavel Emelyanov ) - uffd: increment uffd_copied_pages only in one place (Pavel Emelyanov ) - uffd.c: move the code out of the 'main' function (Pavel Emelyanov ) - uffd.c: make some variable static global (Pavel Emelyanov ) - uffd.c: move code into subfunctions (Pavel Emelyanov ) - uffd.c: remove unused variable vma_size (Pavel Emelyanov ) - autofs: free leaked opts in autofs_mount (Pavel Emelyanov ) - autofs: free leaked info in autofs_mount on error path (Pavel Emelyanov ) - autofs: free leaked AutofsEntry in autofs_dump_entry (Pavel Emelyanov ) - autofs: do not close NULL image (Pavel Emelyanov ) - uffd: remove handling of VDSO pages (Pavel Emelyanov ) - uffd: do not treat VDSO pages as lazy (Pavel Emelyanov ) - uffd: Fix pr_debug format for vma start (Pavel Emelyanov ) - autofs: fix device id modifier on error path in autofs_mnt_open (Pavel Emelyanov ) - autofs: fix device id printf modifier on error path in autofs_mnt_open (Pavel Emelyanov ) - autofs: do not treat old kernel as error in autofs_parse() (Pavel Emelyanov ) - autofs: include limit.h before auto_fs.h (Pavel Emelyanov ) - autofs: fix build on Fedora 22 (Pavel Emelyanov ) - uffd.c: do not call unneeded functions (Pavel Emelyanov ) - cr-restore: move add_ns_shared_cb declaration to include/namespaces.h (Pavel Emelyanov ) - Fix userfaultfd code with newer compilers (Pavel Emelyanov ) - check: "autofs" feature added (Pavel Emelyanov ) - zdtm.py: create "dev/autofs" root contruction (Pavel Emelyanov ) - zdtm: add autofs test (Pavel Emelyanov ) - mount: create target directory for AutoFS indirect mounts. (Pavel Emelyanov ) - autofs: restore stage introduced (Pavel Emelyanov ) - autofs: declare ioctl helpers and constants (Pavel Emelyanov ) - pipes: export collect_one_pipe_ops() helper (Pavel Emelyanov ) - files: new dup_fdinfo() and dup_fle() helpers introduced (Pavel Emelyanov ) - files: new "used" files list introduced (Pavel Emelyanov ) - autofs: dump fsinfo stage introduced (Pavel Emelyanov ) - autofs: parse fsinfo stage introduced (Pavel Emelyanov ) - protobuf: autofs entry introduced (Pavel Emelyanov ) - devices: add support for /dev/autofs (Pavel Emelyanov ) - protobuf/mnt.proto: AutoFS type added (Pavel Emelyanov ) - unshare: Check private remount error code (Pavel Emelyanov ) - unshare: Define UNSHARE_MOUNT_PROC constant (Pavel Emelyanov ) - pstree: try to find a free pid between busy pids (v2) (Pavel Emelyanov ) - pstree: use rbtree to find a specified pid (v3) (Pavel Emelyanov ) - pstree: prepare to store all pid-s in rb-tree (v3) (Pavel Emelyanov ) - pstree: split alloc_pstree_helper (Pavel Emelyanov ) - pstree: move state from pstree_item to pid (Pavel Emelyanov ) - Try to include userfaultfd with criu (part 2) (Pavel Emelyanov ) - Try to include userfaultfd with criu (part 1) (Pavel Emelyanov ) - Remove static from prepare_task_entries function (Pavel Emelyanov ) - Make skip_pages function available criu-wide (Pavel Emelyanov ) - unshare: Support pidns (Pavel Emelyanov ) - unshare: Mount new proc (Pavel Emelyanov ) - unshare: Support mntns (Pavel Emelyanov ) - unshare: Preparations and CLI option (Pavel Emelyanov ) - pcs7: Extend version output via local build (#PSBM-45009) - build: criu -- Don't forget to cleanup arch directory - cg: Add rollback in get_cg_set (#PSBM-45553) - cg: Add rollback for add_cgroup (#PSBM-45553) - cg: Fix use-after-free in put_ctls (#PSBM-45553) - pie: open_detach_mount -- Use pr_perror for regular build - util: return aligned pointers from shmalloc() - Makefile: drop 'rebuild' from help message - nmk: build.mk -- Add @libso-y helper - nmk: build.mk -- Add @hostprogs-y mode - nmk: msg.mk -- Add host- messages - nmk: build.mk -- Shrink gen-cc-rules - nmk: build.mk -- Drop any-match rule - nmk: build.mk -- Fix deps for target mode - nmk: build.mk -- Squash gen-rule-x into gen-cc-rules - nmk: Drop rules.mk - nmk: rules.mk -- Fix AFLAGS typo - tests: remap_dead_pid[_root] -- Run in namespace only - log: add gnu-styled output to stdout - build: images -- Add missing cleanups - namespaces: zero struct ns_id when allocating - criu: use strsignal to describe kill reason - nmk: build.mk -- Fix ar rule for external libs - nmk: build.mk -- Make process depend on Makefile itself - nmk: build.mk -- On cleanup use cleanup-y only - nmk: utils.mk -- Add cleanify helper - nmk: utils.mk -- Drop redundant spaces - nmk: build.mk -- Fix typo in gen-ar-target-rule - nmk: rules.mk -- Add per-obj flags - nmk: build.mk -- Drop unused objlist target - nmk: rules.mk -- Drop @CFLAGS_ and @ASFLAGS_ but add ability to bring them via param - build: add mrproper target - build/nmk: add mrproper-y - build: Drop @images - nmk: scritps/macro.mk -- Enhance gen-built-in - x86/restorer: drop unused struct pt_regs - types: Remove setns override with sys_setns - rst-malloc: adjust free_bytes in rst_mem_align_cpos - netfilter: add -n to iptables and ip6tables calls - build: docs -- Use autogenerated footer - pstree: try to find a free pid between busy pids (v2) - pstree: use rbtree to find a specified pid (v3) - pstree: prepare to store all pid-s in rb-tree (v3) - pstree: split alloc_pstree_helper - pstree: move state from pstree_item to pid - criu: seize -- Don't left dangling @processes_to_wait_pids pointer - libnetlink: back port a fix for nlattr_parse() - netlink: Use nlattr instead of rtattr - criu: pstree_switch_state -- Fix nil deref on error path - irmap: use kdev everywere - dump: check for conflicts with the dead processes - irmap: don't try to dereference a null pointer - mounts: handle device numbers in different formats properly - criu: Use __NR_memfd_create for testing memfd presence - build: Conditionally defined SYS_* constants - build: criu -- Don't link with syscalls library - mount: don't use a shared mount to get a clean mount - mount: master_id should be 0 for new mounts - mount: restore a shared group for propagated mounts - build: clean up various other bits - build: Add verbose message on packages needed for CRIU building - build: Unify phony forms usage - pre-dump: don't waste time in error cases - dump: pre-dump should never kill processes - make: Improve tar generation - pcs7: Update local version - dump: don't call rollback actions from a signal handler (#PSBM-44371) - mounts: Skip already bound siblings in propagate_siblings() - PCS7: cgroup: Always restore predefined VE props (#PSBM-41406) - files-reg: Fix rm_parent_dirs() counter - files-reg: Delete ghost file numeric index - files-reg: Revert: Make try_clean_ghost() use struct ghost_file ptr - zdtm: Disable unlink_regular00 by default - zdtm: Add unlink_regular00 test - files-reg: Recreate deleted parent directories during restore of ghost file - files-reg: Create ghost files in first existing parent directory - files-reg: Move applying ghost file metadata from create_ghost() to separate function - files-reg: Make try_clean_ghost() use struct ghost_file ptr - files-reg: Refactor create_ghost() - seize: detach from external processes before killing dumped processes (v2) (#PSBM-43795) - mount: separate private remount conditions for external and non-external (#PSBM-42829) - plugin: Add PRE_DUMP stage into plugins - dump: save master_id for the root mount (#PSBM-43260) - crtools: describe the inherit-fd option - parasite: Don't left memfd opened inside dumpee (#PSBM-43199) - scripts: post-setup-namespaces - seize: remove extra \n from the error message (Cyrill Gorcunov ) - seize: don't detach from a task if a freezer cgroup is set (Cyrill Gorcunov ) - seize: detach from all processes before waiting the root task (Cyrill Gorcunov ) (#PSBM-43089) - make: Add Makefile.version (Cyrill Gorcunov )- pcs7: Extend version output via local build (#PSBM-45009)- build: criu -- Don't forget to cleanup arch directory - cg: Add rollback in get_cg_set (#PSBM-45553) - cg: Add rollback for add_cgroup (#PSBM-45553) - cg: Fix use-after-free in put_ctls (#PSBM-45553) - pie: open_detach_mount -- Use pr_perror for regular build - util: return aligned pointers from shmalloc() - Makefile: drop 'rebuild' from help message - nmk: build.mk -- Add @libso-y helper - nmk: build.mk -- Add @hostprogs-y mode - nmk: msg.mk -- Add host- messages - nmk: build.mk -- Shrink gen-cc-rules - nmk: build.mk -- Drop any-match rule - nmk: build.mk -- Fix deps for target mode - nmk: build.mk -- Squash gen-rule-x into gen-cc-rules - nmk: Drop rules.mk - nmk: rules.mk -- Fix AFLAGS typo - tests: remap_dead_pid[_root] -- Run in namespace only - log: add gnu-styled output to stdout - build: images -- Add missing cleanups - namespaces: zero struct ns_id when allocating - criu: use strsignal to describe kill reason - nmk: build.mk -- Fix ar rule for external libs - nmk: build.mk -- Make process depend on Makefile itself - nmk: build.mk -- On cleanup use cleanup-y only - nmk: utils.mk -- Add cleanify helper - nmk: utils.mk -- Drop redundant spaces - nmk: build.mk -- Fix typo in gen-ar-target-rule - nmk: rules.mk -- Add per-obj flags - nmk: build.mk -- Drop unused objlist target - nmk: rules.mk -- Drop @CFLAGS_ and @ASFLAGS_ but add ability to bring them via param - build: add mrproper target - build/nmk: add mrproper-y - build: Drop @images - nmk: scritps/macro.mk -- Enhance gen-built-in - x86/restorer: drop unused struct pt_regs - types: Remove setns override with sys_setns- rst-malloc: adjust free_bytes in rst_mem_align_cpos- netfilter: add -n to iptables and ip6tables calls - build: docs -- Use autogenerated footer - pstree: try to find a free pid between busy pids (v2) - pstree: use rbtree to find a specified pid (v3) - pstree: prepare to store all pid-s in rb-tree (v3) - pstree: split alloc_pstree_helper - pstree: move state from pstree_item to pid- criu: seize -- Don't left dangling @processes_to_wait_pids pointer- libnetlink: back port a fix for nlattr_parse() - netlink: Use nlattr instead of rtattr- criu: pstree_switch_state -- Fix nil deref on error path- irmap: use kdev everywere - dump: check for conflicts with the dead processes - irmap: don't try to dereference a null pointer - mounts: handle device numbers in different formats properly - criu: Use __NR_memfd_create for testing memfd presence - build: Conditionally defined SYS_* constants - build: criu -- Don't link with syscalls library - mount: don't use a shared mount to get a clean mount - mount: master_id should be 0 for new mounts - mount: restore a shared group for propagated mounts - build: clean up various other bits - build: Add verbose message on packages needed for CRIU building - build: Unify phony forms usage - pre-dump: don't waste time in error cases - dump: pre-dump should never kill processes - make: Improve tar generation - pcs7: Update local version - dump: don't call rollback actions from a signal handler (#PSBM-44371) - mounts: Skip already bound siblings in propagate_siblings() - PCS7: cgroup: Always restore predefined VE props (#PSBM-41406) - files-reg: Fix rm_parent_dirs() counter - files-reg: Delete ghost file numeric index - files-reg: Revert: Make try_clean_ghost() use struct ghost_file ptr - zdtm: Disable unlink_regular00 by default - zdtm: Add unlink_regular00 test - files-reg: Recreate deleted parent directories during restore of ghost file - files-reg: Create ghost files in first existing parent directory - files-reg: Move applying ghost file metadata from create_ghost() to separate function - files-reg: Make try_clean_ghost() use struct ghost_file ptr - files-reg: Refactor create_ghost() - seize: detach from external processes before killing dumped processes (v2) (#PSBM-43795) - mount: separate private remount conditions for external and non-external (#PSBM-42829) - plugin: Add PRE_DUMP stage into plugins - dump: save master_id for the root mount (#PSBM-43260) - crtools: describe the inherit-fd option - parasite: Don't left memfd opened inside dumpee (#PSBM-43199) - scripts: post-setup-namespaces - seize: remove extra \n from the error message (Cyrill Gorcunov ) - seize: don't detach from a task if a freezer cgroup is set (Cyrill Gorcunov ) - seize: detach from all processes before waiting the root task (Cyrill Gorcunov ) (#PSBM-43089) - make: Add Makefile.version (Cyrill Gorcunov ) - Add dep for libnl3-devel- dump: don't call rollback actions from a signal handler (#PSBM-44371)- mounts: Skip already bound siblings in propagate_siblings()- PCS7: cgroup: Always restore predefined VE props (#PSBM-41406)- files-reg: Fix rm_parent_dirs() counter - files-reg: Delete ghost file numeric index - files-reg: Revert: Make try_clean_ghost() use struct ghost_file ptr - zdtm: Disable unlink_regular00 by default - zdtm: Add unlink_regular00 test - files-reg: Recreate deleted parent directories during restore of ghost file - files-reg: Create ghost files in first existing parent directory - files-reg: Move applying ghost file metadata from create_ghost() to separate function - files-reg: Make try_clean_ghost() use struct ghost_file ptr - files-reg: Refactor create_ghost()- seize: detach from external processes before killing dumped processes (v2) (#PSBM-43795)- mount: separate private remount conditions for external and non-external (#PSBM-42829)- plugin: Add PRE_DUMP stage into plugins- dump: save master_id for the root mount (#PSBM-43260) - crtools: describe the inherit-fd option - parasite: Don't left memfd opened inside dumpee (#PSBM-43199)- gitignore: ignore some more generated testcases (Pavel Emelyanov ) - seize: remove extra \n from the error message (Pavel Emelyanov ) - seize: don't detach from a task if a freezer cgroup is set (Pavel Emelyanov ) - seize: detach from all processes before waiting the root task (Pavel Emelyanov ) (#PSBM-43089) - zdtm: Add suid flag to binfmt_misc test (Pavel Emelyanov ) - ns: Remove __rst_new_ns_id (Pavel Emelyanov ) - fds: Remove unused arg from close_old_fds() (Pavel Emelyanov ) - tmpfs: don't try to dump mountpoint at 0 fd (Pavel Emelyanov ) - criu [PATCH] post-setup-namespaces (Pavel Emelyanov ) - service: add support for the --external option (Pavel Emelyanov ) - dump: add some stray newlines to pr_infos (Pavel Emelyanov ) - binfmt_misc: Make debug printed using pr_debug() (Pavel Emelyanov ) - zdtm: Add binfmt_misc test (Pavel Emelyanov )- scripts: post-setup-namespaces - seize: remove extra \n from the error message (Cyrill Gorcunov ) - seize: don't detach from a task if a freezer cgroup is set (Cyrill Gorcunov ) - seize: detach from all processes before waiting the root task (Cyrill Gorcunov ) (#PSBM-43089) - make: Add Makefile.version (Cyrill Gorcunov ) - ppc64: introduce CPU feature checking operations (Pavel Emelyanov ) - zdtm/test: Fix live/static/netns-nf dependency (Pavel Emelyanov ) - zdtm.py: Add optional dependency support (Pavel Emelyanov ) - mem: Handle the case when kernel doesn't support dirty track reset (Pavel Emelyanov ) - kdat: Handle pagemaps with zeroed pfns (Pavel Emelyanov ) - zdtm: Use /usr/bin/diff instead of /bin/diff (Pavel Emelyanov ) - remap: fix dead pid remap of /proc/ (Pavel Emelyanov ) - test/session00: close a signal pipe in all processes (Pavel Emelyanov ) - fix compilation after previous commit (Pavel Emelyanov ) - util: Optimize vaddr_to_pfn (Pavel Emelyanov ) - zdtm/chroot: wait when a child closes a descriptor (Pavel Emelyanov ) - make: update target to measure code coverage (Pavel Emelyanov ) - zdtm/session00: wait when a child closes fd (Pavel Emelyanov ) - zdtm: Correct syscall numbers for fanotify00 testcase (Pavel Emelyanov ) - define macro for stack alignment (Pavel Emelyanov ) - tty: use PRIx64 to print dev_t (Pavel Emelyanov ) - zdtm.py: Force per-test logs if report is requested (Pavel Emelyanov ) - arch: define the readlinkat syscall for all architectures (Pavel Emelyanov ) - zdtm: Align stack pointer for arm64 (Pavel Emelyanov ) - restorer: Update RESTORE_ALIGN_STACK for arm64 (Pavel Emelyanov ) - restore: Align stack to 16 bytes for arm64 (Pavel Emelyanov ) - arm: Fix wrong system call number (Pavel Emelyanov ) - criu-log: introduce print_once (Pavel Emelyanov ) - kerndat: do not report errors on feature test (Pavel Emelyanov ) - dump: write an inventory image after dumping all processes (Pavel Emelyanov ) - test: add a new test to check external terminals (Pavel Emelyanov ) - zdtm: add a new test to check inherited tty-s (Pavel Emelyanov ) - tty: allow to dump and restore external terminals (v2) (Pavel Emelyanov ) - crtools: add ability to set list of external resources (Pavel Emelyanov ) - tty: use a pair of dev and rdev to identify a terminal (Pavel Emelyanov ) - jenkins: add a script to check inherit file descriptors (Pavel Emelyanov ) - mnt: Allow for external mounts to be fsroot ones (Pavel Emelyanov ) - zdtm.py: unfreeze test processes before killing them (Pavel Emelyanov ) - syscall: use a correct type for timer_t (Pavel Emelyanov ) - mount: Fix spelling error in a error message (Pavel Emelyanov ) - arm: proc_parse -- Fix u64 format warnings (Pavel Emelyanov ) - mount: change the root master_id on restore only (Pavel Emelyanov ) - cr-check: add logiuid feature (Pavel Emelyanov ) - criu: fetch kdat.has_loginuid value on C/R (Pavel Emelyanov ) - kerndat: add has_loginuid to kerndat_s (Pavel Emelyanov ) - creds: restore -- Honor rst_mem_alloc rules (Pavel Emelyanov ) - tcp: Try harder to restore recv queue (Pavel Emelyanov ) - zdtm.py: When no logs, do not add them to report (Pavel Emelyanov ) - zdtm.py: Mark nouser tests as such (Pavel Emelyanov ) - jenkins: Add user mode job (Pavel Emelyanov ) - proc: Fix aio mapping detection (Pavel Emelyanov ) - zdtm.py: Check how user-mode works (Pavel Emelyanov ) - parasite: Load code blobs via memfd (Pavel Emelyanov ) - proc: Use smaps path for file (Pavel Emelyanov ) - pagemap-cache: Use greedy mode if pagemap inaccessible (Pavel Emelyanov ) - vdso: Don't fail if pagemap is not accessbile (Pavel Emelyanov ) - dump: Dont read prohibited kernel files (Pavel Emelyanov ) - kerndat: Read anon shmem dev via maps (Pavel Emelyanov ) - util: Ability to ignore errno when opening proc (Pavel Emelyanov ) - parasite: Add @pad argument for syscall run (Pavel Emelyanov ) - proc: Get full file path into handle_vma (Pavel Emelyanov ) - criu: Remove security (Pavel Emelyanov ) - test: different_creds -- Enhance the testing (Pavel Emelyanov ) - zdtm: Add ARRAY_SIZE into the header (Pavel Emelyanov ) - zdtm: set the dumpable flag after setuid (v2) (Pavel Emelyanov ) - zdtm.py: don't worry if a test class doesn't have ns() and static() (Pavel Emelyanov ) - test/inhfd: use os.fdopen instead of a home-made class (Pavel Emelyanov ) - cpt/rst: access and modification time of ghost files (Pavel Emelyanov ) (#PSBM-41401) - creds: dump -- Implement per-thread dump of credentials (Pavel Emelyanov ) (#PSBM-41416) - creds: restore -- Implement per-thread restore of credentials (Pavel Emelyanov ) - creds: Move proc_status_creds::cap_X at the end of structure (Pavel Emelyanov ) (#PSBM-41416) - creds: Allocate CredsEntry for every thread in core_entry_alloc (Pavel Emelyanov ) - creds: protobuf -- Move @creds_entry into @thread_core_entry (Pavel Emelyanov ) (#PSBM-41416) - xmalloc: Add xmemdup helper (Pavel Emelyanov ) - arm: syscalls -- Wire in sys_setgroups (Pavel Emelyanov ) - ppc64: syscalls -- Wire in sys_setgroups (Pavel Emelyanov ) - x86: syscalls -- Wire in sys_setgroups (Pavel Emelyanov ) - Fix 'mnt_path' may be used uninitialized in this function (Pavel Emelyanov ) - zdtm_ct: Mount binfmt misc in ct creation (Pavel Emelyanov ) - jenkins: Mount binfmt misc in run_ct (Pavel Emelyanov ) - jenkins: build criu with debuginfo (Pavel Emelyanov ) - zdtm/file_locks04: use test_waitsig() to synchronize child and parent (Pavel Emelyanov ) - zdtm/fifo_wronly: wait when a child opens a file descriptor (Pavel Emelyanov ) - zdtm.sh: remove warnings about existent directories (Pavel Emelyanov ) - binfmt_misc: Skip dumping if it's not virtual (Pavel Emelyanov ) - zdtm.py: Test how freeze cgroup works (v2) (Pavel Emelyanov ) - zdtm/pstree: check return codes (Pavel Emelyanov ) - zdtm/pstree: read from a correct file descriptor (Pavel Emelyanov ) - test: wait when a prepartion stage will be completed (Pavel Emelyanov ) - pipe00: when while a child is preparing file descriptors (Pavel Emelyanov ) - zdtm/socket_close_data01: wait a child before c/r (Pavel Emelyanov ) - zdtm/sigpending: wait a child before C/R (Pavel Emelyanov ) - zdtm: don't hardcode file names in test soruces (Pavel Emelyanov ) - test: write_read10 -- Wait for children to create (Pavel Emelyanov ) - test: write_read_10 -- Fix typo in testing opened file descriptor (Pavel Emelyanov ) - zdtm:mntns_open: wait when a child process opens descriptors (Pavel Emelyanov ) - zdtm/mountpoints: wait when a child process opens descriptors (Pavel Emelyanov ) - files-reg: fix compilation issues (Pavel Emelyanov ) - mountpoints: don't re-create /dev/null (Pavel Emelyanov ) - rst: set mode on ghost-files after write (Pavel Emelyanov ) (#PSBM-41401) - dump: add timeout for collecting processes (Pavel Emelyanov ) - dump: factor out cleanup code into separate functions (Pavel Emelyanov ) - dump: fix return code in message on pre-dump failure (Pavel Emelyanov ) - seize: slightly cleanup collect_pstree() exit path. (Pavel Emelyanov ) - cr-restore: optimize {loginuid,oom_score_adj} restoring (Pavel Emelyanov ) - mount: use xsprintf() in resolve_external_mounts() (Pavel Emelyanov ) - sysfs_parse: use xsprintf() in fixup_aufs_vma_fd() (Pavel Emelyanov ) - irmap: use xsprintf() in irmap_update_dir() (Pavel Emelyanov ) - cgroup: use xsprintf() in rewrite_cgsets() (Pavel Emelyanov ) - mount: use xstrcat() in attach_option() (Pavel Emelyanov ) - util: new string helpers introduced (Pavel Emelyanov ) - test: block prctl in seccomp_filter (Pavel Emelyanov ) - pie: move seccomp before creds to avoid resoring them after setuid (Pavel Emelyanov ) - test: setuid in seccomp_filter test to have it fail (Pavel Emelyanov ) - ptrace: start tracing processes before restoring creds (Pavel Emelyanov ) - zdtm: check shared mounts more carefully (Pavel Emelyanov ) - mount: do nothing if a root mount isn't slave (Pavel Emelyanov ) - zdtm.py: fix comparing files, maps and mounts (Pavel Emelyanov ) - Fix compilation after previous commit (Pavel Emelyanov ) - files-reg: restore PR_SET_DUMPABLE flag after setfsuid (Pavel Emelyanov ) - unix: Fix double restoring of peerless unix sockets, which are peers for others (Pavel Emelyanov ) - loginuid: save value of loginuid from a target userns (Pavel Emelyanov ) - lsm: don't leak apparmor string in the case of "unconfined" (Pavel Emelyanov ) - zdtm.py: tests should not inherite file descriptors from zdtm.py (Pavel Emelyanov ) - seize: do not try to detach killed tasks (Pavel Emelyanov ) - zdtm: Change oom_score_adj score value (Pavel Emelyanov ) - files: check fd flags after restore (Pavel Emelyanov ) - restore: restore freezer cgroup state (Pavel Emelyanov ) - restore: split finalize_restore into two stages (Pavel Emelyanov ) - cgroups: save freezer state during dump (Pavel Emelyanov ) - crit: The 'mems' explorer (Pavel Emelyanov ) - crit: The 'fds' explorer (Pavel Emelyanov ) - crit: The 'ps' explorer (Pavel Emelyanov ) - crit: Explore action and stubs (Pavel Emelyanov ) - zdtm.py: bind-mount a test root as slave (Pavel Emelyanov ) - makefile: use zdtm.py to execute tests (Pavel Emelyanov ) - zdtm.py: compare a set of mounts before and after c/r (Pavel Emelyanov ) - zdtm.sh: fix a value of ZDTM_THREAD_BOMB (Pavel Emelyanov ) - zdtm.py: don't mix tab and spaces (Pavel Emelyanov ) - zdtm.py: collect fds and maps for all test processes (Pavel Emelyanov ) - mount: don't take into acount the root master_id (Pavel Emelyanov ) - mount: don't remount a slave mount as private when it isn't required (Pavel Emelyanov ) - zdtm: add loginuid restore test (Pavel Emelyanov ) - zdtm: add test for oom_score_adj restore (Pavel Emelyanov ) - criu: unset loginuid value before creating userns (Pavel Emelyanov ) (#PSBM-41993) - criu: restore loginuid & oom_score_adj values (Pavel Emelyanov ) (#PSBM-41993) - criu: dump loginuid & oom_score_adj values (Pavel Emelyanov ) (#PSBM-41993) - make: Fix @install-criu target (Pavel Emelyanov ) - test: report actual errno on seccomp prctl failure (Pavel Emelyanov ) - zdtm.py: Add action for cleaning nsroot (Pavel Emelyanov ) - Rename cr_opts.ps_port into port (Pavel Emelyanov ) - Introduce the read_into_buffer helper (Pavel Emelyanov ) - seize: don't wory if a cgroup contains some extra tasks (v3) (Pavel Emelyanov ) - fstype: "mount" callback introduced (Pavel Emelyanov ) - pstree: more pstree-related helpers (Pavel Emelyanov ) - jenkins: No parallelizm for group test (Pavel Emelyanov ) - zdtm.py: Add write perms for all bins in test (Pavel Emelyanov ) - zdtm: Fix compilation after previous commit (Pavel Emelyanov ) - jenkins: Add groups (Pavel Emelyanov ) - freebind: Use different ports (Pavel Emelyanov ) - zdtm.py: Fix deps for group start (Pavel Emelyanov ) - criu: tty: pick only master as a control terminal (Pavel Emelyanov ) (#PSBM-42093) - test: Add inotify02 into the Makefile (Pavel Emelyanov ) - crit: Speed up jenkins test ~60 times (Pavel Emelyanov ) - crit: Fix ipc load/dump for io.BytesIO input/output (Pavel Emelyanov ) - crit: Add dump for semaphores (Pavel Emelyanov ) - crit: Add handling of msgqueue (Pavel Emelyanov ) - crit: Add dump method for shmem pages (Pavel Emelyanov ) - crit: Add payload handler for shmem pages (Pavel Emelyanov ) - crit: Add payload handler for semaphore images (Pavel Emelyanov ) - zdtm.py: Add step-by-step execution (Pavel Emelyanov ) - zdtm.py: Print out and strace file names (Pavel Emelyanov ) - zdtm.py: Print test output on screen when possible (Pavel Emelyanov ) - zdtm.py: catch KeyError instead of ValueError for sets (Pavel Emelyanov ) - mount: fix a race between restoring namespaces and file mappings (v2) (Pavel Emelyanov ) - mount: pick out a function to set ROOT_FD_OFF (Pavel Emelyanov ) - crit: Fix casts for fixed and sfixed types (Pavel Emelyanov ) - seize: get_freezer_state -- Relax stack (Pavel Emelyanov ) - zdtm.sh: set a type argument for mknod (Pavel Emelyanov ) - zdtm.py: don't worry if uns isn't in run_flavs (Pavel Emelyanov ) - mount: stop doing anything if populate_mnt_ns() failed (Pavel Emelyanov ) - mount: don't worry if a binfmt_misc image is empty (Pavel Emelyanov ) - jenkins: Fix CRIT test to skip non-criu images and provide cumulative output (Pavel Emelyanov ) - mount: don't add dot to a path (Pavel Emelyanov ) - crit: Pretty print vma flags and status (Pavel Emelyanov ) - mount: umount a temporary mount with MTN_DETACH (Pavel Emelyanov ) - pagemap-cache: add const-qualifier to pmc's vma (Pavel Emelyanov ) - page-xfer: fix wrong hole address offset (Pavel Emelyanov ) - test: Add inotify02 (Pavel Emelyanov ) - zdtm.py: Fix zdtm_test._env data type (Pavel Emelyanov ) - sysctl: don't skip erros (Pavel Emelyanov ) - sysctl: really skip missing entries in __nonuserns_sysctl_op() (Pavel Emelyanov ) - criu: x86_32: change stack align to 16 bit on parasite head (Pavel Emelyanov ) - criu: add the mnt_id feature if a test uses more than one mntns (Pavel Emelyanov ) - zdtm.py: skip the uns flavor if userns isn't suppported (Pavel Emelyanov ) - lsm: add a --lsm-profile flag (Pavel Emelyanov ) - crit: Encode back pretty IP addresses (Pavel Emelyanov ) - crit: Show devices nicely (Pavel Emelyanov ) - jenkins: Add test for crit de/encode correctness (Pavel Emelyanov ) - zdtm.py: Run tests in best flavor (Pavel Emelyanov ) - zdtm.py: Count skipped tests (Pavel Emelyanov ) - mount: don't rewrite root for external mounts (Pavel Emelyanov ) (#PSBM-41932) - unix: Add support for restoring receive queue for unix DGRAM sockets (Pavel Emelyanov ) - zdtm: add mntns_rw_ro_rw to the test list (Pavel Emelyanov ) - mount: fix restoring a bind-mount when its root is overmounted (Pavel Emelyanov ) - mount: refactor do_bind_mount() (Pavel Emelyanov ) - mount: pick out a function to bind mount a point in a tmp place (Pavel Emelyanov ) - mnt: Carry run-time device ID in mount_info (Pavel Emelyanov ) (#PSBM-41610) - zdtm.py: The groups_test class for running groups (Pavel Emelyanov ) - zdtm.py: Generator of groups of tests (Pavel Emelyanov ) - zdtm.py: Prepare zdtm_test and flavors for mass test start (Pavel Emelyanov ) - zdtm: Remove unneeded re-exec (Pavel Emelyanov ) - zdtm: Factor out ps showing code (Pavel Emelyanov ) - zdtm: Introduce explicit prepare_namespaces() routine (Pavel Emelyanov ) - fs: Add binfmt_misc support (Pavel Emelyanov ) - zdtm: Add socket_close_data01 test (Pavel Emelyanov ) - Update source (Cyrill Gorcunov ) - Remove obsoleted patches (Dmitry Mishin )- mnt: Allow for external mounts to be fsroot ones (Pavel Emelyanov ) - zdtm.py: unfreeze test processes before killing them (Pavel Emelyanov ) - syscall: use a correct type for timer_t (Pavel Emelyanov ) - mount: Fix spelling error in a error message (Pavel Emelyanov ) - arm: proc_parse -- Fix u64 format warnings (Pavel Emelyanov ) - mount: change the root master_id on restore only (Pavel Emelyanov ) - cr-check: add logiuid feature (Pavel Emelyanov ) - criu: fetch kdat.has_loginuid value on C/R (Pavel Emelyanov ) - kerndat: add has_loginuid to kerndat_s (Pavel Emelyanov ) - creds: restore -- Honor rst_mem_alloc rules (Pavel Emelyanov ) - tcp: Try harder to restore recv queue (Pavel Emelyanov ) - zdtm.py: When no logs, do not add them to report (Pavel Emelyanov ) - zdtm.py: Mark nouser tests as such (Pavel Emelyanov ) - jenkins: Add user mode job (Pavel Emelyanov ) - proc: Fix aio mapping detection (Pavel Emelyanov ) - zdtm.py: Check how user-mode works (Pavel Emelyanov ) - parasite: Load code blobs via memfd (Pavel Emelyanov ) - proc: Use smaps path for file (Pavel Emelyanov ) - pagemap-cache: Use greedy mode if pagemap inaccessible (Pavel Emelyanov ) - vdso: Don't fail if pagemap is not accessbile (Pavel Emelyanov ) - dump: Dont read prohibited kernel files (Pavel Emelyanov ) - kerndat: Read anon shmem dev via maps (Pavel Emelyanov ) - util: Ability to ignore errno when opening proc (Pavel Emelyanov ) - parasite: Add @pad argument for syscall run (Pavel Emelyanov ) - proc: Get full file path into handle_vma (Pavel Emelyanov ) - criu: Remove security (Pavel Emelyanov ) - test: different_creds -- Enhance the testing (Pavel Emelyanov ) - zdtm: Add ARRAY_SIZE into the header (Pavel Emelyanov ) - zdtm: set the dumpable flag after setuid (v2) (Pavel Emelyanov ) - zdtm.py: don't worry if a test class doesn't have ns() and static() (Pavel Emelyanov ) - test/inhfd: use os.fdopen instead of a home-made class (Pavel Emelyanov ) - cpt/rst: access and modification time of ghost files (Pavel Emelyanov ) (#PSBM-41401) - creds: dump -- Implement per-thread dump of credentials (Pavel Emelyanov ) (#PSBM-41416) - creds: restore -- Implement per-thread restore of credentials (Pavel Emelyanov ) - creds: Move proc_status_creds::cap_X at the end of structure (Pavel Emelyanov ) (#PSBM-41416) - creds: Allocate CredsEntry for every thread in core_entry_alloc (Pavel Emelyanov ) - creds: protobuf -- Move @creds_entry into @thread_core_entry (Pavel Emelyanov ) (#PSBM-41416) - xmalloc: Add xmemdup helper (Pavel Emelyanov ) - arm: syscalls -- Wire in sys_setgroups (Pavel Emelyanov ) - ppc64: syscalls -- Wire in sys_setgroups (Pavel Emelyanov ) - x86: syscalls -- Wire in sys_setgroups (Pavel Emelyanov ) - Fix 'mnt_path' may be used uninitialized in this function (Pavel Emelyanov ) - zdtm_ct: Mount binfmt misc in ct creation (Pavel Emelyanov ) - jenkins: Mount binfmt misc in run_ct (Pavel Emelyanov ) - jenkins: build criu with debuginfo (Pavel Emelyanov ) - zdtm/file_locks04: use test_waitsig() to synchronize child and parent (Pavel Emelyanov ) - zdtm/fifo_wronly: wait when a child opens a file descriptor (Pavel Emelyanov ) - zdtm.sh: remove warnings about existent directories (Pavel Emelyanov ) - binfmt_misc: Skip dumping if it's not virtual (Pavel Emelyanov ) - zdtm.py: Test how freeze cgroup works (v2) (Pavel Emelyanov ) - zdtm/pstree: check return codes (Pavel Emelyanov ) - zdtm/pstree: read from a correct file descriptor (Pavel Emelyanov ) - test: wait when a prepartion stage will be completed (Pavel Emelyanov ) - pipe00: when while a child is preparing file descriptors (Pavel Emelyanov ) - zdtm/socket_close_data01: wait a child before c/r (Pavel Emelyanov ) - zdtm/sigpending: wait a child before C/R (Pavel Emelyanov ) - zdtm: don't hardcode file names in test soruces (Pavel Emelyanov ) - test: write_read10 -- Wait for children to create (Pavel Emelyanov ) - test: write_read_10 -- Fix typo in testing opened file descriptor (Pavel Emelyanov ) - zdtm:mntns_open: wait when a child process opens descriptors (Pavel Emelyanov ) - zdtm/mountpoints: wait when a child process opens descriptors (Pavel Emelyanov ) - files-reg: fix compilation issues (Pavel Emelyanov ) - mountpoints: don't re-create /dev/null (Pavel Emelyanov ) - rst: set mode on ghost-files after write (Pavel Emelyanov ) (#PSBM-41401) - dump: add timeout for collecting processes (Pavel Emelyanov ) - dump: factor out cleanup code into separate functions (Pavel Emelyanov ) - dump: fix return code in message on pre-dump failure (Pavel Emelyanov ) - seize: slightly cleanup collect_pstree() exit path. (Pavel Emelyanov ) - cr-restore: optimize {loginuid,oom_score_adj} restoring (Pavel Emelyanov ) - mount: use xsprintf() in resolve_external_mounts() (Pavel Emelyanov ) - sysfs_parse: use xsprintf() in fixup_aufs_vma_fd() (Pavel Emelyanov ) - irmap: use xsprintf() in irmap_update_dir() (Pavel Emelyanov ) - cgroup: use xsprintf() in rewrite_cgsets() (Pavel Emelyanov ) - mount: use xstrcat() in attach_option() (Pavel Emelyanov ) - util: new string helpers introduced (Pavel Emelyanov ) - test: block prctl in seccomp_filter (Pavel Emelyanov ) - pie: move seccomp before creds to avoid resoring them after setuid (Pavel Emelyanov ) - test: setuid in seccomp_filter test to have it fail (Pavel Emelyanov ) - ptrace: start tracing processes before restoring creds (Pavel Emelyanov ) - zdtm: check shared mounts more carefully (Pavel Emelyanov ) - mount: do nothing if a root mount isn't slave (Pavel Emelyanov ) - zdtm.py: fix comparing files, maps and mounts (Pavel Emelyanov ) - Fix compilation after previous commit (Pavel Emelyanov ) - files-reg: restore PR_SET_DUMPABLE flag after setfsuid (Pavel Emelyanov ) - unix: Fix double restoring of peerless unix sockets, which are peers for others (Pavel Emelyanov ) - loginuid: save value of loginuid from a target userns (Pavel Emelyanov ) - lsm: don't leak apparmor string in the case of "unconfined" (Pavel Emelyanov ) - zdtm.py: tests should not inherite file descriptors from zdtm.py (Pavel Emelyanov ) - seize: do not try to detach killed tasks (Pavel Emelyanov ) - zdtm: Change oom_score_adj score value (Pavel Emelyanov ) - files: check fd flags after restore (Pavel Emelyanov ) - restore: restore freezer cgroup state (Pavel Emelyanov ) - restore: split finalize_restore into two stages (Pavel Emelyanov ) - cgroups: save freezer state during dump (Pavel Emelyanov ) - crit: The 'mems' explorer (Pavel Emelyanov ) - crit: The 'fds' explorer (Pavel Emelyanov ) - crit: The 'ps' explorer (Pavel Emelyanov ) - crit: Explore action and stubs (Pavel Emelyanov ) - zdtm.py: bind-mount a test root as slave (Pavel Emelyanov ) - makefile: use zdtm.py to execute tests (Pavel Emelyanov ) - zdtm.py: compare a set of mounts before and after c/r (Pavel Emelyanov ) - zdtm.sh: fix a value of ZDTM_THREAD_BOMB (Pavel Emelyanov ) - zdtm.py: don't mix tab and spaces (Pavel Emelyanov ) - zdtm.py: collect fds and maps for all test processes (Pavel Emelyanov ) - mount: don't take into acount the root master_id (Pavel Emelyanov ) - mount: don't remount a slave mount as private when it isn't required (Pavel Emelyanov ) - zdtm: add loginuid restore test (Pavel Emelyanov ) - zdtm: add test for oom_score_adj restore (Pavel Emelyanov ) - criu: unset loginuid value before creating userns (Pavel Emelyanov ) (#PSBM-41993) - criu: restore loginuid & oom_score_adj values (Pavel Emelyanov ) (#PSBM-41993) - criu: dump loginuid & oom_score_adj values (Pavel Emelyanov ) (#PSBM-41993) - make: Fix @install-criu target (Pavel Emelyanov ) - test: report actual errno on seccomp prctl failure (Pavel Emelyanov ) - zdtm.py: Add action for cleaning nsroot (Pavel Emelyanov ) - Rename cr_opts.ps_port into port (Pavel Emelyanov ) - Introduce the read_into_buffer helper (Pavel Emelyanov ) - seize: don't wory if a cgroup contains some extra tasks (v3) (Pavel Emelyanov ) - fstype: "mount" callback introduced (Pavel Emelyanov ) - pstree: more pstree-related helpers (Pavel Emelyanov ) - jenkins: No parallelizm for group test (Pavel Emelyanov ) - zdtm.py: Add write perms for all bins in test (Pavel Emelyanov ) - zdtm: Fix compilation after previous commit (Pavel Emelyanov ) - jenkins: Add groups (Pavel Emelyanov ) - freebind: Use different ports (Pavel Emelyanov ) - zdtm.py: Fix deps for group start (Pavel Emelyanov ) - criu: tty: pick only master as a control terminal (Pavel Emelyanov ) (#PSBM-42093) - test: Add inotify02 into the Makefile (Pavel Emelyanov ) - crit: Speed up jenkins test ~60 times (Pavel Emelyanov ) - crit: Fix ipc load/dump for io.BytesIO input/output (Pavel Emelyanov ) - crit: Add dump for semaphores (Pavel Emelyanov ) - crit: Add handling of msgqueue (Pavel Emelyanov ) - crit: Add dump method for shmem pages (Pavel Emelyanov ) - crit: Add payload handler for shmem pages (Pavel Emelyanov ) - crit: Add payload handler for semaphore images (Pavel Emelyanov ) - zdtm.py: Add step-by-step execution (Pavel Emelyanov ) - zdtm.py: Print out and strace file names (Pavel Emelyanov ) - zdtm.py: Print test output on screen when possible (Pavel Emelyanov ) - zdtm.py: catch KeyError instead of ValueError for sets (Pavel Emelyanov ) - mount: fix a race between restoring namespaces and file mappings (v2) (Pavel Emelyanov ) - mount: pick out a function to set ROOT_FD_OFF (Pavel Emelyanov ) - crit: Fix casts for fixed and sfixed types (Pavel Emelyanov ) - seize: get_freezer_state -- Relax stack (Pavel Emelyanov ) - zdtm.sh: set a type argument for mknod (Pavel Emelyanov ) - zdtm.py: don't worry if uns isn't in run_flavs (Pavel Emelyanov ) - mount: stop doing anything if populate_mnt_ns() failed (Pavel Emelyanov ) - mount: don't worry if a binfmt_misc image is empty (Pavel Emelyanov ) - jenkins: Fix CRIT test to skip non-criu images and provide cumulative output (Pavel Emelyanov ) - mount: don't add dot to a path (Pavel Emelyanov ) - crit: Pretty print vma flags and status (Pavel Emelyanov ) - mount: umount a temporary mount with MTN_DETACH (Pavel Emelyanov ) - pagemap-cache: add const-qualifier to pmc's vma (Pavel Emelyanov ) - page-xfer: fix wrong hole address offset (Pavel Emelyanov ) - test: Add inotify02 (Pavel Emelyanov ) - zdtm.py: Fix zdtm_test._env data type (Pavel Emelyanov ) - sysctl: don't skip erros (Pavel Emelyanov ) - sysctl: really skip missing entries in __nonuserns_sysctl_op() (Pavel Emelyanov ) - criu: x86_32: change stack align to 16 bit on parasite head (Pavel Emelyanov ) - criu: add the mnt_id feature if a test uses more than one mntns (Pavel Emelyanov ) - zdtm.py: skip the uns flavor if userns isn't suppported (Pavel Emelyanov ) - lsm: add a --lsm-profile flag (Pavel Emelyanov ) - crit: Encode back pretty IP addresses (Pavel Emelyanov ) - crit: Show devices nicely (Pavel Emelyanov ) - jenkins: Add test for crit de/encode correctness (Pavel Emelyanov ) - zdtm.py: Run tests in best flavor (Pavel Emelyanov ) - zdtm.py: Count skipped tests (Pavel Emelyanov ) - mount: don't rewrite root for external mounts (Pavel Emelyanov ) (#PSBM-41932) - unix: Add support for restoring receive queue for unix DGRAM sockets (Pavel Emelyanov ) - zdtm: add mntns_rw_ro_rw to the test list (Pavel Emelyanov ) - mount: fix restoring a bind-mount when its root is overmounted (Pavel Emelyanov ) - mount: refactor do_bind_mount() (Pavel Emelyanov ) - mount: pick out a function to bind mount a point in a tmp place (Pavel Emelyanov ) - mnt: Carry run-time device ID in mount_info (Pavel Emelyanov ) (#PSBM-41610) - zdtm.py: The groups_test class for running groups (Pavel Emelyanov ) - zdtm.py: Generator of groups of tests (Pavel Emelyanov ) - zdtm.py: Prepare zdtm_test and flavors for mass test start (Pavel Emelyanov ) - zdtm: Remove unneeded re-exec (Pavel Emelyanov ) - zdtm: Factor out ps showing code (Pavel Emelyanov ) - zdtm: Introduce explicit prepare_namespaces() routine (Pavel Emelyanov ) - fs: Add binfmt_misc support (Pavel Emelyanov ) - zdtm: Add socket_close_data01 test (Pavel Emelyanov ) - fixed repository url - Prepare for builds from forked repository- backport 0004-criu-tty-pick-only-master-as-a-control-terminal.patch, #PSBM-42590- backport 0003-seize-don-t-wory-if-a-cgroup-contains-some-extra-tas.patch, #PSBM-42145- backport 0002-mnt-Carry-run-time-device-ID-in-mount_info.patch, #PSBM-41610- backport 0001-mount-dont-rewrite-root-for-external-mounts.patch, #PSBM-41932- Update to 1.8- criu segmentation fault, coredump created, #PSBM-41394- backport 0009-tty-open-all-terminals-with-O_NOCTTY.patch- backport 0008-tty-Restore-controlling-terminal-once-per-session.patch- remove 0008-rst-Re-use-opened-fd-when-restoring-private-mappings.patch- backport 0007-page-server-Fine-grained-corking-control-v3.patch - backport 0008-rst-Re-use-opened-fd-when-restoring-private-mappings.patch- backport 0006-fsnotify-Add-ability-to-force-resolve-paths-for-watc.patch- backport 0001-ptrace-don-t-stop-a-process-if-it-was-not-in-the-sto.patch - backport 0002-bfd-add-breadchr.patch - backport 0003-proc-read-all-data-from-proc-pid-task-tid-children-v.patch - backport 0004-proc-parse_children-appens-new-processes-to-a-specif.patch - backport 0005-seize-don-t-catch-all-processes-from-a-freezer-cgrou.patch- Update to 1.7.2- backport 0001-ipc-save-local-user-and-group-id-s-for-ipc-objects.patch - backport 0002-sk-unix-Fix-typo-in-name-length-estimation.patch- Update to 1.7.1- Add criu-d150d6f2-freezer_dont_catch_kernel_threads.patch- Update to 1.7- Update to 1.6.1- Rebuild with new protobuf-c package- Update to 1.6- Create python-criu and crit subpackages- Update to 1.5.1- Update to 1.4- Update to 1.3.1 (#1142896)- Update to 1.3 - Dropped all upstreamed patches - included pkgconfig file in -devel- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild- Include inttypes.h for PRI helpers- Rebuilt for https://bugzilla.redhat.com/show_bug.cgi?id=1126751- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild- Update to 1.2 - Dropped all upstreamed patches- Create -devel subpackage- Fix the epoch of crtools- Rename crtools to criu #1034677- Update to 1.0- Update to 0.8- Update to 0.7- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild- Delete all kind of -fstack-protector gcc options- Added arm macro to ExclusiveArch- fix building on ARM - fix null pointer dereference- updated to 0.6 - upstream moved binaries to sbin - using upstream's make install- updated to 0.5- updated to 0.4- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild- added ExclusiveArch blocker bug- improved Summary and Description- updated to 0.3 - fix building Documentation/- remove macros like %{__mkdir_p} and %{__install} - add comment why it is only x86_64- initial release/sbin/ldconfig/sbin/ldconfigcrtools 3.15.1.28-1.vz73.15.1.28-1.vz73.15.1.28-1.vz7 1.0-2libcriu.so.2libcriu.so.2.0criuscriptsnfs-ports-allow.shsystemd-autofs-restart.shcriucrtoolscriu-3.15.1.28COPYINGREADME.mdcrit.1.gzcriu.8.gz/usr/lib64//usr/libexec//usr/libexec/criu//usr/libexec/criu/scripts//usr/sbin//usr/share/doc//usr/share/doc/criu-3.15.1.28//usr/share/man/man1//usr/share/man/man8/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generichttps://virtuozzo.com/cpioxz2x86_64-redhat-linux-gnuELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0xca4838b829105a854ccf6fab2502992992663a2b, strippeddirectoryBourne-Again shell script, ASCII text executableELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0xb36d5cb7222f7ac685c81acbafd50240803bf65c, strippedPascal source, ASCII textASCII texttroff or preprocessor input, ASCII text (gzip compressed data, from Unix, max compression)troff or preprocessor input, ASCII text, with very long lines (gzip compressed data, from Unix, max compression) PRR R RRRRRRRRR RRR RRRR RRRRR R RRRRRR?7zXZ !#,8] b2u B0RŔyl= ]B'P 6~0r=aC 2i?mth8_v $;gٮhֲ  2>,yC=d/%k d8$ HNf$1d-YH+1^- )(dA Tf;j !tX2F֣|UJD0~iid7(YQ}m8`.cvyW@^1G/jUg1.)PO p*Aa b3Gp@whSBgOH^+ &yU -"Wv pi_gGTB+5|Jی@]}fWxg "hz6s4@`ޚ\TͱuNP]i"qnG4 Ev|okBC̚mm=A ߢ}\1OA<ƺZ"w~u<6V"UPz6ZB=4[Ҟ!w'*'udx@KФg=Eݑť.R[mՠ̠M|Ώe#Ψ(ًȩ' U@d6Cm7׎$nmr[^0|hm`v61L/FM.V4RQ,%Sp4]QSUuDjEc+>,\A'_V\tzY$L!B{Ԕ-Fd@-^C>85=}t>Cd}JԒDi^Jn n\]& XvJ}]7g_kP)?X Uli%/O[o⁐]cfҏRl:(nAK}\%;%M} ёϱ ]5lzgxULFJs=acBhI;=Ζ1YdRɳ FY*Ym_o'VHfa)Շyzƣџ_Py}h. C׸ܟO>ȴͬF-^AaY"X8˴qXȔ*G ,hw]eS,P9'It\_ۆkFj՛e/rrwn 0Hsh>A|~gWX{}>@,Iϳ4Э<K #Y`8(Z"aPI>mV $JȰwB^ ;)N_Fv YΆÙ}yxj3P*ɜp `r Bk CM"byY k$X!D=KN:|P/ˡʏmCU@ nZl= ;si{mNƖIњ3ǻBBْ?%٬0pC~`d|x8NnCiݭsBߘY#tɃsG)#O"fl>w4E\$sڴ/MlJ9M$06} اgˍR6FX{$}xK\`{*ƍ3nP<0QGaj$]Pi,|4FS 9Ƞg"DN&.8m%%f.eJ㓧}rE/Az)_uo 'o"`O-"1((j]YDІ.  @loJ ?>P.vȾ\` [O8azxhVF1:-(Fn%ww#Y#Ps=Z9IC|O*>&k«_QuH?.95\Io!bkllcf yctr"':&}e 1ŧJ/¢64aSFW.(bCD( p;Dzqjضl[gQ9̈́g\;Wbmu8HR>/Sm:Qxa@.vמuS/d^lFL܂[c75DK="eJZ@j8kmVvU1~Mb9Y?Z-+S?KRnActίPܣ?jt[6'IB5x}-*Nr.4)m0÷yS wQ3aj=oDžr}%,IV=M<-)Ń|Ugd\~TkILo4iPHhu<p\ ZX &L ~VSzxpI<{DwC n[=Ó+/x3Iaap0Zx&B!)P]j2 O2ER[R &-&E%g\;PQGפkV|rr $iFn~ KыP{83WY-^ &ATcAr쪮p,{7G6# q˽+rџw8{<Uӽ >?H)%?0/Ef//|0폓Hb6);:lkQ?&)apP_s6 s _x@1XJ~@l"Y|5tre zKtM.j¼`J%]u OzZa?D`gv^|(uʭs,g2v* Q4 "Դr?h6CCFH#@ ZPO9,;| x%fh_ o&(x3#X'.\drE$[ YZMf)AU| ^P.a0¯ ׄ=˦(Z) P'ϰqR; JJQۤxsϗ8D2.ChԖpk8*XBE~it2jdQ`rB'&F:`C.V/ҹɀ(x0znwL wm#CCaT}w8C6tnT5Q= }.+wy4ABAMgJi;vI688~W(*6"6s͊p`r;A9x#iAfs[n0V8" J,$]You kE5)Z.Ru:?(|K?ÎD1뻼[iNۥEchi"d0s,i{;(._7Z==OWncEt17k7c>Mķ96JN4E(ZĜ1WG Ye3=A&jL&j5zsA8.SHQ`0W+y!A73h׷&_ UKJ_>zݖ(^(uDBK;!mHggd|<@ 1C"-6~֘F@>kpݕXSȲAdhfW `Y)W=\u)29^| |ؒNgH\X|͸F&L!<5W7㿹"x/k߃mΔ/aPlu+ Xwr⯟0u3n3og \ZwDM={IU}:f*ױZFGOe_ ^h2뒢+c&)k8,>)O`LىP,nŀ켣B bU Ti̲äM%p=)Hy?%`?rP&6)xay# L]dfPyLq&/Ԏ ڦ3L)j撊Yx6N|'2baD+ZPx5}Zro I<jj<齯7Y/ 29~''ط;4#BΛGHW3Bn!(=w8OˍҠ'%*+a`n='BG֯B:Gz/S+AtbwFrqR隗+M[U gQ ??Z؟ @)zшNǣWJ(KGO Њ2tAc+Ԭd_iOcYSlO@>Ep-?փIDpa6*OP\g˺[WVWS9V"R9;9^ߛRծ`g s iS=f77jҩu͔TV_A$ v]]!(4HerקF{b8elvIrvI~ˣ<|g7.5KZ`ԄúDjNbAJP3ql,'\yUe&\I5oKܖP 40t{aGGȅSa)7@WMobhY_f1Nbz(6mnq:<"K n P[mZ(+",+2#QD,)C>Ȭ<&ܨdyyKψqGKhCgcNe}b򺊈:SFE:WߚUNiKTnj=4xaw)w>efG& OuO0.ޖaaɬk{>< BamK~7\53OTqMcT_(.[ ,x%m.j/bN5aj&yiBbng{Xi陳\~'U^ Vpt} TmdSyH`qr(;//&vsa}#;{츦32l;b$_I ?MKfrR& i9'^MAn-ZB qS {C*-6x^J)BA.)ѨA6|6MXa f–I+D{e55z6nm`gE΀~9Q؂P1[MM][%颗N8DA 4SdMA_y'YQkk A`pW G-l+2! ]s1xk`"& \НOx_>]q&M P؊EuL/}2Ľ/BEWp*1ȹ*fX-+]Hak<}|3w. 0%I}5[%WYo\qҽAq{-^*N(-F&:4512t R<}bn#8+8A5%,z~pۓ'z^UC4ٚu}ǞsY ?d;o*7p<#Vo?4rҮ%fߵ4i16mYGBx)mυ Q-UI QU6|YZ&4h~/ s}FhQw(aמHC0*H } w4,Y[ ˡkIEF ^276"sFE?ɉd@3s t{'Os6>; (ެޔ<%@4XO &OaLWoA}9P]&29W01on==nfi[]l)|2%_{jbpGEQ4mgk7`Imxs#="ke9.+ IIIxW_7LDxֳgI  j;&oum˶&9; @^,cŕɓɻ1:R[_Be=+7:uk團UVß~` |߀ It5n-j9ɇPZW1+B4"w3 kû {l DߊqL> ݐk]dǁw>x# B+5:Ly&pەfq0ݧ.|<eW&Ύbee—/}ީ|R_e#{9w@:[qmc_$ugI7Fu@I:į8 {ȉ rYb]3*ʎU.u4S|+,U zW벃>ލBzvm7ߜ ?Gu!l WcyIaV3>n[HO/ah-1r˰D#vyfHnMO4LIiNL^S?.ڂžDAỲ.i^@[M|aIIfxp~dwv"G~ _Mɳ\*gE_] 5sȢy- *>= gNc\䚉*/^OLZPN<S%W=}cc5Z{9R,IJIӲb{F8v?btM\ihQۆJ^u_$7[HՌ B`_P{5R^COI qZ<`=Q_%ߤNζnl/^י)?H΀\td?Լؽ/XjF@ b^xBڄ[GO5n/«oz@ژ5%F5a̾:nK }78K0hw ڂPITfUȥ#DAʹ?'o3]q #3/l)Zm^.9)齉(C(Ąf4tHfFܟi/*N َs3g8z2)_oGaV_T45 {RUv@CxyI$NqDǖE\&K pA.}mf|xNy6?W& R}R6r |E4\u U{PzU{䥓Ul`N5SḥpN1${Np= pa9ӈUJoX'aSyEGXZeۇLBmDo)ONjOSPo[FRgqՊRX5"+> 4sU'Mݚ=MI¢›IҌVXH FZސS|_װYȨA]Imz77{8Ob9R A{+vx`ś%i{&E (7 yX rM( m_(Y>L9ᩧF" .b A70;qf .P=)$ی4ƬplʼnZ翯L̖$$9'Vǡ&%i6R ]}]cBX(V1J}`P;ǘAG bs,QxoaTS92@ݼNZp\!$N@zV VX]q4Me Ž/מQuۓߞF`^\.{KucjVgXzlMt:1zNHtpy+IE{rDhr7ǰ,t wU25hvL(CcpԬWKlLy#j~D˻e|ɯy#SҀP9'ajЦ:uF%0łgԫuC%D@f?AJmA`["Ϥy„:BaV ijS i0u\swrT#IK^#t?}Z!i۹h%oA&C"5UHF ~a%I/q;B]B@[mCO!SZks;huS.e׬pruRa寸IiaEt6Y-_9+*#Cf-p9CN6b bs/HXUB ȘSk9c( LbÎ\MQzPu3;q^< U!kc{ͬ/־$="GAdž@)fZ(]\ 4*# +Qޣ:$RC_,s+SY'x_-l}|@@$ JGAf&킽&ov?#8S7]洿e>.k̨f !L͕g"_#'`ї#`FE`BA* N"2( 0!츿zC6PȌKfh_A ʮ"V$[Fu][6"J6-3BBwFCfZ zb 6{e ޾ ,g<Jf馁6K(-vy );"9TyN*S0_ $6Z=5}kI#twiy_!I(a!#1mĻs*yzʜ}F+e3{gAI\\{ 3e4򕨻gglmyx*G6Gj}OgUUPS4v8#+)ݧLt6U+[W?7?2M dX8wV G6n2= 8M`%@5Rzfe׭P+ʞY(-{.۪큍:K{~:xpUqҟw 66c `G,:XZTJ&*es{ĸ7  쾋PN77~!3`'TRPr/@rYF3[Vh~v]Ix~{w $ ZHvxh28n̏߿jV>u+z%qXFƧ`e0 rkRߡνoJa!fвw_[9i&:bc)١=G՟nޮ#sQJ̕dgfRC5@"Y.7$Qs#_z=TLaHKjD¾:7 _&Y0$IZfW7Fr9?ng.rYkL| »%ƺ _Ced4v1zs켧:J.aanv|? ňU}f59w:@?#Я֠C @zWHW X>@g#V4zs|[F=2ʸ4XOI:n$!e?H~rh+XÑQ_q @gB DH..#MgTդocs>wd SO GwȮ^'6y9>V> N++ʋTjnzNP Qv3/1\uou ~1SWLU)'BeVDDj‘šxA*⠦¨4o»"<[SJY Jacs'Y*O' q#׷]0-$g|_W#A(tZXUה' 2*Fr sD#olqp;mU9B<6ktO׉է}xD ӛ̓>WR]^BV?Ayi[~pZ=) *u7锽Zt8٭N] +"]2˷(yĖ;i˗`s3H>3%;F=f<~]cr)=VE QWהdm/&84o? 2n gBD>\B0|RX*;`C|"|dT(>5=.SpSxJ Wb}Ep$Zw  xƉ0\G?r=mEwȰn3:%\%Z ;SN1})ovYfl2qh J+>lرoS词~djV\&"X,wo {hH? Hz ]wVɢT[u\*|Td6_GG{2i-K.-%3ygt#qj{Ҝx %n]BYt2PEύu.WmhP & )x[qBRTݚ|m5%$6 ܤ .6>XQz|RRU6hPJx&ǏLߝA丏 @چ-^z5Ѿ)voOTHtN>&( ]Iꆅd˞kN;̙p?38<ދt#~"/=]k0K0޽]0A!Ŝ5Idhkq0*RJD!^B1H.D#@-%,57+*]Z<,=˽Xh > 5qiir 7ב @?oK8#S `\B2NX ?pޟŒ%=H0F=C6!MJ` Y潵h}R~ݒxJ"ⱶtuG|Q|eAն乓`$n7 -H 2~W1fO9x3'ڡdIsZ丢Z<ڪx|Nq,>J1u̬``<'LLEi:bK Y5B_V]BDՅ~ Ł$ovi b:PsYHITEO$1.U.&o~Pxlz߁ޠ t,=o,>\D @E`r(dw]@r}۔)P;TX- oG`rF┚j+,luʳ=aw|'q չhUs*DI!ɎgKb#c V>T5ǭ2et9|cV _<{n*1A_"nWIkKi3N3/-{s=r>5RHGwC/IsC GAݑS`7fITa 쓷2(gjHG 7wI=C}Bkn9eGao/%RugC[CYy!45Qto M3q8KػU;OQ,sQo9!#>;4\A hs 7wj7Ϲ7IG}_TD_DL0J[Ls7v-"noɐt*:i[g ?OnC\$AӜ޶j ٛ&C߿V­'a:7& Ңu-6{|#MooY“D\Ex8#Ro٘mǂ(@O!c(JR>-jgt> iە>QM.AFtbbƩ[@Ky59#(vߗRIxv5P>WP^\«mN,tp O@SEp }5۵@7-2\/"5CQq }n 1SvY腴C9S nE.I B+.CN_o0*臒&VJnQT/סTQhL J1i(pHE_wҼNTx?c9o*(ñh -_1O L xSrF%#߰8;Gh@$bXwzd$aI(kRɤ>|V@ṯ<.3k,wf{vS6N ?t2}/iDIyN=-)>]I/}2]#JJ!=`ISڊ nJB KXHZ}!ܔWZcR#;˛qW/{&=8\t/?㽋VDiEk~|>@͛G06/nAq{r I$Ѵ̀mk/[k,f(] y`qxGюqzhIB•m rv9Щ6챁#`pG@9)ľռr| dEOm!oKKM,(0Z(5jOQ*8o7!b94DFPLvj1qPr $tNGqZY -ͤ<v+s=4Հ)AG~EcX$=@%\LY&_=wZ4a(E~ߕdҮkw{R5Vy}dhmgM=t'搂<HL]1D  h= tRuyO:~&@h>(Sl? 1tAS GRώGuIeh:9c`D=?O%YR;]Ry{DeR,w9΍o-V")\}+age.Ko=gerʇ 25˚-Y6&ޒ~)wjDoA9Sf(aRcV c}v?ځMvK!|(1ހU݄ƧMvszl sBJYj 57y¨K)H0nIBH)Ƴ1!ݚX6u<y \E֌]%ŐfmdS w,eO_)2h䠺1~~ P1UTj͔%89tdz !냑W1I'NA֑X͕;LVMmK'%GҺf9KGc&ǁBdoe{VMtlbs~@OX$Qʬ*6( [gk}L6l4񓎭hNNW݌m(Qz¾`^YFnYX~-(9ix&ul}b'n-_g~R@ ֋yJ{5D:Ua#yiD]!|,B)1W?I!#"d\a'=H3VyQ Ж,? ݯ`9zty)?ӄY2KBG'TS(!bޠ(Y'nG?-*2}:ʉNF &~+3X8O9a w|@=tNXdͿ3r߭Nb2Ba42\7l@Z+]r/''^lۣj\-,)VSVt 4X ugWXܥg7fR'$)w/;r<#{x1aeWxI};jUuHQp͍QCWaRWy33,64'Mc)eX4^]i!,5Z^3bT{*3GN*TN\,y@!zJأcA0ڈ?D\Y9ƒ Ⱦj=c5wEFI:Jk m~@\M=49> .bP5So* |9,',?+[L,f^8=*tjQUZ> @)͠Z¥M=oMR4=坿wZeK]#p.hmF7t6q˞ o+`bd CCG1ʌ 1ba:v_)e| ai}a,*q:}AVFaZ}fhj+>< WDd?8IU ~RGǍa}! 2Iw~q SfSb;zb<ǜ_5Lg{:! X&B 7ѦTY*HsٚW1 ~c'~,G%dpSrUw=bo(KK>6 *OJm$X!%jd]'WӸ$+T}Whcsb{ J8L\)G<?Os;Uc4^̫^qzkwg?\+cR5FIq^5{ \}J;]wbj&ՙ&ݞz5ϕs*?,TCHdJdinyҞ Ze-C^(6@p`=nNk(׫H/._[S?RyQ"v?T$AB)=eU%Cn"teal&x/<~ CBS&xpz?ҳP pA²x+W4G{s)?!~(X!S,~|bnCp-rb%A4}ߛ"j[.ForY0`PBRq<9zN;~޿>FIZ󴌙 L ءl/ :F D+qSMf]Uj6HẸ"'g.ihƀ {a'HjںhbT8wyi!{:g qĔ6h{bЍ9ҿ] vI i~PС~*Ō9heJT+;vKū!x>l@{F;\@@dN;4[q9^i8,{+hBټv}NF桥Pk T-"`oz KKFbA ) Aoa(kX0-M؞RSguO \@C/ 3cg"`OS Q63`͑m G9mBjVy+tG ]!UY:Ќ."e/ˈ@JEdG >>ZʰA)3<P]<J0}D.5NK],T^ѷJ\cѷd*7*yYZ ] ʟvL#z) yؖ|!ƿXo;G;;?ӜgN e~!/k=ROQ{qLdچG'*5X761#̍t(%"t`6SbXbܹ^5:a4Vpz;MXKWg\Vq4vF ;؈-ŢyՈsc1H6mH%n e5GSco/ׁFV GTsz8*!kz D (gEmhv#ݟRXALtQ=ENfg:]z[SGch +Yp+%v~K56Gw_wiBX<%yNQ63BU@vf9es!i6+PV+~켏<d%vHg7uqUE*Ol+Ӧ&Fv  6%SLt`. p1i9]ߋ28Vwb?( ;;4m:srl#'nmLԯ(\b=!.Ӛ=l|߄_W0R3=ZSk_ou.DJcI@.esCpLx/e;sDZ!ƒmQLm@ToYIZ8 یp#;N 6۞ӽ BWs~zCݬnhPM9\5Lo>p;B 2~w Y3@[O5HHiHݷ)?0q̂]8=s'\&7CݪM1:-cuP@ s+?Qr:*K$-o~F +j %ts~2'i[jN6Z,_ BiA:̈tUyXDxAJhT7f[5/+/TVT%$(G S8i.]l"Ry5 Hp?xВb6L!c<GGs5F//Պ8.?ӊ;c2%RNiY>6YfxÙy Hw?|%r=T|kVηxU .<p1\Bg3 IJ6k#3#gυt0=WXe+(8)%fsjdnsSGԡ a.ޝD 3Q_OF3G_e}u|z4YE`*ALE~28okUA3X;{8fܫCS_IS'n!1=Ó_t"JUZ{78%J؞t䒀rxR cvρ fDA1BaSatCHc'tPt\Æ.^1|wZ2%aX Zխs)\f3  1'gܼ+ByH+h7A0_7`zY!\=9|ſs#Ft9(6UXmf0IM4t3 ~ Oq9wg*EI~Z]ھxXc IB{Y9@%v "ԟ ߁{(\Mw X\-x u'jo{SHzJOϭM6_9N9a4UBj b2S]TyӎKRv&>4XsSvٕ&(6_b}E]oK/9$t6Y\rKL-x(INRٞC$Hy{IgZhP꘶^JBy7+/6M]F')3L)̀9GQR/=0eOQJ.s h?$= <#F3/(5wgНr^ȟl&'tڠʿ6wב*I0Pi8(uLr q%+љ/gB[Xe͑Z\IxdZ,7Z"?bszjyݖ<GWT)7-FRö \S8GlEb3bxEyi(w>_~Xp~9 3F,\O,|5K 9'qclt) lxzioȊ+ۭ^+ K> B=,_پҵkpjj4K{ !Pf0'߃?؛ n>9"% Ѽ#' 9]ŎP-<{tȝ;Y> :`cD}qty#Bp?˛2TE=z2ab#Ok@sA 8P8kqWj%>,+!n]=F=S[ŗ6`͌ hC@JVf~2jy`ib'sPZ1K$ }֖h:u;b >yۯP`Ds`N1 %)j Mܩ J<<Y7dbIQbf}%(}W~D *l<)Y>GSYSW|nS|| G]^v2>=|}m PK`*"<ϔ?x1 |rwHΕ_8@5Á0GR {H>6-ϼ_/d3Lշ) cE@T,,90qwυ`Qm'겲&{RYתG_B ~%k`4&uI\lZR;knY!&JLs-qHGH>/\(\]EUu/ 7?!@69@0ɼO1 { GHUȬm)@.RyfxIQGC;\A X+kg \ d4AEG7+Ӂn-CIT<2Q!o?Ob>0)|%ŢRE!LXWW_&U@L3!D[Ne8GC[ b%NJXW%^ԊG)e>;%H״eBBiO(n(}D5!%.*sȎfޔ_ˮ39mbW.KNzU*_"+fh(dNɣrsw)LD8=pA>l Cpbہf}*%}D%$fb*&I'tEȻ嬠 <]zbnjҋiA@+b!Y9L LF?nRPODJ&mX1+ 0t;- sjy%,nSPSpsЎR|罄-MiN5S%nOݰa>\:O~LO2Őޒ *hHe8rgnZ 300Obe7wAϴ?Xɭ`Yս.ˑZ-aܲB0joA@A;!û ݰt/'Jqo<2sj5/($뢥cمCA 8~zU$8B2΁(ZBoJ;'TqH?gec9-{P> SˑN 5̄< w6RY MH[lђTw;sȠY1=@3I{sQz1xpRW/LRX[(Qn,)#M(5*Nh~t8k3kU3D# zǖ( yNmdimÁ\A LǜT&+/6lbnӋ+fY92Y0/'2.*X"aZcsjEj7wK d)AeK ; X_$ &Bٓ1Jz{4huMNQJc BU 廎_kKݘT)ݧG.؇љ@ޠ%tL}__8$(JbR FtЙ4,TwgxyD>&2' r!HeTB]>N&._2Cb# Es{d$) ` r>|U1rRugXlhV[{O :0 `~ep x`1Ҋ!ET;]Jd\ e}ߌ"|'^Q(~fFL19PW= rI ?Uπ]f%/hlI*mg밦Hőof&Xݧ3c+3jKufʝeAs/ ؃> z}FZKb[e(l2 U2i4G8%$642ԋt;_Mt+*MFn5G DU^uc\mt3YDhY$d呪lkj(A Kyv>J(b-Es}RzYo1A 11뵙U48Hn 9toO1SVj^N… /$2ĵj w2OTrXT!Kx4]S [ڍ@Ku~C̋6OqA@d`tG1:dQB2vz:Ĉ2C[UPYM;Y=PCfb`(Ѩf4_O=;rgrpЀ-]6rĘhj$N=n=k2g/33.2鴽K[ѬLwV;GxPyMiZqi%}A_023πK $آ[MX(p#ֻfA q쒄f0_w0Ǔ=k':vzg#ԺU,\y;0-/a"ma11ٔEqn9Mڊ:fhBd_{94DΗ7`2A{׬kպ ƉLDf ϟ 0ȠL 4y9C5N1C|O~Ms˰{8 "AЭLHW-yo^ lH(B|ь0_y wݼY߈ҫ,w&nnKtX^.w<A:`QonI n_c<2fx22YH9ZR g߮Q|g[VW>y"<,ӷ8F*F><2aLxaI}c> ]zJS[-ۛuf \ކGq 4mG7J}|3SJ=Y 8J ԒlI r\KZT,y'/y;:Q! =i} K4߶_ȲR+UqQߪ^۞4b#Iji!\1LZlK_YB*`_~zY%en6r '` =Z ôpe*ApI 608Opapн4/F}|p1i>)hNFsQKX_Ed5bFBU/F_ɀ}qaw8|l|r";OKˇ;2!Tv"<P}ȑ9P M Vg;=)x_]Y밦cZq\VSذLR s5V0~ 4Ί rFXǂ 4Tþ H̟'(טcGbr@'Q/AlBF9WIN[gW/7:r*FL`R R}aƼsMz ER~UqkWYГvV{XkK6Q:# xjR6 [\%$$,T%o˙4 +Md')vmgh{ΚPlʫx)fq7=k<6y]ޫr&YvG20o:vtMsEn'VS`2_,ѤF MDq _S2a#HwzÓ~P:_m|i, "qjtpo'Xl-VWxE P& cŤ$SeJ?!m ( ;aEq}Wz怵P#ݗu϶W 0 YƳd&0:}=hvШJtq* 3It64, KBTwCɳJʒe#&gӻo[!i<0{ԯb2ħ.\>"[ ;R)'V uhÉjE=/3uJLUץrQ!ݥ Ald~{.} JS4J|]1_OJ3`y pE2-d[}R$5G-]]ɶ*Ǚ%K(46v [T$PM+NZu'\+3uҩMWrbrKomi@>H)dgƆ@gAcкa-xHft55܋y؜]$ Ly<|.`aZ86GB >=ݎTz0)yjUI3ZވMn h{u;PP>,LbDov!|]LLYq$ =ԫ!Se$-E{j4~^]gv i!'d@^n)/?<@8T̯QDKSbru,ǡA!k~]1ҦkљϽ]6_^N0PT$[8i64.d7geӚ5-:7h8$.$1pbgA=c͹> 9,#7AS{؏V'&0;n*7*M$ }I2dg]}jBTHHu2O^w\2U۔t~e*[᎘KgEׁcMb|$%]ԺH2hk"/6qlXѢ, ׌"`-ZD,:dvؓ{JaL-Z]dC\v]@Qٮ~]T5yGJ>3nvK`-AQ(#ZpqEFy訪dXAL{NL㈗7 &\KkԓPRa@ycZ^@U4rms{#Lr]Sf7R|OOXqrU4vCT95j=6*x яV +XxFIG=a##kvzpea;HR^TU5\u&qo,wkUhn3g>U|`p~"TOv,CSF':w*T,T x41u׆R+ |xcZhVq$%RytQD.^pۂM;:-kHk|z7S빓uWWd-9'p7ѯC.Yp欤N0?Y]R"21x5a2)խ(?n-nyU;2cnۻc@Z>;9qjh~0K"D )Y=uOҽ y_/*FƝ|\\_q,Oa)J4Π9]3z 3)ڻt,π-'4,Y#R KIr]/<%51) /y ^\YxZ$g2Lw7K`o|IJ "ʇ"I)d9%Yybɡ;%P28\nOZj:Flೠ'ӑpm^fh1D<-teflA Jݑ_̵am\V}!]*|0rf:|֫K}B㥕!ueN24vs4.8"lGڡ6i'^ƊRbh?);ڡʞLM~aT8܏d3bV <;tPy%؞z6s˧/$mM.<C!QN3`v$H<דR? tXxϞS6Y(,Ä6l. 5BմB+#j {ȑ B-b`vV8VKjE"y\sqdLit~ju2^3h#x=_ w]ә]i@1Sp6UYSTVXX']n$KFWs:e?szVmʱod<kAvz@=w+Ey_f'F=}u[V>~%ضzԆ\ !}NUJxA^Psn̰w:s,t8e_<FoqVR'9>uaUj.G+F ʠ8ߊк``Ӎ:Ьls {Md^ӤHq K)mUUU'fjej$#@S237[ql}xj}+4[!#|Q0zVO3U"PP2Jp!QmaeoZtv{'fҥ&rÉmVυzɛ`LIm;娧i0C8/{9KZO"+HW4ۊY]e}cϨ>D`I.NJ'_˩Km0;!]=2˰6(eKy%q&f`|5.}7$.k|Md<|:{ҶW1qӅ Qb.EV/~ڱ=SQ?yr Ai%i&`01n $.neVG0P\n3]+YUvG^w\)? Vh^ ųJ*.9 Pۄt?~FՓ(',]^(5v03Bbi` _u]Kv)mnSr5^/uqv][^Iivq(@RD@{,<)9Jvռ!&rZ>jn]K&Uꇎܧ 1ʒD?q0~7ӲJ)e+y5ǤDJ(h!Gn+.{@Ubϡ&ȨeP#+*,oPO#C^0;d-CRj-m^ɈYQ4Dx tJ1vgލ泫hz,GX.GUz-d4v8^7\ڧ BNޏUE7K>ZU:n?kI<<NB5VlpkP=v2("~ں ڇ_e>xHQa&!hI&Eb#y7B * vm}lظUTT;KP. @GX,3PG;mx1@eRɑLI䒾yQQnbHM'=vj.h*o͇4oVak,U-ԟwe}h^]s4m(Uq'V]pv;I4VYGWZ*Dݳ27 wJdR4f$4JWӊo[3R ŒmhU>-ǴR-˦T).tһP}`6iKnb-=?`'KҶ6#uֺ߀ 4G6K w< {Ń}HiB4n{FeUuͼrˑG= H"l^ޣrԝY;'ͷgX~l?DdOF<=XVy{]{cE%UuZra+P %рF('\ɤt%nF 1mI' ?ꤩ=3w#\1$a{Dda[IYkA/K(([!r}qtm2pa=]߽=\eЬqzj7rZ<Sest4*s=ݳi^-0*LȮ٘aㇳJj6e jP..NJKobfL5'bR$G 'M2CjޠieޡlU?~V,D]˲F5CW/zsq;J4q{ ~|! i98":wPHA  Tj"FAu5Fxb(a:)Dc$LCf/r #u͂#ϕk O'HJu֭K'ny~U7 ~=SVcӸ׀_f ۬?]?86 xRŏ6uK = :'݉ہU !/]:c n_|[ >(Wf4n|3̆Dћ+xo%~#i,S!4@Մ\i,"^ʚ4gi5֕N2bX?/(J`ԄD]+ 6i~{y!NzLC7XoO7;|b wv개o}ُq,pMh')GnC sMh|;lAMK[>V knq B`SU$=N(bpqqT~s 1S٨B9`)$,! 1<٩- Z(!|J-Cc%;w.r9U{c)IRfXT,CZ=dxI(UX}UvP3@+*FW.ruO0%oek\]AuHB +=H5aKxB'y*M(&H]\ X%8@`=ߘ!n˔Ugu=аxDA9nma_&/LBpmaC^2ufsJSmrB'ʏ[1YShf\rpbc7Pa^Y{:<5gEo%Ϣ"_nb#pBh=r[Hp^~8ܻl ߫LDF m;jP屫ݷ#^0S-"L =MI洲5uhfTqmjF _$Dmki{9] M/ 7uS9$,x0Q9"yq(_DWRJ~4PB~xむ,JNv]ixmeg(I='rֽ9 SYѲ߻Nsd4o|qM)w~/oXxHǡD)ZVReȶ,I~yuQ&&" (CߺbHf+JpdqfOeD46  [c/ug;kD%crNE >u[vr+ ^[1{N[W`|,͈rI3&n!ҍ@ZxR7=pٓ?z>yݬ1PxW{x -D2/,|Ìò KWhmd(HYRī4yMsv*ds{[~x֢(k*r[f8Rju`DnbԮw~&zb 9Dg4w9ɴ=Ye܁&ћu+f0#\[0͎{.g-E g+- s+ 'R:.2s6\T!zAAP2I? t"DZxO0e*tZuYW!H:TPJ٭SbP8~\e[A$,7_I83 U|=DN "e6ȁ)Q, mLTv$L륩uXo\YӠ[DNa8szO3 Db% >šϵ 뒪ޅ6? +9v;ѯD29׻פ?57>-OD4OlTΔD\^\RCi̜NV1f5К|.TX/rx҂|6Pwb^ Y0\\R.Ӫ'%O(O =XYA8.mQ|eo͒1tYzP07=l1DrFI)5ᑠ$ @mzÀ[Y& :~'{t,Cr \=!|7k-*RWq}@Sy*X36 :q6k'goFz_1O'96Le:WR|  AYl6xJXN"&9~(WO+ӛb7I!@`WP3(,8; 4 תPNQ} khOɷXF~SIN3\?9һZܧOKiC#"*;^w=Yo 9sĕc&R.G3ms2yeIb<R+1".x;B.]O[N3i+ 3ۼ$@pǺf&|pBۆF HڄaKF {I_?u#ҽ#{#ٳ]7<6>o俶$kxTIP[Bf}ƙUXMT檧|b*cuKת0犀z:,^k9rpNE SNl*1Pnb` M@3reQ SY ʥDn 0=XCxANACf)/;h dݽ + W?I;4o؞gYRnXqĩ/_Wiڑ J|PxO&9f6d},V"݅(&[@bmu$iѮJ~del9(zA4|Y&`~{ wըI^뿩u)#qq]4HՎ3D6%W(]lg.J}:_'^8sw 4{D_8{{U!C]cP2"^:r۱G}|Y ƍH#WCf9RPVJwf&LQ8Cq+S.b񩲋>FSU㘋΅M1 ʿRZZN0U*ܰP1#6L1<"4hE_rk, *u\tڽQ܄3 gfOnJ¾_jDKz}8s]1ZϮ@[=;BBtP;p5&µ\&z"s+#?|GK+Cp]G_ FXeN-: R>2=Hcu]9%*+JuVFgwF 뽐NA;o|r’o(1h`evFH<ۛƐ:!N"͔7+ɬ7ګ ~նZl54۞&SՀP"k}80J}|  tЁwj؊Po{4s}il#X7QIQKr@]geؙ7Kk.{m= Q*[h1} )}S|VzkwtGk †a!qۗ|PP@0 {OxG0/@0 U~>j5G<}n[_ ɜB5]#HhxcES`P^ 3!mpVۉJqơ&]JpS&tXԤ|I,pR b>mu/Gn+$mYAR`]mr9}^yo* cwt3KӜm:Ld.\h5tb8)D+h ;"<58L+}%Sі5睄'3쫤عwwN- ]BǔgD.v!464bkʺLtV?[s`]-<@ XmWUɕS&V1VqeR6<+Z:u`/ږ1x#2 <|N [s7(3|PHy2 >3vJ lK=j\kK˜|e Ԕ j*8Ya0(HflÕ?#!i#Pmg5Mu&Gݰ{ؑYQ}@=GW#E?bzC/V!a`ϰ9) 1[Z~kcI=һxN υCc]6D;hh^G%K72L5=#UGf L؇"sff|} 9EoZbߨ HW>8 ;^CnQX_8M+?Ez [ˌ׿lTM | twk8^:c : 2WM08H$x2=U ޣ!~OZdO;'Xf9,^+³8˙Րloho ,ۼ͑j[H(lV=Xu*Bc?QgmyN / zٝky GnSsol.Viɳd]O4 hw=O-5 NT捞ĥ<(d2-`Hy?Egc|;z^ [o椇0z@ŨP[;C̚s,h!\B*BD5"2qRB,2RCI]=>:'WCу=|V#̹Utb)ښY1Ph VF ?HwaKAdNau쟟tZc/jp>zxB{z%iܦz6 u>ngB&rny:7 Amn"qVk 4!_Dy3RK3lƖ>SY,;ad V== A/xk cBpkzӋMVK!ED,"E60_ʲrr5ƀB-n9*e[[%+wK(ٽ\k!FܲoҌ"ԂJJ黻nXfŷk5.!@G\;>$I)(giϬ PdR2/ WkZ\9m^#clrxYv@`9x.GI@FJbc,mI(kYi}*'E1qًat6_MVWMbSVi)/jp(!IZnkx(ЭbY`bX>1=k\|O#ڇw1Bov'Z}Z)5ol]D'$H ]y@;3+)E*W{R)tY@Nִ )Ocph:oR/uגBKU˧_ ̐X[U|l,tmcW9p )a4%-9&* )ir/@ח镫k^B s<EG޽+yUC,F\3&${j||=Ԟl]Bϝ,d,/_dGnmp 1~ʑe$Zp*lZ2,O2#'Bxr5=*c#L,IVHgztZ,Y5G3' " >8dPJڹwJAC']Zaz}bsȼ1@1b҃ࠨ mT/nC5v_lh*7 M[X3h5:8(TlT~\Ȧ'Cgmd 2ۀWQyWse&`pv4-oodmoДQH.3Z?*r;-@ܹ U ckˀ[5A@q_vtJ~􉔎`f2U*lZxԣI/%(Pz7%Aql9#ZsH}NCy~XR <'B$ Dˇ.䚌bWdhƣ`QɠrUaߕ1Nt"`D[)r(PrA\n]Ҽ~}1AL Y,WU0k/٥׆9+@p$ӧ~GV ibeΕ9_l/0g_e&zU $s<붋2#O:Xr1tؘ[>熪rZ ܰJC:\:,;vVt] =rrTyTAkRP#AH,:D\;\1w9POQ#TBueG}Xk+r ߴ24<7{z} C:ufJz 埍$!J0aL3#D9)L]N(0o3os?KAmzʼn1˽?6 y V-;&ZDw8LC(e1\qvSX=Qqh*LR"Hc !ӇEqtB]V?c3W'DhQ@|P{ \8&^5WMBBT5?"0\"2u0pi.} %brtc='^V7!QhkI3@i\#6zUy \,F79+hPƖ<&bɛҝmkoK@>;#$K8KI6R\Mxib3{]n+_ȧ2 C V9>9BIyŕl9~bivxY0c u9.ݧI32w*&j0A̫yb זx$'ٱ 3u/\7R F6 rvs/yBYW,`vHFTBCMk%gEbD`ISMea$"d(2ݿ'پ%z;֞p.iXkFjD%oͅRbz=)I!4i!~_Ȧu.vr O$J n"p3̀ux cIk%~EP|ɥ}D+i`x% +h"]tb"b ?l@SMoo -U /*"; r+''AjuST]EGO$Var>KCg1ՉQ&o*N`~T\ 6-4^,.u%<6.M8uW31VѲzI\a& )Ke:H7G&}l+@!wJ_ q{hπ{  CNu%4>l8aE^aaKL$m[ +&$XjQ$Cy-ڱž7JQ 4"EiMI{I;ORG->e:f pE:Aacj+0Ίg+^}5])4'gm([:C_?wW*<}Zlˆ h7-RV9SN -2˒ e2oS D3k;/=iBŸkpŃjpN2Ĥ3QnJFr- S Jp] Az `nbE5|"1˓yIW VMEIW80@2_+ci͞ l#'NN+$ku8[ŻLtLdQv̂vZPN̄`iJAuaSD:n\fjkKORplyb_妔, &lh V||['yr.\li5 ^Ooʈr-$̚\_g,hg[1(?LR++ߵ'詷 ('cϤ-Joǃ# !=Sv_Sulbצ}p2G]Y Q^=0es[&I޼U7 %fKl<ރ0*|1pkE!m:N Ҫ?+zf*!Ə+gyB 7$gMĢN~:Nď/x~,K52\bkt~:1 ui`w(JoiګʿT7r7]I܀5b^#&0" [(x٩훳 6:7Kt(HyyiυcDK:ϰHȲ$73Jj J*5S(XCqY:')q-DpB+[E#~QGro!3l:tu(24D\Ewo';_~Qp=zw^{KPvxaᣫbDᣑ qVVmCٰC?ʠs俒w`Nؔ g>5 Uc +`^>Ӓ'eΑMw[2QrZq`"g k{B^o0ű(+m3oR鹈ܹ\p̨I WG{břͯoXj.B9ܾl_*V[XG:?Ȣ]X`~1t#Giٯ$hm\jGd!V.ھV0Ag2= .GPN OzpdݒLx­aQw.^!~ pE.,KOlzǣp"zl*&`nĎDZ^+4BdQ}^6ŽˆL?%.rG:w4iBBi$8[zENhֱ -;ԧB jУbmB5& H=Ι_!L/@RDlG);M g;kGќ:8v;j٭63Y^n4=5%uqLy@3|kkSuW9ͳO1gnؼ%śGyohDEP =ٶ<1KyWe:9+Id} dرlFcEE$JPq\ؠܑ ԭ4]!;?t<{E$(y#1rR0,4uNa[}X+5[J:IiЦg4] NB&sIaf>^ %<Ó9^O1e+oQ:15,)}dp7bAPJ;,߿lT#a|17稓U;eX &]Z-cFcX @y2[RFB6tYk$9M5Vm|<Iٚ#8qaNӆʪ8%ќq]i}ӤAۏt#Q ;vTۅ]?-s@[ŋ)0fE^T//~}!ڷ{-j ,~n]'{3T< 2df œ M+h(ӭQ"vP L$y0D0KW6R' 3mx!] I"s풁58^}TᲴCKcLJ 8,2zaEeus,-F$֖^J4tO,'Y//VC&|5cf((B=ҠI7Wg1tsP>G̩g \SBp>P؋q?n%OUQlTܛ<keM,$*ΡC4,ũajχ|er7D)8ƿ/Qy`|"* Tb|aˌ1ǭ\Ÿ0Cf3bqi[ӐMq\ d{|X]!fTA[ӌ:)5Pe#e= ֱ톔.:WcVSg^w&|5^ 1UTzEhöxs;@#z*$P,Ks{Y bʵ `|S@!BvR+wh*D]D_7 FV$G`K'(lKL@7|*qSV[739RLeοr 7"V83E; Mn5sCzתCXuI- xNiUCރyEpPÃ@88konv뷒 4f)1c?s"@q]D(x/_/ a@N5m.*rJP߼:uה?5hJe61>θ/xd7x \t{{fDoI*=+hdbd+jLz\Z?x3`]EYFliGM;Ĉ{$b I]=.(:\_#"vH3 ~Jy;P{MSA0STSfgPIuZÝrF1s#Cxoh< Vx't19,}S!]vqRNt-!}Y+:.qw*`>֨M*.uQsb -z̋&JVv; w{:v`;t'wb<ŔPW>ްzMv)Vix%Fn v "iv O050we^a'(9,y țFmORBwC`rbKID# zk-p!(O0^P 5ݺBȫbs | :pF;R_nБ/Rs!͖kmw6A$׌Lp aqN) =/0>9ln$i)`QpB.CQpՎNatZ'#1Tms ͤ,S|OzBkt#IlFר𐨞]/9+).6mlc E! =<[;`p

rUnQDx뫤_5|Ru>`oMONvMłrZ 8fƛehA3MݓMi' Ej KQUml t<ªnMD]=XCLa'L(o[ c˶.4G#EZ M, j\1Ea2YVq"9DUA0kOC j fQ,=LLPmVI@bUi|B1DW0G> ı%곶MukX*ñB tlG7t.O#<HW%H$| =A{׃HVk5=\v-M}9;c,91h M9h 윁pL`ܱËnY+ο-۔9Y#B4Z{arb1I@?A sW3wa>2!{f36 %@M6HJJ`\&> }d&4iJ)~@rc$ >USF/6}1g%M[e4vN ksOp&%[³]?Uc@~g= aW ȓb\CaɱzlBnGEN!"HHXeʌǍ q3xnt@2Y2᷉pÆxDq?09a˽&/{B5^dmjA  9֢梱DjەA#?5)Rܛ;v~%?1{mX)Bq/M[/Dfi3h$6dg6zب+)jzzDXN l _M[\*,POEH=gŸwjF[62©w.?G;³?pktncǠ6XLYը%J"Q;4~ z~_!ݻ `U tY>=$@dtNcML~?sۑ=%"w@P Ez(|X=[Cs~}qqz(*5;]侦aIڜ QE Ok|jnT\'4HT|Ue6VKU6e޵Rx Do-ݔTvB͗{*qtQkDXq̐7 QA%EZ寬KF&"OsmwcCvV>Q[iCIhR]6Uxz7(Jxo#J嗫%nJI 1ڞpc%[B앓6;j"ǸӠwK~n V7~,7At? &x9@2zK@8{2"մ#B|Tk-斴YiI/#)(6 )_DuaH wg~񨫈2R:`j`4/W}YCo JvTr~'"^ZT~7>QwE9$.|)B_~.g˓ZpH`I7cB$`|bAG~7c‰"YGsvع'9Ȁ/}5ܼYkYafqQ/0Igy3y:1Q&@E%2yJ̰]',2긠qn5{ȩ ڋ9yB$ڭe~ C]oSg0gI/8s $D13q,@ߐة?\"^37چ,w$=QYGL)@n܇~xR}O=En s\zWށV^UFLjW~/o>fNI?-V;Ǵ*TC"`*بq)趒l4Q_M9^m \P1R]\*q=<6u;~|z`ʮGz)Q3C?[#1LViD?Ž<ٌYGÿ<6AawToHXQ0ĸOݺUPS|ncdv7!N$~7a<I8udӯLw~q줖-AnDvaJ>{zpmN1{(j>lt/$9uy:CDA&V3cAS $\ָ5>}nB5]l)(סV.3c]FgT@KrE{`<&+,L+7B}}J ?j΂Uԝ $[f ydy: K@n"!(H'~P*+Ff֊ÔߠHK0 a9*J6<Y?Ue{%]ȩ%gQlu} =oAnM |\q$c?OuaΗ#3*AܞѮ0 :;@H9s{[^ZO= nД9E?Ju鼀zBZ >>dAUC%:5m[64Ӆ●3ch7;# ,S;^'p{x(5y,xylDބn.]2η=ش@/_Պ=tSzT[DVIn=!=JD ~n\FfKEw߂'͇i+PQA8>Oa-AN\PW5A|8Eo*AZ c^Ovu1n*aaѷlM;_L; O1s~qt}huZEQ7$F4AJGx^3toǿ1WLixx{'gV"ѽxf>HD{ʍ"Nz FnHM;-pGKWZ$@n>5Zx>c9]5Ɲu %R"/ĦCl~EPm79i7X:[埣 2udOc܌#e -PdyQ[wViƃ! 9 yQhJ a8mAD)$fzl "'Qј74oUޖZƣ6h6y f0)sG~Mh'*zY-z7LeZ\K>D"z{1UG@]QfW&!Ed}P$z7=ZiĽr;,zGWllEJz)&F ꋏ4{pC9Mu!}e@3ʠ;„u*0 o䆵jvBm<8ЯZȇj|r6(5Au/o {CP_b}^mЧ38$[_V]^Z6.[&к ʶC,PWt\@6L7 Pvcl*_iӰ̨!>4wA© t悔ZVθPx̌}Dfl*rޮhΎ4l>j,&";-!S,M7w8>.p%~,V4nZ۫t ۏ06-ҋ96NpxmC `$l&=8/힜XtCS^ɰJy6𧂖GӦ5:莿}khEQ]ȆAG Cu~X0#V5)UKg0qn2ygtÓ; ,l <*dSFi} M f'K>ff_@h-xUtkC!;*> c j29Jbc+9GQ3yj,SC>r~mBI%cyݍZ wroT9hM8 }: Դ)!;=t?$WU$>&,ͭȁd1)XA6{l1 |[iG(yŎȽO];4Bʪmӝ(+",3s˄=.kPċ`[ɎX$?vƶH 8Xq[L9ڱB)#(][aa&@/Y0&(: g0\}`EC?졛[Ѐn_O; v8{(2t[Guz(0HQAXBzDA=F&ǎddj[3EϝZx$. C r7vuJV(%9@H wxd`'b~ yY9hx1)&Aoȋ# 6~P!eE8nHZ%42v3Tg`T56Q`0vlw$ȋnHeڈW*IlgHHkdxȜlGaˤ8V"˖6H Nߐ1<n[C"NB61 _Z/&%DW 'č FPrAYl MJv'}cSsPwuLU19{_@8ed8♿̝G#_E" U]U:j*,B ^^ o&#xV~bmat ~gR5EQL+}CV'c_<ٔv96A'c˵T.qTv9H˕'0g/x7.Ϝ(<uƊ:/1tX:W`?$9¬/Yc;84PU׃Cow[r*YR6aHzBZޝ:Ԁ y)mZq=0XX~hzDݴ5ӹ OacvlwKȃ#x+U+; %*m;}*ȣ"7M,Dw5W4hDY"/egt>dazV FЖ˔ZqI^@? 6ͯ(JoW1G=nݮK'^QܮX{wT^?ۢ?C~r`Z օ݌XgpB Ƿ@&|mW9 ɤ[ O,)ښސ:W)jKKk7`B Tڅ%=N҆=!22VmfaХsPhRogÀPoV?58~׬= IaջW\t3GI{.j $-If-Dx %TF8ՃiEHD!2\Ӑvv|3ڝX'672U~[Ξ3GE$ozCG+$(| b̳ 9es NTpu(ɾ7e> @Ϝ ;F@Y?uEq:*8\cQkK(Z\ Gץ^$O=V/AXB5S7cWQhm~ymԎ,F-&1NDT=DT/X+/>$;,R?Q,h֙MGVo++ p])'O)CE(i[Nlm(ڳt𹢺c|a:o0Ww<`BLgU&F1 Wdr;$8鯉pܖvk`}4%T~.YiGBЬ={rlDV䮦1( Sguчk|BVA\z!3. bt5c(_3F8ZEo`?L&^^ F!!zi Bi@Jߵ* dO1*Gi1GXq>w\r<eNQ \q+ YU4˾r X&}WQ[dط=ɅȌͲFc@taG-n}A ˥W]:&%BU6a,K舕 ~٦<[#eyRi9)qbʫn"c͂P?݆ o<>P u,Ba;|oM_h4MfYgXY)A{:]D1v90ikt0}j HaO Fng\{K!~}Da'Lbn*5>|}x7cf'!_iqk$"enU?`O3;YΛLFRζlxav,EDYY!1 ;H#lD)/I =ebTɽ4e7!vC$[_D3CyZ2nBO.$AwiSI#}E(B LXt2][?4MX ҤԴㆃg(D!Ұ*GQKxMTBO.b (\n\;lYv/1@30`dr6z9h&;ȫP̄tIsQR?. Ng/)n O:N.Ӫkq8L,9Cci''6Nr(Fyi<}z ^X8yg|1c#/Q նDb˼>;7,@yuP`L#(TlOW)0E> GزPm@7SADZ0)]1S wJeB+ATiXXR'M#kT:ȸ"Pc'5˝\2)D92vz{GLZbs@4 $#2 >Up)5 4̏B=SQ O3][o7;I? BEP:"(A$F3[ڶ{^zALNvs WLT8!_5)ڎDtWjJ8M6_&2=v&<~\,kE5$mɤf*Kg=͝--֜U@Pчyn`wl" u\SA9hi _aBeɫ6j#ɖ5F+ jLXRz{N>hWF sm$?jp5 +<*QORo`v!y0܄PVP%6 x2pw O"zh^ KC.CDwfY5kcF_ksxk:FEMr632`#uk \Gr^c; _:v4I+!2JE&B$=u/)د>< Mg +j8+9M3GEOEZhᶓ8||Mr.C^/Kgo߇.﷍(#"UjMqLtsgI_й Ѫ.ep>**P8XnQ1")5*/4eS.^pLO=hҾ EEYZ<[i/J,oYr#3Q|k*wgj0.Q]h¢a@h*y_q ybi icD,yARhw"13+)GKY.8 /)Q#95iJV (wM WT,+)cV하nva[sHO˹ ,*X&V+ iEpp'ZO#0!(,yf+9ݓYoaZƋ<h8B*/ =<4)' ^0 <iԒ}A)sGꃒ#qc`ju;vr'*\>͏B@nF>w 6onB:!J; u>"vQBRhp E~A*"[pS ()7jūʫaMw:4@23 h,2BYoeMP2w vhHrT[D%~ l*5DX4;=7.`.߱<1Ĵc&{7EFiz1 >yur_ ^zb-2-6hΆS>X=( ٭60AüH5e#c R3D.O(-Rw!KVQ8eTݹD.a۪He@q77SOѬ}fԘmTq٥!1Z&sw2<O#RFkMAU&ZHy H!kz|ATGȼ%*Le3}S2ԁSr=4Jp5x|X|EiZk i ls4|;:(O-AwԖcF٫T' UG7b_p@h!b)̕a)Yض2$Mv1nǦ>s:)B)ׁAo!mnzC m]aɷ~yqXSd{bC-9xC㐕r4}(j6V%] "H m2Q0G=+kՌXdqI6=e |[NҲzjSQ8ccg9NE`ZfL[6 "78Y'd*5SekJZ ZƒOn0B&J\Fݞ}zH2?D#zDSfK7CsW⮿g3Ġh0<_gPE,ךrFUJR~>*}bP>'ELγ^XZ[_4 [еO@{3dLzAkY&Se?̮MʔGF8WFnKze8СRXpj TY0F4,h/*fto+tÕOOʠ>"\xgz YlԼ"fm'ELXI9k0P ӁO5bz(jm Dbx + aT楞0nF/ZFE&@Z etCb}2a3u#Hb 6"J/pdK|ngZ yʠ ơTs""&>v9`1 0[!F- .=O,0jzraTԴ/:svG,:!1v:"qgHZh-!5 ,~  ,\vk18g*f?0`<<52}A%;>2%{F RLZ̺:;b۠S="KތdI$^O~E .ޔDoM@՘asrbiBLi#R't;1XaM4GvMW܉ʉˑ&#>$ݞ3iPu@tP-3)6Lh(8Hkg{-zBqY'?׈|Q7)rS lp77B#{+uَ& BqyGq<UqIMg)MA޷0yC'yvtcmU+A1"ކSN/-Ǡϻ$K0 jaCڱY!m+J_r! zpk=G7ôQ#deZ;zK2}ČxF]ȅ_<ق}QX '9|8ގ,dm-7ˆNZgKB*|tII*JU7 l@13aZ4$2kYB= <~d{@GFN CS\z]lSPk(;/ޏcрMħ'Q [`WP BFViin::G| !GΤ/>s;(Tr\ZΩyN\g|e'xֿp>zAra퉍"&5X'#;t3#qޛՖ(T vlz-na<-mqD[IZ1ky9n/7.BNxoaru۰1{B%H@ihx}z.a d"]|A9'uV+-ogoSK$>!Z0 1RKp0=a<ĹdO=oShkCev8.|SG!;y@~i{Xv;_[X6?o- iywrW-Kez휫l2Rš&C)*E5sз2Ŝ%Vl]CJ~w˽bwOwf xt"s0`L,z:#y'd{H-m{ޝfC\bo`t+@ [A%y[oiĥBJS^LMhAS) ;! BOa< pJi!5pڹkޘ`I-H>fڽ~nBqk?fӠp"Qm!݋P |!2jEM:抍Qt\6 w" Lo y:05¦Nf{%gC$p0Fh5iҹހBh>:w.ρU}9F02<ʌ6[`Qqti7/="em0IɳD;7钢;re/ADEk 5u {~$Y0SWBB@0b-lFޚPg0O^Iv}=Έ@a=&Y;2[\,| uOȿONbq LObB=\~wrHu+Wv#~GA[9p%0Hy+xrdi?wP5p"BBJI*C /LSi^)0 cwoD<,-ȷ-UB-HSr# Hkߢo8>nӧ"[[5m b[?8[i~wui{V Qo-\_v*8N8ZCn3UVA\7]EUOX%u*jV fUGVZRҴemD>{qҠZv-v̟>SL҄spr@I=ԷV>'͝B>"y8R C2ٻu€v#Nh;]Pj!$=N^2>|$&Č>ҧiTabt1Ļ/sFmÎq%HC\>" }fDk2:CLr+oG4٨ WLr 1G=^ 6wn՝Ed[ I; jI ekۨ~%dKˀ?KcS BM;fcAGRB#q~YzӋJ\d{ *=ޏ\ JTJP0K@&<>d_*&aL_艋 LItɥ 05< ,ǣ!2.Z:`hlrcw)59wd6UVӵe}϶i&5[rX>|O^^vH͚l.kV#5vK%gߚRHI-ƞD[3yjaλiJ/|I x694AOm~IA} {bٶ1/xyE#΅ yj^dԎŨ(jnfLЍB,9?]{q.\USVWߩiM1'jmcΝa C%_2{2 E !ܰVۥMtXaDZr^O=Q hY{I禢8y3J)]\j]3)GYW0/MhҺAX:;ɉ\|!#v/Y]`4/ k܎ ^'q/F#2NAOnNѓjWmSwo6o}V̋PB4}Fn&cnb6EFmor@%Dʃ:TG0^.:tćq5Y Ed~@/'k2P0DE0j5 NrkrP0]IEz.{G))5N +aZ}uPEB_}I;qzgsDj6X愈bq;͚d]A ̚Vf~ rjyyVa_R-҃{^ ~YP 3h[Qs|`ڻp`(!';"ބ ESFڏKcdNջz)݈UT 3blQj=,T |bPC*A'rob3SP{c Cr-T+fBL/DAihڼeXtXO.<_ gPxԿ75=8\0hˁ V7u1Hӛ<̂hS;{ǩ*NwvuTn fP gp -~} !V,:f)lOp&EJ"M;w~ޏy(~14RN!DCɒh@[C3O`w\{*ѳ}c5s$KrջXRr]`W"4|dceچ~m-`fgqYer^LJ s&7vF=q9 JkYgE!jOXf?,($md۔jDͻ`OrW432 bXT ƶ1;S8#cksX!ecjUp2ktwXC2A5R&qrZ% \e3uqɫ;(mW9t=>wz&ԡNɽ ߽{ xwuqFhBGr5- 2ݦ7NѡnV<9'sU{P4UIif'ܧ$Km6}p)n-5cC4ϟ&/!j˽Tݮ~B8/B 䚻ңk|oeʃcҮ1P:7iO&GhK&Jka$]m'1M @RKo͸ܔtԌۈ=lhA$'΋X>ΰypLNWApPZKV S);e LWI\'=mphuWX s3:uˀ+1$ "ox1ťzEzn.Ѥ,*GPqκPigo#%_\S[nؘ=}ha:vfNjR*Y0Oiod!+ʵ: ҙ'6x8c=:F׎[J.,RErz\fw_rNq r(qXi25{Ikah8z9Z+{nNEu%s 'HmG@=ߍ7(ο򱣸:tj.~i,!*gYyjۖ{iv g,9\o g2<5k;mހBD񣜪C%e|(!O3Q>5JQ` sl:#Cf00 =y($P1@n{b/ߴn 4D ඛjiڬo##$ 3#QHR}UI _R7H  [>jR/ rn;|T_U˞Lqofnw܇Z_L)݆0IcS=SON!C>+|U(CE^G-a굓r'웈 M$nʀK&1iZ-L 1jfݚ55p FݝnvBj K^m>bؽ@^Éȷ9 E"wNf]L˨GO/8yn~,3y2^j-\/6' l ;XTxĪ!Nh [E]JW(|qt`ĤD?X?nkx4uHzl>?s$QmhB7&\bUްN>.H;BLfnߎ/tIJ!x)ы1e!a>V$W:HdYfŴ nj<@ 8XtEQP_iժN凝Dh^7+!}@beGjEbLS_*eN]ҿ }4gd$ruLhyDj:fqp',[Ճs7 r3/hVwn==9G'lCLc }"Py+4꧃ 1VwRgv4Ozol6$2}"6BlU j0%'b4Yp?s'~ƅYA (*k?٩;~CFh$|ͥ!__D138*SA "-GF OjwiYG:ܚ#~V}N?Ǧg2&0'ECS1F#C[{`Qg*ߣ]U$I*p@{&ژ1 -H-;ߖ/ŰJ;Z Euehϛ4JE#Advyukwh ƬeqJFRH{ښb 3:8[66Z$7ٷ6<370&\`Usl00*"fn}(ӖlA(gEP+qZzY6~ɛ›'FSpzVxAr"]9 iC]]UK&%3-"XBYOTvu1$Ш›֤.~[%{#mR$M4]1Gnږ 5 f득X{xNZ?[d2 ܐF;-@ZId H$ [-;s79㿚|KPl<&)x~iWa%UxaYs@|XD1(kڰ蓼+MZ8vwHr/AtUu}ic s8f tMwT_>`=b/5#Ap3Q8~rS= ΄:7 d<+C"WyM K8{eixRsMh7NOZ> 7bQz%BORo~u2D)T4€?qYj~Xy{&ѭ 0+q5~;/*%9 IGEa=]d^u69VR\- ٘mSACi"=@ܵ v_Wl":~U53dR0#R<`E߁Gz1 |3G̥OnFS3xYEV c9>h( %#cEX sC~c_ҵZD :b˅}Q Ŕ/v7,2+K@5>Zc>a0L^d(FS#{w2|ׇ]M}!yY[s3މpJvzc,y -8})ʛ=fΚf  f*gTۡaj.ߤ0bP8Lt17 UR3AnݕS"㇝BU;FNP Ig^4A쁬?rܵ@m1~4_YG8-nQ$F;M75~@=E7S, ُ@pGAnԙKЂv`\×Z?}|=VVC$*]Fyk3gE2w50qi:y& ˩`E+p]$em)`%'Q:I?x-U¨_c *"#p~U\9 \U,ϫQoFѮ0U3o,8~~r="ѯ5oj:G*,e!gŲƉI'ĭC[4bNt 3"g>6xIX)ӊ=/.l;l _qCL@ {{2` W~9Flw\+j1Uu'=H}$ewSǔO.ڙC~94Z}-Z$(T`3efKJz.Ѵ}4F)( g6Co\JEN"$R= \ؠnoT(ԻD):^n]%]> A#'wP2Ae!aD<4@q/.W'(Aytlidduػe ݍ,, W1(璋փvi; ǫNw[^G j%d]hj/X'ϳ/@% QE-`s3?ĽwƗf7:cyFN 5>r9M>0S}Ax%?rƄH dyɗXjVdgpA)0r=}ڝavsl=OZϞ2;u}"kiEπy JP^ݏ~DFM-I!Izk5HRKܶZΫ}oWsŕέw$SX$Xs] *#9뚳N~DzcMi|/t=s<&E`[ԓH C{8-;xRc "W`?qTH"$H=jdMu^wFҋ A݊Ltp3#fKsUz f.Ʊ(17jS!x;+( UMbh3 Ô1 ڑ(Ɩo.}w$f/} $'s vGcC;:ҷo3fL ~ʁ@B2c"^[!߽)=L'bɗZ'SnA5F1QtW+)0_5 s^(@6`#vj效4=S >@Ey2$5~%I[3Ud\u ~L.(1klcE L_[P@Na ?މ4uoᄘvmÇP0ܛ9HðEb rƬ=(],=7!_^7x/Q=ӪcG"tv!=F.3s۶ݞ9̪Y*ג߮Z.35@^gɪRڬ%2u|.Gn(N1?^ 8eȗZU21mMu!`r20IvȱOS0+nRS |nmR ZpԜߧWxfSX<#sQd'9G2n"ïc2mR:A M}5S`OI8 Μ0acX62>o~f1țRvkfoXv9~?i [{ Y{G'`b=:6̱2uxZzIepﭣ߹AӤ4ޮ(([H&#d4įR_s{H,$o7,X9+y|?(:yrc[IO0p)EdM9O`|~= %e;)q .,^z53݁z'ɮ.=uQ C;X/ݼfXVNKh8[]_opH{K}:mⴅE|v5MI~>ͧ*<tYmGT&1|Va 8M 'sWo1ċN-Nw;K8 XY#*I{6׋"* Ï7Jyq}/"z-. ;W!CZ,:aSZTŪ G_( P&"km*&ҽ;ڕ/wW\[L ƣ~A]E@Q!xv ǎɻS=̲ n-6ɶ< 5YGӁ}UL6=yXwwzl V΋W񙬍'kA(pĄqF(GtcS=+CP9ie8Dq {tq|F1:MV=4m:sb6NI1ˬ oEoKqL.iy r ׵v=3Jԅ1疄VEc`yl#ʍ`sGsI)2^*Tؼ旖ng5T$=ʏa I_;cLvhb@UYV5 zE,OeHoM-h|R2W?jҩ jE}˙= 39%;A 0-VJ- wHaco>@~@3a5q )Śk>bb^I֞29eih$o]/׶$Y].兲-6!,A3[2|I4*p.-Gk#׹;2fW@=lRUߥdI?Ӳd"m֦BӚN*+W$:$dE&`RKYHy /O kX0ҷ``xO9'K-b١$V-i TBajC4VUɞu[ldRU 8$s9%&Ccgy[e2StZm--Z l4eeGtH>lGdJ'`Jꏙf˾LHGɐtL>K1Ԥ(5/k'3S8cWG*1l*jW8qDx~.?ŘgQ4w:}RNmL!SL],Zv'DNڪ?q8kN , ͨs堯prkVuz!d'F0B~IG|oWQfێڙn8mI%?T:+*DUH?{sNB!խNv=Afp@dVp }{_4"O˩ 7AɊ3f')AU' 6csO#(& hRk"'(HuL`+'*lĮj$歇ۜc}4޶^,OPmP`rImD 2z^ASzbG=jpX]9pmhy_噶'Ƕ4r*UH&^NDGZm~rؗXnsv1Te-AƁ70ϴov:8H1C}~N O3Pϟ|;hk$]tF$1þo,4n=:*2]29Ld" . U>iVc w-<ѫ eH{MQ؎ |#Xf,& ֽrk it{6k0SFE[ęOIDD@Z!wae\ 8@!fܻ zO"8ئXK41ҳ{5⫹K`P>RCE3fX ϰ}Hr߉r1e9}o#f|GS4"*}8WbHi>KvK_+y  KZb2? p.VRLe\:X"^%Ji~VRi8oj` F:uŊ'Z`:Dzfd2B 7:~D(v#-,9KK{nI{yƓ0ɖ7jPbnRS~ɢ@噊?!]4K(KPzmS11E0Q#D)q^&'"/\. UTQB:Q㜼R mc>ox87qV3#LzЏZ|s`l5j v c=PDi)O0͚K(Y&5=LD6qV@:x18oP$ӛ3jKŌ32PO#e M!=HVCQCҶ@pk^O)EA>\C?$&JCB.'tbtnp%2wY)vLz%]jⅥ D $Y{l ˸}lb#Ǜ"-ߚXVC9llD/7Ǭy٢"ȾaCZz>[p#W0D,=LUmY> R%Mk19{$Obh}瘭 \MW2))\B=Љ i[ZOvnnBJ&&Kη iAzs7oP6 -sM܁#fYTVaN"H](Vz x%DH*.үpljvHi[^tNaKd6,O̻-W:@r*jZN}Йވ.(#JZh'4;;QSmE.-\ ^+%+(.wB&lL;s&/בHnx3'ܮ~|"_& 2TSIoQ] FfEf~z`ݘa 4eA>-({TBsGr<c%w{x?ӧ&΋b<^Ҽi r>k8(V's&3ur6S[(j4_c]r_=.ɳƅU8CxtKϑtUtUo2Iq#6Nt?Sq +?T:]ŌзB&@kR6˼)j4+Y/o8]/k,qe, aBHܠ:FbY^2[BS8p߭yvt"?;zBA>֡Q*ׂ|AҌފsem;h0#K y[z=x?+D6^{ "+LH@AIZ=5˯C{wLn5W1I|r4sSdɻ5MjVKw5?mI:R rY_ ?"4Tr@S eCl6bU@x^leP{?fqe[c\:$A-|I,N[w,d/ȿ?~mIW 6^e͠6_1,|ȍܔiNɩ~'[At4#GɮLmHOo, vP;2T7nL+Wg#Sŕ-ST[iUu4KT>4t l=x--s:e.M]QT`)+H@VYE^#t_29.CnSճPus=յCqϤLgab8slљ4/mN&φѤTa9J`I_}JyP+aq+O>o*dG<0VtA TȫgHznIǖQT=+|0 vE LQLCuY'z؎gm"~&\3i!Z6Q\w3љQXilL҄eeojuRi=`k }+B(]8%!b?}hЍɡ!hߠO}nvGq>nw#qB &oɫDJ~p`5Q0 3p(00\=[a3W { _82Гfri(jB_*GWV=,Ϣ6.6Zda߅P5⫬;a fW o`tR;; eWlH+,`u+sG|UϔE. [u=kP`L ;oGnK 6oUL ϦԸ`y Y3!|1zSڕOjN&teQ_X ?~A[۳k<M͝=8 TSd}%YIVx`.Se¦m땅2` Z7/r_.hź{Q崙RP"E ^k.*g+1)1ckxo 6Bo*ٍZ©n_j|Ɩuzlb|u7Yͦ"တTneH0x'RzEvqc"ҨE C EǾx p[PvdxXH5W#]*Vm+ZEj!1[/(Gyw/]9 6 oI2 z6r6Iו}&c4W/`_pLsI(<'{\rQ͘n|ftJ^9gR>ڢ9=F?ӉM_8%*a_ @;aDj]l c~Ch+x qlG\}֔ܙoɡԩP'Pw*ROn Jޑwʹ$HP~f} `+m'FջT 2x]Zt8)bmW֣b<7bl Ki|yW^R0A*& nEȿġ:2?]CSoRN'gL)Jò!n4;j-+^Ybܯ{ny{{GKcpFk-y[fDYHE%GEAsV(!!v.eu44X-WeT#Å_%XcPx ,$#{1+ddjߘjQکӺ;N }ajZCҪ?'LtZkr5[^5Ð PV~ĸGUI1槐/mizwh.o԰KjoҺeh\&L"q̸]=*IrYGm{@ӨiqVuV}QYip \ƨxE*s~H7 )-kPOĊ1G0wE/-BP9KjFQͫ_{' ㋋?|1q8ϭU̟!X5 |[YORϨ!@""E`&顈|BWи1\)0, g9 RA th{p{ 1;ٙbFE]n!Ja`zHIoO ퟃdH}OPqa"dn/_*\P0w ÔVͳ.3iuwGgIp;Zvxu$2޻ ۤZf]i}gC-ew@-!ml AL-xY5 Zh5nHVM wp )Re>pjV~_ *+_gDXf'4tʍQ+ᓜQ㦷Ph ^Dyܱ2Q1kB$˭~ځtjvEJo%8zHE="% qx#hoe垥J JVĴ%e-T2>t@]@xau1S۠?LM*oncNߟEwfwo%ͫElLnY<̹|k(nU|gw?K:|Ӹ i,Qr*xk-jNs@Dj_OP 3r{} Ј+|8t.j[6# VNؚleO\m:f:4G,tJiGЭ?[kkc!fM}jx@w G,ĨMC"i Q#%YEHjOV'>$d' =fiiz/Wm0T?{v߳pfa[s؏ mX+bU:mg:[:V70tj5 \~oV.C.W:S \e~vzzRڹoФf\qXw7j&I-YUVf62 qAϹ֢O' %͔X((@/jPn !V!)rPf!PƼ5+噎dEwWVǷ_Geu}\ Okz)"O{Ɍ'R􈲇a *D׆x'o_=.`2=%)\ZI<ߋe@+_aY x^MK,淰Od8 [9ЂX|]:%ic݂ r1Ǒ`όT ƽI|?L3ogֱ3rn~rSX2)PtL aũm*?YJs-fHiοwI.F'MJ骐n\׎M)(LT!CAb)ؼZ*Aܺ!鴔R}Ily_ Ht%\< GW$ )iLַdLI3 ZJ͜iӈ,/MH2Nk ՉhemWov2a4*˖K9['cSm1:318w?'U^-C;RR8uu(-{dc:e<μDRPyj!s(*9^m%4Š]|֍B鱨KTH}w%M),׎_ڹ8ځ2a^g"lF’P9ǐzԯn!Z;#%}"ӎE+_|&Sjc@_e.mMZޔHjpLVwоtm?b\N='"ErWvR--JGʻxP݄Ϊ:6˰E9q=VNɮ Pk J*o M~hs>Gfaa£wlۑi?ԯ U1w imUWGSK{]!}1+fW@P;MMW-ՙ@Yi,`R$j82typ_"O.ҷ4.0tO'YAIknN|CsE>6mp4jě~+^!4PeP?4Oiѵ~?ETgN+M(Z;zB)Zq{3ZoHYtDo~cSXb.+u%"%J(bh_8PB$ Ŏy&; ܆:؋4Ms^(]|EH?eqO8B1YZ,l ^bd0DF=&/4OM3fdLKP83Vg:޿Ķ( |W ƚ%.ƒ8qyN}i VJR{ݩ /p*NZK.ٕ#n+QApU/{F{A|,$;5ɵK 34Sҷ1RL{ed** ɩCs>ևM7ئ>S&јb3>V=% 7R)._#j>В%R$?nG,#2o}gl9/N%H0t(#JxHȁ]0ߒ JXv :)/[BQQ5Y*UN|ƺ{f+/O_{ynjf3u#ggܖS֎4h;>_gBjŞ̻Ǔk|=$ hm'(,'ON#I|%L>8M~z訟Z3Գ;$I9@7iٛ sLSKn;gQK%GA;ɟ:0+ Ur:$. eֹwh"][bpIP5F~`ѤdMR`}A%Ԣ26qA1rH0' zx@_~(OTDj#>py1 +qq^BD@m?Ojl z_KW&BA5ͥp눟9 ^JH,L CJ,{L)wxylQfɮ{ui$?M҃A_r& SyL듰P/p}:+ :IGtAE#]Qƻ&{x,0@?b]1[A-B?#]6l_2xڄ_vD3-H葇dd۬dmau ]oUwެQKk6]i' -Fs"Wi7I]w*<0t#d1A|0mϑ*o_:KKJ`TP\i)Yp ;<\ ]LA|q7GK\ϘAb8oiwlyP 9C fwb>0rZMÏǰN/ 냯3i\GT >BeQ8i#LaoBymGDScf~c^ f:Ӂ^1ت!]J3QK`kmF(0G7ދyAL\.qYO7:cFO!*DAQz[ @IneAܜMrڴSR;u܎ꅥDn?aI8?|)J1ĘA 4\Qƞ=a~\Ot^x@USp>P8TKHnf%]&`|* 7$c4*-2 ^FB}(j6tud>Hx^LeQT~e3 㜴Nwvg7qh@dfW*uG2'eRX 4r7<-.R/?%vhye?^Ʌ6iRB oPf!9a—bmWԊbadJb~K1Ny*Sq} |<eJ+p9hhKLh\=`!H"zy1we7ډÅIg uH RIfs EAh`W~Irrco#]$M s&7  MbYWsivdaI X^aڄ1cH:| \%VY[ESePYVP 3^϶ɠ~*^Pz 6b uwcNZ| ,d ţu C Po}NlVSjւe[A\U0IG贓 (G 1*tGgn'yNpJgrUmk&fpn{G JiDe+嫳"ngr{#Tҩe|jV?T1CکLR~ܩH+~X`Ͻ +Ц:~|;_נ @jлܱ kB^TAHP ͒t J 6 Y'|^kK.ZLHU<7B?c (m@Ry6(;Cfm B`6٭1*֭t<(b($tmTA1rMFe lxX~͡d\1tSSDj p.^FelVccN2=91-! N;t1*,5Oq=o fb~ :BhKE5 ڈ09 XeZ;3mL|QW$f31wgX4غږ]e$;1}QJ4./9h~=[iѪwPiP&GFhv#M֧?l]6:@!rt+PJ YlhT $;ynuz2k_4ZuxѢD4-+!aC=T 4,Y 'E3ݘ8;X(aL I6cO=;)0/C/˄?ttˈCC i_`}6w$qW";X{\MG=JG꣛ͧFhKi_-P8[G^GcRo /(b)10cM;۵ [.h d<ؘ9bi5_XGwJk/#K4ĸҖv 2N1')cMZ/YL'd_-[ٓy-ù=~^09ۈhvjsѼ$i~N؛]N‡39Rv2ڷY?["θq~@wd֠ɤ1}7.PȽzPK_?| DDfm; e|zMϝ lg` ǩi>N14 %%CuON4Yg-fT$v(4m#Qkvn+/,_0wociY(Tm@xL0'釠V<7Uw>K} Op:x!*_Vʙ  |s+G;H0و;xL+(%aIeMJ[NƁfv~T9W% 1D' i뛭Rڠ4roqE'{RU(gnt|@EW ?8' [JR=n@7LI0KKH*mĞNPT_F[2쀦`EK버=.纩f/lyJ\F(y'8Y;1 $xҎ+t7Vή.Tm=DEˆ:QY<*^= ՈD?kC5D[Q}l2/k6PGPٖ10&1^#phm2Uԇ^=nJR?"<eؘYfD.83#Ul8x=+-SlbGu@X}hkɔiaGZ_9hwv +[^FD)5P i-i ץۍT]qgsInJS7vKĺ3*9  ,Xٝǟ91 .sUgzVZjBtrcj[I1I'W)=!d\UV 68mw`ڪB=ٯ=vyQpgiن!@uOX374JaUh=WPe!&zR=bib>q5c>eMG>ᜂC) +.t6?LxAZ,{̂Nx|v0y,q>y0ʠ@(&!ihTF~'x LAac'ig{JYK.VeOcF$Vs`ƣv$}S ",O%@Jw 696w> b|N|͟RDIDUȮ z*Kӹ$ΌXXA+xOoZ>+f+M m wg: `/QlbTdWx',h#< AUq"]?"4!OVS`ר 9t}[%O@S:\ي"OWd r!cg~gEV!0 l!nl8쐀EeN %jmEcǚ{,7W޵ d6/CADuۥ_e8b$n$;41-{X@Ws0)@avL6Kͷsa޳mC~ EզHTVkk>OR"_ב>k_y`4O6"eR|n[yJAẕFęr\ORjH6go)6kÍ-c$r_L;b@9|T1 w5a7t"a}ą:dA.Mg)-/?g R6JC oxA kj8آU*P"#rą_p;ע6 Iv'XLn =|K |%s:0˙Ө6*Dbf>ڵgrPa%}DҌvɁ5wf3]?ˉ'x-̱xlWV>i H2FZ{T-P#s )q*<6oSSl; I&%h,cX2ѥkЙM ਗ਼e4](7CX5)k')4EĂ%<7Mc/;kRs3=cCM ;BD`vx֦8'7R h˗da.`y.,)w<,yUb4 neNp;49Z I>>.]bH˦~BqLތ pRh<&8Jug~l+ba4#H6 *}pvߒHjc^<ʦѻޢNFqLt- pp5Xjkb47PU(T'2#<RԜVÛ$dF"PW-'d?UXLrKWʬce=g'YWSd)"zۼV;O6WotKh7fGA7b^(+ݶz^qnCc{OJ.p|ޖ#p=!]-l R3 Oe~U{V_Ƿy +I/0d53-ܗ eȘQºw؛쟝:nf̮6n(5L\H &ؾ["ɤqEyrlf|J0@JМ;a.Ouhj*vwƏЀ1_5\4¦_!ɛgO+ZK~4s}y@f^b:V߇b ,A 7ʽ;;(/d;JGƅYo*g p_9XIv57I"9BZs:C'Kdq5*\n  T綫QG{rF{~l}DZStByW{6b1;uUtBvbKsB?'M+np蟵q wP)] )D)2]O6G#sB7s<:WUې9gX &N[#$_&ơZ(H(j+dw[)_jy@]$_Ag_'a,$Ofֻmv~Ir&TUIQ!Cc}_!`tIdZU%Z>QO[XiP6) Ё'HdN~=XpD0:J[44T`q':^ΕyK='N8#p況c܊YnV+׺GݨiVKtc7[}"^Eѭy,]E;z6xA*-1.nJ'nUr\ j^sJj W,154?{|"LKE>:OZņDBe jUeʣgPC|=:42~2z\zGF(U\ǾCֽ8.MJ8Z ]l\8q*r11|B!#R >>'c0t T c| e@#N $uMmZ\+j 2f[%88T%2c wR>TcP|0"qffsk#PK[0ԄĐ'$[@Ix4+PjLIGgT#5V'ÜEy/\U(Wzi/BU< {nL+k5Q} b«cM^S_ER07C+4ӆJԱ3hR5ЉOUVDYE- p . ء;ݲQue=0b(9~~D +m8S4<`'U;>gTE`w6K>7#_SYq ~B uGy\߃J谎nϙiz=?K^9I'%` -/z'*dr@¹(!raZz6j˦I|DJC+uz2ɔ;#D=W^}u#&Ko3RnlO\*.Zg(4rbCe[۾`H/ x (f0r^ҸvxŇι<[|L^W3%г׿u8![ogI0ɀdü_٦ 7#yܽ8_ r0ʋo>XL{^GL O1( _t?cArgeZ4cg^v8^+Dт4jpCI&@DԼ\>4`hNP +V'8̗'Wu@燖,eO]VE5%9!+Y(8cjԅZC}\VlHC Lq\>n"i9 .<K ' RoRc:b0#U!Yv8)4zQ&E8]y /@G/7jn |,6ҽP1xo7]~*g^^% B6t]櫋?}^GjP&ٙb-:?7sʨ(Џ%:#쳱 ka4n{Pٕl@KLV]NI=( : gMgVgJ"5*]W[RO߅7%`nhc/{XI i,ڶTBCCf'Oׂ'ț_d3a#=l4yYX?6}!B?UT&y>0oٻ@t 9W x,VĺD2Jg<^-chTGU*Ns)&eaP.B#M7˛;QŬX.O854L"E z!bǬ UD+ubvhlg#hS*Mу1U/T(+,md]5OpsP>YIǔ&?{&fxa.Dyfz :m~?K~or,>06oJVށGξ_qȻٻ˨0{WKe:FXiϥ9Lͻ''`\C [q M5.(A8b* !IF-du؍.Q `&HۜcbvzF&L/2$h܉y-.ƓXDT񢃞h*ǏL>Zr3xyT Vwo,7Oiw'ڰ7(J!QkƢ@g?^ȠO?$&퀀&-m%i9 >(  ҪiG|(j:o\13wɕ<>4]nBURZ 8cq$,xl(#V QZSVҪ $-J(h:>'67. CFxU*\95xY"{lN4y;Qe:>._a 5$zI?xI8=j-Ȥz ["x"ޞ"`RIc<V֦ ~N%#G6ѽYj~M8/)>3tc6NFaC2NߘW{vnJVru^IsCIl )K+Byq_ɛ*Q!xOl-*P&Z3sIO.y$j]HȜBA3L@fXl;MZqN Cj6ܹ]ahBK~73} !3;[aM:Ǹ_o5*7dK]l5 (Z1=5J&d1 XSUuf-ommIyRGUxb.Gywky&%U ? pqWϠz_+sC!=~G\L_kUTmͳwiT}5ވU#?8xG);{{jp\1hwd`sq6 K LZbZz9u ͇v) R8|;6Ymx)N@ɭcuw;?)q+ qOXp'ғ|%]YCPd:́Y炵`|ɟCӓGFEqBD[;4EyM?LJ ^U \-`bYKJ„ܻot"3' c˔隃>'%"FnHcUC~8!"Wg',ä]%X$4 1 NĊǶWS5G,MLs،'&U@Ε9BwH%ղ|d!E.1CkrϤy-^P҃=62fT褓0,<]K `'~D` 2,S3"_O26: oh_9h^hyxK&;|Bg !G`sFQ`MJcȫN5!eI/Ӡ!|n8}e~hy2\9SuRA3` MwVn;WZTIɆE:JLj߯B,/Hcae@tzΞ@m{<31osi꛱=P R z[TKx-f)yֶMլtR1;06'kh kݦL@W#[jt7K/?"ĭ0w<߉Mp/"e5o9Gߝۗwi  .X-9W aoD%t{qG TZv揳pRcSgV(W۫ldC_A 5?0(^JO5$\59P`?oqL.p0erĹ*2虆m@Fgu=hUI4HwzsNb-z`yQiPO8. 8$XL0mRd| P81Hw`!FԠtwjzPESM'mXoX\,fx h<Qo^?_$D y2Lq=ͤocǑ{X/Xdz ʐst(1r *R_*h|K>b`0 |VŒ\,0#=#"(\m"&OD45}Es{VW]B/C`Y$ldY}-ձLF\3$w}5LttQ `? W󾳳͠?+&N|y3'sie*ȿ74,\̼ _4vA{w)pl82[:sv5*1,Q#)'dК D<6 _3I7*Q 撲pa?AqȬ_p /S7 a/[ [Ņ.G#&?).-E/b ʓ?}cR1Ivӵ֣ C3'عxtA3`+d8aP;?W^!Ƿ p>iY2H (`H&16O{^ BU:oPUWitaM^Qb>Qb؇l a9⠙Ks]pG+uD4C/O6}u ˤh~{9Gd;a>XrU*tb_Iӿ^D CDSʖTl%//$Z/O9ɳgX8C)]f,퉸]Fmƹ`LIJP6}u6*I,I?k"f.B'2]-yRH4vsM'b|v*F*23?-sJr ̳.-H,E DuL)W n\= jS-f~/WmYѢ,*y?‹@%})Gd |eW ~Gf_r DvyJbhf;#?e*`l:Q#=xǽod sC4BҸUPRѝ za7Y1˒/#g8G̶\Vc?O#xsd&Qç et+ztCK=bլ:bhn1C {/ 8{eÓ@v""$_F$'Q:aNlU ޼jv@J2WrYn[YPMע)W{ѣ{m5jtנ:кsʈ˪CjTMөM[!ny<0▂|go{R,F)*M"y??5clIw%l@2qE,ߔP^Mjk?@`Lk*j٨ϼ/ xBKJ @7 Ǖׂ/H4̦XdX42-E?MlVXHŤ#S[RE~3ZY]~$ț``- ɝZn!RR~>nc]H]t4{NBf2AZ9{K_ ۨ9GM$OHW=(~\FvaBf"XyBAԺL# z*NZ͗/q Le"@ 0bZ?#TTM]7pdUڜho ɻCwUz/i .v-L'+EjTnB !`%2!.C" qSHꧤNEvzp~"݆I"$TUgaKPG @ʢ!iAHaHdEլ(گ HjEF#$èZ6*Tl$;DJCr" oc'X҈z D+L٨' ~eCZ'&{hWU3{~(Wvg} _<=yBwb&ULtV܉SÚ!O̘dϳKW1)(LLp`pIŝ?Z~v#j<< [7˜ܹm 10daE`tΕY@ܖsޭ Q|bO4Nϊ875|;Վ5q; q 戳~9c* |/뾼0s)Ӣw㦸nUR_ŷ-z%7 6L y[|^8 \']IThUEL"cVő*6iSMH.t8Px[\ǃaxS?,Ȓ| xq[Y֧7D(ґpѶnw0R}u5* n==Q߃Xh1TWvդ4=NB+'L" GƳn᱈Q_y[Isk{{rnGOi1Ʊz32I녝z89TFgΗH|a8ftzEH[\= QKͷ @U+g Ėvꜚ6qAoMzĺ݈یlM>!漀i/H؞g3ߟ[+eYV^4*!FL~X0gdQsw%[ ͞Qg@-Ã״N<`1^0):L`=<6׵砇o-'#y7[7'Jɥ؃k($`"DWF/QA*. EwnHԘfQ xdz$/x[2w {8`b}AZy6I-PX,{Xt»~~{+mu 7!gOMTf$🰳I%g-:Q]dzvgJ¤DMWf^C'E(XB6Z \Ec#׀+f->v8Vg#eD ZX߹#\Zu(Pbsb"%[^ d=D_rm*iJ>j]$ZZP#KW ªjpxvV`7jy",^{]"ttw-> 5 kV3,F%DZ m()6 yufY ƨT8Ƹ|<9EU,Ta8m/2%8:ْŴq"rA>YS#@ Љᯎ3_$ 4m54&#?Ķ JFTuqyO#0#\Sl ɸkU:\*2pvifW}`9#"iu b|FP+Q›?w5,/kb_[P' Ǿ̧(Ux[8-g꼈'5+**nW.` G475~ռg.<O;KGdԵ8;y Za"fCNч/anrbkdUk1:贯ex궨G4y  ڎ.(rm$w`B| isz~ȹb.Ӣ6[ZcFu#(;e)ABx&z6RM>1}KJM|a? P q}M;-)n8ᓒ`}v,l ].RA,J6?|kY,R7M $AGw$Z@}_Qdf~-#2%m)yN1]C7Y*R"r@>+.7rZ@\䆩<^>S q@m'Sی]ọ$"lkOsMnͽxrjm!Y vC!N=[+?4rдwC"d;g$n~b=HQ Fu\VdŗVuPRJ}R-)pyE( `3(l; ca'=,-Q 0@.KV*n]]8(|.eeܢVb-xjrHD_.ƶmgB{!"qS{<LW)oKOvj>(KGub=FfNUDoy\d$s"ou>В#^x #^\f:z_=נ3+ޭE$8?Zf~ШRWQ?V&\@:"ū}5RqzEߞv%4 Ҏxu{$=1SE-#e./$V6_~[tϠ [:jۂ6eSU$en&1(L H110:,ͧ4{ICxo4=*{U%:m'M='UV-Vn]JBdH5%0Z@9I@<;G`O yv2#kpEz9JZf{[pIWeZ.^nPOQ:p<6TK LQ]7>1~W_aq֠Ma& 1v HAAV*m$+~^Z:zP|u$ڧߵm=kpPXb/hm?4f@Drҧ!uYUFhf1 / :#& N1.TdD^<7[>z0*1P^k>X?eA^BD u]6zT'`KleHkًRW(JΠ櫖\>X ؏Q+;4A_C ѕ-9$t6jcp(_Q <ײp`$ ED(c~zMu]Hb@56|YCVn#}fL܅n>ӏekB政2<}bYW/"۬w_S.)Zן[7*B?0`n@>5dכX?lׅ>{,=@jt|A5v^8_Jʝn{aWcRz #3#J}:Ú ̹(c'P~91 $;i5/Q8Ի\7ډT09fqiB!LNOr  '-0NAK6gJx#Bxn<,TN\-NyZY3BߔYIW*I^|,/i}.Q Y1{i46{_%zHLjxVY~iq{n,e0ѹ)Z2EiXԜ$p "}ò`q&W+Kd$~y]eT (6oM2 ވ73k +Hh?Ͽ`ݨqk-lj+).qdTuׇ3|}Mv \¦D 3I"uH?Ei65_c{ag9O"O "]_=mte8FX|O'/ QtO"u)å j >I lC/Gܽ#,ŔޖTvYgChj[R<ӑXCRC]*ݻvpF៯h 7vKWl9Y]= ȘBjt͙k *H\OOŽxhU.Hꢑlؐ caCnNN3~-zŽ[?86]E #-PMΡ_V:(4hnOX'S͓=ݏ׵6tY@fES7&,9]S[nN%(r2F`.%č_.ӓbT#nD]貗%QuaUʴ#@ayUEtp. gʭAVQ߲J>c  -L#:6`/F b\_#0sMoϭU!#sx;.ͪ{"3^S1Y뤹Wn0,-QؿySnh7r <7`of?y74bHQBoEA5XX< w6'7ni>^1E1zT_g^Mc ۍ4#\DU"8XE|F@S9-"5} ~o$6@縟$֎9˙J}͝GWva# 6<-*~LwSa3XTVNٟs &Ư3 Mb'k"yJ̓ںi?aƇ Vᮗlc]wCbmL :^`(3α<2\ψy{: -֫4\yNtmga!cHغl<z12{]V(DžZi5Pk xHT3aN@{6 OHb޹c>#AHc!!W95}JA)Ԓ?ih= 3\@qqQPfUL*a͇"QxRpy落Dңa:xwO&>]C'5xLi9%0.`]-r%ݛ2$.rVY`QN@S2*sWhІX˜8bkOjA73oegQ__5iו'c`fW;AZ=G8dЅ/Pp5vV?\/`*Nz 䮴+?|j92៰ji@`ijAҽWG;?7m]AħO@,G`]_J#BdT (_E&|FJn=7nぐ{>^"uOQD>̥ Ϧ7K7Y@ÒVd*Y9~V#H Oٯ;8޾Q=<mL߻;TE |? [&8U`܎HQIn?QJ1/_KvJ|^Pm"~ 0[J%Q}͇,pHMn]DhGWyj%!b 3ζ.}8VE>UteH-uyrgU\a/wLp+)MFܑ{jy|@,J(yaV@RJ%8y1)#1yI .'1A u3O͍%~cSÎ޳bR܄Xkͥlѓ1MW#}E{ÎE;2 B!ha Mʓ8)6+Q.V1/}!>ژ_*:}O2}g3Ո5D3vP! iI $Cr,1BW8N#Ե Ÿ̙aQXu%仢pw` r;ʮoQO&궶Mip8Y_IS_blAv%GqDr$Ǧ8&d&$ M8J,^byM\q" "M>h/N[IŠSHJ}:[Eojls޼f;@A;S /fb_>Mgze4Z֝`Sy/`uҪGv_G^(y~X E0:,dR.$@ND *#OHUIH'gmz'Vf7`}.ɼ8&elz 3^G+je>ה)8!IUTnrC"1^8_W|Exd*TShv[##?Hcܘr<{J\,ZfhA60rڲb%f yK‘mI!&s3 <Ѣ(jQ{RAlz7Iv.8Bh:E\Qb4 xIT>;G;7̛U"^]q˝{,˕ptpXMSe"K@𯌖ms&ԤDS'x`ez{Oe*;&5ZÜ fsly_7/Ǥ q6lNN5NqH70U31_,h*9Bw3(Pf6 Fܠ@ͬśHrM3s# _9m$VmȔGBa(l#рI/.$_rF QPj&z:B] ѱ~'JlyAy5YU'e {>p4Ԗ\/9ֵHyuG^0u*gX25Pr9J{f(0L"Lw2]L|7۪H1 E&;nHIU~?=7:=f6}\e 2-~rX;m,EBƧ}k53ɋ!|1ՙo6qcT}E>H*>F$ϰL*x}yvlAi`H)^y@x?yzba>Ku|u+Ҧ(%M{JhV9\zO & *ZЛ,ޞ'o\ BoS{6!Y}s;J#MzǘAox2gABEJK_w /HѺ*R$pǶk2b&\aa70T ^H45ɠZmD-j,$97}ޥ5`ڋtˎ_`j"bE?8Q%u>KdӔU}72 (ˬCG ]XA ՙ &]M/&$*7UV-?Da+ܶo6;@hr>6lV\k&jxRnɘp}c^>BQm$3r3L*y*ӺpIJ/dm4PglW6`_Ͽ'=*b 0rtiHXl%H^^jς ,φ[elBᥴ% ΢RY!E/1HOG"2[w:;nϐ a눗D'ዞd|fP=2 2!β=`jLGdϱ5} C*,XBDDFႈ[zRKxIe\Ֆ)eAC8@$*0X9:VP@f}O-/Z[Iw,zå'F{ڧaPRIZZY5T@@$ yw9k)5%>T{ #Pe#+"t#7Svl]FX|!ۖxI̯Қ}کol!Q(9jK8gxP%@k=R qLh' hBCG0›Ԭ1zI@+%GBD+Px54bMWfKF5PAH~ʹid&?v5vXV/pqnYBVx͗cR~]ߧVI4{sIzNfKQ+{N4@ MaHsx2W:ʑ^7qR䰠g-s)=OUȭ;9H2DԹ#لg0huOq8|s*Ko.%x 7}5Ll0@gídԀԦӣ0h;E0ȥez{sL-',\ tT+7$ৱ fS_w Cs9pp˺#wEiԉY15B<}r!xh [Q؋8Kf8D:6#iıNJ d:FI첹{AkFȭnSEΘeU`tVsd~SZ5`x\e <ȇ#a]_0k{%.s*&wKE2/l:d)YYF@rc!s~(fCmgJ^6!Tx_ C DBNB)m[9iͮj+1rfu2?Śr㫜sg,;{R `Og1%-nϴRYӑ9 g y4ob8=,_iӇuM-ЊZyMS74ݘ@i+`AT INXᕻz9Έi.{vcrפ';arjAyg.)^o+҉Zw{ V]kcJSDW94od^c" nzG?f0dAwp,8S7zs9NO"p:Th j.yv8]֗8fi/m_+%q5b7y(;5b1V֟qzgї(Gd؁kO{+}468&)8}|+}\att " MxgMiQ_'M HU #޵SPP+Ia |#(9Em+F60Cgz-o&X0*.'xҫm窛Pʶ_aNNRr4e7r P^Qh.SpO^ XxNRz<φUnKL{LLI1m֏*xh׶sċCvm2?BT=?IBo ޮxsV rm5¸s4lIpd- ;Ae֏(#8C B[%bO];AyRyh׌ ^)jJ0kH!u31)&ckAU%@k4T[p^sf1!bf#?ՙ9 Ȑ!mwidJ݅ lՉ|?\P5 6%InqbQw295:{+Sl.k~2 v#gE=ضw8jM/W4a5-8ݜ۠;,Fx۔ ctȋ1nfGetBҚUל N[(!&( 'FX^hN*uuGʊ 0>JLکEp|qv3aM Q.XZB26O>~=0ϪSiRcsLpzil9Nw3x%sC: gW7ahl|R:0T=vGTwn;wȓw,/#_FIpzTd'uIpYS΍/_Ný~V*'c}:ވӛ2j*pӆ~n6\SC,GE-Z lг b9Ttpu|: 0=sQᙸS_m˭H)B(1M; d)ifABַe`Vid&oPMD~&ԑV VmBs/͒s00LN<쵟 )E[z M(9 TԩE["&-Bw63Brsd}Fwkt/eۘ-c0z)bct SBin޽I>[/醯T[H A~^62As |ݠ\ qhn0̍ui´GƜV([C2Z[DU>  'hn>(#f2//u)[9e%_L;Mjk.Ltotf%ܜ84(~_*E@RqAme\.N}~0zȃhx!4wz:TudD ,ƲH9Lk?Jdw720⢫PD+3(LWu4o+9#K%W0ET7lб,!.8FUQ T$DɖL whXNϽm?^pN>R-ι5J 6e_@I0LXg`N\'u<&;#VTUtqzIT֮a 6ݔA]MK'au]lEDSdO6mT8geZ$Ɠac!)w|om^i$ 2}H;^~_!Mfu, TqCA^+J¸q?῅uQf( ~J Ϧpso?WG#sS rJ /1 FKS>[?QCL:K1|8A'`;`z R9S8 NяQ1ys9(8">qtȑXk %,~{}2Ԅqء=Uv8җ_zCCcjV"=A+ L\yƖҬ!#NTSj$2)8 tu?]4rR=𣟛)(jXE#M>54 ۍl#L{9j V'`dT ӐQ7 ELpf#?~/_ꖲ &^uSƧ]tYd7Lڦ 1?\B@Α#5fJ8?A35!;ڢkS ڏqh_k҇X36X|P;pO_x8Y"1H Â)-.WkWΚI%ȝ􌦧bN0>$~$fNa /ѿj.5 bϷe Uː|'2vKo%0T,b>{'L j㎴?}֥xMT9.^}$A8Bʕ f4i>хOD8橬9cRVMnKUbdLja$k\=4nFpQ;zG%S_iu><&S3^-&0}Y@` +{+qΦ?]j@-F3.,yQW噏8^]4ʒE/٨mqG],q$N%ͅlO2`x0J ?a d>Brg Ry6M{ )"9\;0xv-[Zլg,tw8bW!CM7WbvįNf1r` 55ŶJ>/蝪#pP,6x|Qns 5`#" -ϵγ&li큈DFi8-:-<5/ ZB~AW.*En2%n`jt(iHh*ϙ3`Y@E8p {:S+HVQ4G3#"j/ Xq;3iRzJ2$;Фo 5Ky r7ELh]`yMm@)*$9BmkKy.(T'v,+\ӳ',z|sC*W3=> ʑ#!=*p,L ]T'/Bn>de_8,M+meTו m] /|* SDnAOȭfRɌ&$av>C=r}\ 2U J뻮^: ,bƈKFUE/pSR}PE`l T%NS3RxPK|NԱ8\JϹCBWKL7_!{D7 C2x$jLF5@RQ$ۮq|t{~jE6#j"p=\2q 2o78hSWN~rTt7} JȣՒ"׋];%Οfn~3YASdڹ %iW']")+r_L;Ռw9E@햨O9n S)ag2嵄N2ϝQqo>#NvSVpwmLvjlBvo|Bgf%i7<ǥM+[_m^ $Em9 t,FII bQBR^ dv vIk^cZ(iR".lI q~me6 Bq49g θn榱hp-^@ tȿ,ȭHH44 _<&^)NDx ڹwK޾t$9XmE; 'r?d5ZTz.v6a8\wS,c_) $g4)AE$T>BM[, q+O p,:?:UyF8ك<|E0ԙ,fS&O)y& $e;oA -nQ@1_iӸ݇Y\,%fXx}!c,PX2-wAA˳e1]:$XHW:rQgLG΃7cħ q@p\ @VGN#h4bxO;W= ]z/Ew%n!3:'P q3*pJ1հ.s!?::Z*n#匑"n,Á Eǚ e<':]Z5b5̣:{̅pCt)ށ\,H@dߩHǙ>ҽ<ԉ;{Q;_ZS}.$s_*;@=pwhlwfIe%'4?Ovwf~&۴@ <l35udDjo7SO6J,cn"ξCJRy'LɁ6HdE"v1IR12998`n:#XocM91OȵXGB8}>O"PD?ʘ& '#b}"jDT;T?X_цvH4s@W}%~пim<ŃW1t>YVTFkTt TV㲬Qj'|iS/N=͛Mk\fysҟb8@t۹~Qe!y.6(iE Q5ԧY8RA0]\%gr'(MqĪD& 0[[&E?C?nh#V#t,`(uܼP 4rFry]O y}Tw_LS,G+aRsNz`Fg8ȏ~i*Lu:)>E2 Te(#~E%4q%H&sݰa >(yǎdmX![mQ3ggDO? &+8}3BH4%/8a2n ȇ*CY_4B ?-,!0] PtK z1,[VhsVW8](SԌJ* v㙦Ug;!1(K6 E> 8q3@wBӐG-", 5,]QU[kSK;GLBͺWk%w?xj:qAWmFBѲcsVǃz(4*D9ٓZCRe|D:e`)_%J*shnfjrJƥfEȒ.[(t?wڔ {c7,^ޱ.d3+po2[gĔ8Lgc1><.FKd,%otC?B -Ȇ4 (%c䂸?Z>:Ec{kΗOM"C'^]'ʋ /?1- OQk̦>rClgr}HXX냲=bmQ iuovڦ[w(AsUx"S<,iK9äaj(h+t 'VPCo@w'T,~F٧ 7'A%V)Chje} D|)>q)\weLwcm'nU(qޓḁDLsC!~Ul>%ċl"`u s7t#:Y[8 "j~UفBe[I}gŃ[ x}'.lllJ[l ?ƁND@pz5wߐUOA z`s}єZ)0`t&8YF`c`F8_W*M^aSFQ@v]p2zܪ_ R"C..턛xZSπ#rhMoƇgG1#iЪؗlCwv>y7l&RSdҹQ4ë@ vY?H8$Sg]݂[)i{|m^S<'R$Aurt=U͚}] fhzHKRt=t9pѓ!N Ȑ57]ơc3KoV#8dsʼTqFsM`XO8lK3Aٜ1^i *<՛=rE-N1t"Yܲ4~sr7w}v"0*Qw,wo{Өz2UwR5 8#W *njfIjS]u\p e*UFP!6>mV5  5 I#w'y5GO6ғד%KnؖeWlˣ= V_&6t6?%95Sw2_ڼ!]zȷzv,/8&1 + hsGj$@+4!DC0c!ڒ|΃]nu9H!~vb&쓃\&pOë4av} oj=F gT^Ca`+ԜD͂#X0<[3 {#^NgYB61b+V?LJ9[4ClTok)u۬w$)fTsp%s d!ɾ%b-EvWT Uro,NI#tD9,MkXe`4ҷܔm.o\Otf!oUq <&]gBImO “J~&|~(@Vw]vLU.&z5 m RdEBYEAapu-vh.!Й7>Kъn:[jU-ZZ8h~ e`Eת`}YU;;5-gAbT.ސ&dJ.+禤*j]_TgЅZrY.w:h!u~ZҖ(XRsKxq\l&+Eƣbu})>h4 qӶIk8@XZ艛\k)aEZkٶUUF'aI| S)k -RTG4fyUW̛z,^؄CamQ3inBٜ i6- .2C_[@^hٽT !Ͽ*?KM=%~$f%ԇGL&$zԍewŞRwZp4I1௰^~hޛxwmVY3 =Dg(H25T uc+8Hq= C>A?+*d >&e),$;>fij> MZ \3IIjU[]G^.|_>4r&Sa@"tƺ4a0QrYй%}X,)1b aD7Ta%3A7ֺyt~~, jw¤u|:CϘKHG\n~$KP2c[Y(u6anmv0 n ?qXb&]kW!kHdV_#awP&nEж G'6.?vP^h} k ٥U: AXR/Hk [OpK̶ּƬM W(d͂RSmṧ^ 2F3F QAbDF4spYL!Dfΰs7@c.U:@2LƐ6C8h '{[ZP|v/؋/e/+J`=ZYcI.hJR-"h9dhd|{ؠ<) ܉wiZfysaȿ̣$ Џ$xwei}!R%j_5:=bcKK >U 5}/)RP>=Ro;ŧu -5s5t{NՃ&Ū W|baT8<ttLP-'vj@&cR"bsYPʋNh $?4 Т v]m4^{ dl:N> S8 In07+/O&ng/UҦ@h2*@D+F@}雽0Pgͺp>vgxZ^qqXIjwCh|_IaXPs=_l)mL^j]?>H_-%=f/L̑Gǥ-,N=?5ؠ1:. |zDTmk_YDf#r9Koo[qTׄME X×l宽"h`|3"׌a˝+c%O_wĉ58L@Mk;'b ɢ4D!@*|'y8d=VhBuI:Iڬj8x* j9ܳo=\q摕-Y~woF~J }x"Rs'51b+i~Q2ę̀|:լՐƶ)[m<34zt4M@Ej0^$"ohok/#' >LmχF6\@rHam_&OHl¨)턨9_n;Pz<9Zk 0:w+K "Ѹ =6FFym, pl}ϛZ=[fs'K|]wJ9- `grE9#g&yzG|݆Hnxk.9V[,nVtVH噒5"OpP:lv|s6wXzD {te2j2n÷)hHF>I_HU/Sm &J̮x ) ߹ bh΃DG%־\fӢ :$6ixXmkGcDk/^Z^N#C ِX=SUuɆ0w֎@ONRTX4>1& Nb"^Jڮ>o#\pTWq.DR1k;LK? sƴmԸC@wsbֻ*W@-pVHg 8PPQH5ݺM%ѡYmppdGM6uQJyeV362[9<-ό?fiX`}z^>*Zҟ}z ⊐T|mf CGfP9 mp.!O1^P2ok~uR8=<53oiI]'m@caC(}{ zBO4jh͑9oWc$[?;;IT c9[O\IZ1&#PSkk^nfjjb4P_GѮ2G>m97RT77eih*Xq"Fbmz5yLua$Va stAN7幬%_02jQ<{Da sXOqBŅ!LR)>ػ8$Ar}w)W(TßӪQGbdLY!}@fn GJ 4֛B" )tu!wKyy茏cO֢ em.4noBHk ~`G[6jʍ -Q_C#x)|c 9ػ"`:_^\c~$TqR, LbʿyA `^.AJTh^EӟmjO,X0h,jī2#J_O9^1pR7DU8|6IHHPuI`2Dl\>}4o$Vy Cĸѻ-sqǤcv$ Sզţ֫EAg529uZH·+ lZ%MTA2Xq*#:d 7/?o$ C$= O}r9s*JyKN[!^!cHbqsF=d͜\zphdimۂ6Z'҆='ژ3enѰfJԚ=]"P) ZPhr?>t1f/n36dN v2Y8и0ANC ѥE\g]3yM[FSp*y3̦HT-!_7nCJGIR5M~7dWE+R64,盖Y(\M3-x6&ҳ^YGCe߿|hQ{$&ǑB džãՇ|$+g[KE.-ʭ톷wPr8b&6}Q~h=ř2@M,;"> E;²5L ONӮgr/]NbWCAsSԜH 8rYw#RVTk]ᤵ9Zq6zjDf9,)|psL}.$4e$0 npxcaw~W$bzZ cˀ'=ErY wզw7\F=K)CQwY2mO@ekխ yrLص&Hm ;튏au^WO)0XE=5piVaog: |5NtJN\GZrїYDf=B_GI|HAwߜю/2GX?$KmMGķ߷gpl.N_xFD4YmYeO*Tт6YF-A%*2huC(«{vGDU'Pf6!}#3F"=@၆y0i~\s %m) XT"::VtryHhOq\f%*fsXk5,V! %^iuN/$; sfUE@,&aAQ`Up"[ f& 68x{bff+0^=fȇDO,i <*`z;$ Bl~/H"|/&_AEhin ,h@[`hP+CVJox#iGb,(h!uZciI/}ၸ\Ef,PЕ"JwH]ۋYbX`)0ǺQ""L^27fJ|չ FPċ2!{}^[ϡh-KQU2f^u#PQcΰCfvlhڼi8 ;YvKT/JBe 2R?3eqzr۶Xlb8وt}&2ş?kwk:xM 4>'q*|( @ۓ̇<)o '_85a. ;ۦg5k'+ 7I=Vt@uGrQ!U {sxⳘu.MJ_s2p598U!$3emh7@TC) jMgz]fH-BLXW 7.˲vKwYK93clL:5k֒<|sfLѓ,t gf'0 6j[@z%p(LL(2!Cfzo6~gP [CƞZ`"`  F} ])TSvM(-y0@b];"/]@=E*[lN4%zUn)K|ժVqya2Dɠz!3dl p`qZO.H7K4GՀOJH#G~:2M {%u=_]0v-! p (1l֪a;b Cng_ Jwm[V=T=󇫗<"7jK.c`/@=AO>Zcl[⏺ԗl`8xpbFrִ hSQj>zUs7723m1 '5Y#_Pf܍>7ԉשGLObmp;hY5'sQ! *(!E[jȜ(33 ޒG=R1_|~?0&yp-ۼ]XoWCXMgpuCʚY\ q誸#sGm7:X RsQ2okTD9£7IQGaU%KX߶arRS>yBr[*D1zgerw 4(NRٸ*``(աzI2gSb8`))*Fh %*c=_py lG'L!q(dhڒ䭅'ӕMah7To/hk$i 7>hg~ནS=Ք2Nm5*B qYjN4+G gcW+ P oG: ;yzㆢva%r[HEwI ˻nٞ*%7\bPb.г.N`f4fYk8.@H`[ !Niy'`\%ߘ!!s1Md_`s%{,ؐEum9XXiDxz6o 30PpD&[͞c뎾[\dιPG϶Zk Ϣ}F!V9v6Gg= 97 6q2ԝBr($} Iʙ*f%wBmOd[ET;ʉkj̿ ynď Z*k(nCشU`_O:YrsW/~A}{U- DQ wN.ƱSRS}+[\B‰B3sc}T;wJ̅jb>*V m0Z+vo,=|>YBI}Ա,#8T?SܑKCuoCntah&:w_ʯ""$i^UG}΁esKG=TN$.T(޲=O#73Z'XqBXVgܷ zve"#(3?^25PKm"c8fNDHk6;-x-N}17W~b%]] $F.EccdE.1Z9-67"YfqpoSI#_֜10>)hI_ ;kOvաwi"^yU!n³?7 /OhŗMNŒ̻넓&$Db=bGxgzY0g&Vq}D'r_"-ЂQճÔm(>eJX9W;je32E&4GhLqIVϱ!5ȀGbcĀXIb-Ù ە7زA ~hb(k$Cϣz n8ʈjQO ;?X}p@_= ;YQ3lGs3QGP.{?BۯajZSwТ`|7.r4@/Tl ^^ Ǽq%JUJ zc!Cu|sVYh$dol>\*s!҄{|M1,o~j덬;pF4,Q~ 2&$"s^SPZYBs{xRDrGQ2EH W/NajGI'}E)%OfysF U%}Xh HhVrB)%gu!vziG|6.0-{¼Ӥ~ :M2iEφ^$ oɦHeEz(y|Ŕ@.TXqL.Q*81|\w/V^|+ dbd_l"Ra%QPR1 oz6 MuEd5m2o{iKc;u)""V3y~JK[ݏ`J^3$ _#TR%_M UHfKn%Fo2-)+zQg[ǝ)VL917}+xlo.'HhB[VT$`aMcQ ǭP+^$S&\fG&Om',bϦCDl1<*ůBkByG? ʽqz51I=jqhdnW`?ق!1X 3\7uI&i.n( z. ?܅TBTbN7 # dS)d)J\mgRIum(AfKT{sD&=#a#Ȣ0FD=); XwqR%.(Em|Xe^=;MP`g j-Jxx5`(8RDCgƍNL006DiNɵ9iw[w%7( W( 94VoF \@\s*R@vWn]]ljS"r0GkN(nTz6Іhl«q%Ԫ=&+[)[?9d>XP *maQ2C&il½Mj G{HJni" ]L ]ߝH_!3**jۓ]thgRqɛ,7V__(@9/DQi[!ծuWZ=>MJ Syαq^0C;T>:\W2kոlnQ{.3znQE;Xp;I( 7JboAX'J|c $ R9B$a5D5Heħ?"ZQ+wXc#/c 4Qdm\`b̋6ra_yީ29_K@,70b"tħ0HVkحkX-FZ0y-]<#NWCptnaŕ?YE^86VW IlRk}3njbYb:2HD+YL95?[ M/sfU0N?mYxr Lъ5Ec""4Ћ̶ȷcqPhɲ(@Vnțz]hV@7@K,j_c͈ '`GVc0$ш% t2اQq >?yZEe7~gr@Hޢ#{HxLuQ̷S31w~LWC`4UچQUi{v[69XSqcGjԔh4UY;: V/uY (쀭W89b6k4ޫąhcoP^\f1cGyE 2_cZOkM 7pc~͠|[zF:?Y~Wc2;&pưfm<_M6I2ۙiyoYB%jOJxzFCOG xO!:-¦]WAvm YViz9`YIY?B H縏uO/T#\=E+&HuBne(ںELjLVB<‡A^쀗u4&'YQI=@ȝd! vIYio"[d2F@3|7DESs_P25#C/7$_E T 9Exȃܓ]09m!ӷ&N>Ev)#d,\~4A3wϕ4M-˜Z w@j1Ke谢``%s(>J_[B5+9 ɧ!V'WRx0"\zdKt-'bAgy[es(6u: +UJRZJ4^ʄ\+#?]솋- +[6EyOp4>vSuB??:MUna^q'HE ]#f _@3%dj#KיYYAr#W18 ;+@pXt{;o|۪on$T:" 'I=C/Er$-),UHWi"/;󮶺}IZ$p4?́^hf\(nOĚsΈ@} ~C6^$صw##yDv5W”uS+EtoȮH%g +5~&^*:s^o "{8\\RʺfPM|}cɓI)?sx+oXJVH4+%(W_ yIzho@U?nU!OE.g[vS~rIGa;gm<[`:jLkowq[Eۚ8q6s4բ%ӓ e^Gs R.jU?X2wevM ZP p+*5kÂ.&N=E\%vd 꼊Nl"nU1 8fA 0KU"zxxĤ?'*%+~Mk2o'k9 :,ޅ:NvR\o{WJ[^fJ; Oa!dW:1W315ēGi2UM8 CKͼ+@snP&cY=YfIKl A2lJa҃k(g=BEq}!ow v΋Ҝ`\M{P")~=,K8#KҞ)VcܯL45wV5}tP8*`VN%Ar!.}D œh-0 ] T(Aq5WW'gk$M1KS^F2IS]Ja-J2[fo6N]DA%vR|flPܑNH9$jKB(saȡR&~beӑ @Մ# Iⲍ  4"Ia?[v!}B!H9yET1WpQ Fq(HKwc;CbuI )[_[`rІCɂ}0q!FGY|AlueP_أ E08a bĢA<|# R+SjY 伩N3yeȁ :2;L1mc>fWa`krwd.axv[)xˋO};roT9?c dώmd+jUD8m]Xق>#U/Gfv.-&QrW'91JKFfT凢evg,U+Dj+mRv> 1ٜ)iI_ {y7Ng=$q(4=x/fXP\*>sxx/d%sAGC>qR_ 2d8=GX]mIJ(V1ev,B|r!?Aݻ)#1vYU"C"}*",rV:;B rr~; DFTa#>Z+DJN4|qAT( Bdi:/_f#b!A^CBP Zw&~*T;RU2ߣZ( 6!r)x2kE "3c':8eRvNHHŞ;gM"" 4j1R )kj MΘ/R'(+@a%} 3k_ڱ^K׏FKOl.'tE-Swo&Q\f 4 TMk1>ݯTuSWo:OFq<4s<ӡ1L&1>fⅿws&KZ*Y޻ԭ 8{iSr?fzeU^JoՑCixa!h3&l^"ۡH69ͺ7dh-L@(Bo`ݝgЛ~\U`y.zTL()-;{Dn40X[hRŊ'WKKD/4@~^rf!:K¶Q+z\Ե~]jV+nr:yNB!7b5Ar8;3@DyPPp婢e8fD߻V\ٜgMX&CHS!юa2F0]Z´-br v fӏ*3̂bң?ac c1qA}E9]p] }KI҈.G! ^ͅWE07;u+ xӺeBNEmلbwBh{Ո}_Jʄd~yHvSQ{]JO#+mv6[/7ZGXTyE8Re<%2?rc9ۅCVT[658v%F}K}A [uC_צNtN:A4HE9De+eWQvᳶrM' ۜjﲯd_WqŽe>)EАOSktBL}}\6/U(<;5d@ԭ>#,g;2WPr_!z=iz@̢Y|'ԐsPK5O_9pΜjN7^Wѧ0CܳF۸ =lgh6b%1j^'ǬC~c)rmЪ,-`bpvk;a4/K)| ;V߭g[!P y}cdp54rT&-lG-JB*ȃ%4>7d2t05P(P*l64, Pk`)ժunP2zahD3VIUlޖ9W?KhI ρѝt'xuӔRD 610i$#l/Y%v'Lr,3<+f%ϝDh띙 M# :M Z ܼLm3"Z8%d2-W4fb9R3y_?ts~S]eeR+ Ky\: +<'ReZlNb9}~0\\y^ G\yh`VTL]DEr<4 x⌐-> 4t.#>,i ~<2D>Q?("5^ȉH!g(J@=V TL;]ܯ)Pv:;$Fb {a vNj{†m 0%p¶üw.z|xnpȼe>aRf2={mzd̑ %MH n+ƒcBլKic6E2.+#:a.7fX?1 i:P > PqO×:\ 5V Y3s)RWYWDlu' ÕX}m Y>|f~u&SWrm]l8\He/ ox|}T4m5 R/ a-#h~W|xgb\R{^k&1M;Ia?725Ehh@]`\%kSIAj%}R3s뿦j7f x|ypp>y:9^VvO1O[f̎ڑ84YTA0vT*"7qo]$`%ѺnVfUy4BV#D5ݙ`czk&}k-q {ʼn :v\>5\q]lNsQz>nstW4//Q~AԞ@} ZԪ+dH;Nl35\х:J)"Eh<,g#z+ASi/aȰPT;>"͠ Uaua[nrDclE>-_1 P4QS@=CoXpeT%+10U ^/vˆڹ,ЗiSU`NltW0E:5KȖ7xLffT~p4F񗥹rz,#E>Іۜ[`~fz5hh<<⍢v|mF n PV ՊZg"[HqB$zÀ~F kFv{#6 xRb^j4혤8F<т/n {S1VW/ZB7,wuo=44(`eSKެRTl+L 26!ƣ~p3? C!t􄲹TiҒZ;W}NƎ GsKñE9E(k{3\wܫYLY(Fi9marO{0U9_5"V' u$ ʗ:Y$Ɗ~uJy@) $ԝ6$ ^j鳍 kr]f~-JJFr:`5OMX6O2)$ K Rhvi,F $JYr:0jl0gT ROb_~h#kB"o@U$p+}`_85,!fѫE:Fxj (\̾5 ;_ dfgWWP{*.*YsL'[ˎ r|dlCߏKUe6#Cؠ(=.2O>OYj`"LDkG81)=U W[xQB)$3n+@"= ovCcG}YD~44L}?IU4#_&PD(jXJ1XFe)`%QA҅+s GzË^{h?)ZMU.V!mǦ5Ov ɐ]4$n.-82u.a#o 7@`OݣGP{ZmFu$<+s}F}{m^:2mꙚd_(ު.7.G|Y09:i0e[5ejn#Z+x+qvfٶ*),gƒ  뻶E8PN絣^!2 BNRj~ß 5 jp!@ /+@%L>*|lɬ(U/ȇTr{ 6빳4Ej0^DOjɧv\̠,fDg2O%$7yxV<тq̗atƆh+MRf1EI7bCLG(2*bq5ޢ !t^̰c&0<-dàKaPFٛθVFd0jkzkИ/QӼR 4=֤lOK}l@IiAߑ Ul0xwvcBOY1-G]\[x8Ԏ@,/VX4bNq_aPdFsx}M(aB4nFwYR%5c3 g I^Mkr$M}a|z3@ #c6:\ެ 䆤{M@AYp+•EQe\}c6ft3a7lCǨчg9'I!=o[njj+G}+5.0eR~ ̌ZbEX)O)7V5i٤Ȁ82pև^ђl +e4^Fm_ǺBD"b4FCCLV9N\zBqǵAge 3dT|7W~C`*flz: xC2l"D0>i-f^X 9t ZCg7M{۷aG3MGytZHnM6aN%QxÏϓH&XsyB0)r4?o=uak2V=ʹ1d]Ю# `/S-R&GiNaG{XMxeʯQSƭlR[=Hp&!SZv[u:>a\L}߸fKmVoE6tPgAB|ekod`s!_LG.n&)oDBꮛG?B6V`t{0U xX=sNo2m#kd<6QQ X[8 AhЯx!`>ؓX ݱOW3m5%,a}ni0l^/u~ZSHJE t<*𠞉=2rHff|c7N$!,dg,pVZ-@Jf89{;.65kr3f>r_Av{VuTu9$\ _Y={:){ʂ+'>NLmZxY'i8+lW3hٍtt`9%23\/02Y0Z*dܯk!9mؠOo'ܧ6 F=tTkRPl%RQE&c܁E?}R#}9s햻Z Vq.ɋln%#kQ}1Өa4=\3>k 9W,2WOrC7WapAH,IC|VתB"dG9x GM(|V$P/CeoL O 'y_N'EKMdܹB:r6.zDÐFo`lS;BY8\o nìF2_ 1vQB 斡T#9{PeHdUjɡ?i8|sw|z9ӣLGau{2J1t'Q.IIb6Q +U*Vku^<%$ B!v?WB.D͗$ihZd \1\=nz|(=, ouPvFƽ jĒJ?9OčT)8}ePLmMi؇M 3]~\1KیX$_ >BrSdw*lJ&g=: K/UD-[gѸ7:ؙ(ZF!Mua5O:NZ27Ln=0=1m}i#S;$\z׊rpSDPYN7MAFD!V.kgې2 0uCu ـ'cZ Q郕ϛyfm7qn.e a>!#0WfmÆ2cP3+V~z k{Jwa25b*Vnѵ?iDgKbg}W!jH BqWr9.r--o*wn_Ҷ^)ҥ6CơBU#pA5s&#K4g 9n*_ 1MSa UHymr~Z[dQ9Re(6o:pbu/ᥰk[a_uJEZ'9 р>a_V4X5C' :X.BPd#C7nU u{%3j5 ç}sNxOrw,Iq3W5cxLkff?gP)eJ0 y19 SBa/`sH ~fbc|nxkճ_C=RӍLڀJx,co}x1| FX,* ,RK?h4* B`ݒF3,E"6e}  0r{Bmw{r9 /S3HwAs {C*:yIx6}6I/W]+n)$(*> uhA')=j`!W{쾹Hwi,ajEyӷB+OMDlݲtuϞ!NjG)x6]=H㑭,(S<_(hk((٦xWbȾ&>8. m')/js-7e&1V8 7Y߬v_N?/GH Ok > Y}P@7>ѽ|c#cZG߸!:ir;CBB*!:/¼Oݥ;ֳKϦH[!y 9?<l$c};KkaLg"n>'] mzu6M2ab#HzC"Cmg)V^&gz+ cݓa0|Ayxsyg2K>En#*#a>#􇈜+D<݈Ƹ F#8A)~.>g~N0f 3PQsł43~ٔ:#QExxJ%$MJsgjM-eyk0dS6鐍Nv#.-=G m:p;φGN~n2Z;^ rc,N>R`!tQFf+T?g)\hP^f*\bJC@6{Vh`څ<`|n@>/hg|uOI1 ?D_,YPVjGa"aBk BCECdl&] E,4=Fa4@ޤr,R!ØҨJx=OvKLٮs'G?+(:殄Vu{7;ʘ\ӳJ16 lɔw%19lnӪh2㹒=x"$0%HB-nkZvyqFTl(k5$!d'l&K-k#]Ԑ%9;ŕӭGS_LC.VRGaeR4q7 Z1,cC\0` ,왭dT{hFG͆.@a9s毰 =ؤٶ_IJJW>Z{f1Mgn!;`G@nLhT<_nZP6 naf1[]BcdNrݣk 5^>WBh*huCSr{̓ȴmwL[*y*?':82dٙbҬBv#WtP!(3)1!E/Gfd^"f7tԭ3Ӓޛb,a 8ZV[ AW{Ctnu n> X1&ڵ¯u V&/ б|^FPFm%b_θ1y{srl[&CLʅXPEnak=&8e+>-(|MGpDш6ͮU Fw\J9oq{*YNV (!HV[%}7O܂.L, @26gX*!L9W uGq%mѝ׌~mOceS%MKͲ"S7ne&rۀ5'04T~uGQRe'5.=PH(I$o7{d CVQ-YEYN6iQ2YEo]ZrWkd۴I X 0idG uZaJJݛRϠ\MZnŔ~ TIOb'H{ܔ.Րױ !EeKj;y7I)h}|47C`dD؁K0R4]KR vn\vYuJj{ctxT3S ݔpm\mзH dKg` LhhDon0mUF%jr+X%>.?xnu)oaPyكv'z>g:&_E.ºeYw_Lׯ +nsP X"J9/3[ip2I{R0bXz"->W3 XǏvv<)WxT)<2Iz`BvU HR0s@suaNg>Wp#$Wo8C6Җ% &($!NIؙ݁y||̾)UvJs~Y~O3f:Fnu9D*PǺEdpPT we14 O]*BF ,py0 hJg;5I/KFA52"c.~2]0 hWc2YUUȴG~jM.Pf]-[5U@;hrL(AV=- *-~n#"oTKD EؙTCiK$;pщܝ+i7STf6Gs O3|2 N(c^6\U`#bW*E!U DC >hC1r4c =”OrӒ¡(;z#V5Re7R+dTK`NG~l^6 oM ۙ/{ 3IN&s#I rDݠ6 Sfe=diseͳF:ty3ugL<j|8iP{ R)xֹ +.nE:)(Q{ۡ0!țCu'T~1q+:G$Z(cU]mʈub4s9U"ر6RۉP-X^ ^/a3fgc]D8έ(m{uTuy_ÉNJaE<`|.%-t p>YF6) K2:ZF"l51{`W'Ԅ yorl',38T,ڏ)kq]Cv=Fq{ .]AV\! 4Ùɧ,?-k0)4jNj{)Ȋ3Y|lwOWN}UAj/WXp} ƍ_\/خiu)(E;|>dq i)?_S*Iʋ%h@tVh"zDytC`/ffR E<#&@EiXR){c~|K%bS7n{\?bŁܗrg FdT+ʊGfA9{&鎃IXZ&vBQ]qN_K:2uGK0B`JǬ_j3𓋖V8pawJ@&^6ĩ^ Jq@_L'ʹ.'5"yy>qN!6e٘V*=S._溡r\ 1"#4oT dJٮx# -&!IcAh-Qdx A.7|`LEb/JU3>@cT0df@[>zA֨ޱvCAt؈'mY# ysrS ! ]cPtJUF@ai5 5}q '8{.3},˜hrg|Su G+hŧysqDsgbA=~lAGV25^`no͇ErBf(QXxCI։|GEYtUjbX4Ť,3ou8s׫bd<XJ$`}Rب']YܤuyE;`)&S?\tb>9T{d{E saQ^2 #Z}1 sݢmcABz ,uۺ3M UjDEH*X)Ә?x=깇L7_M$%³r;_F6bnYlY#gިi[G6X˫f'3hrA/d)Jv1a\0UOZ@Zdžx6&Q*t?{g^C.v@ LL4ռX7|K WSܽ,wsL^Kx4Yua/`v˿#HaΫƩq4F}Q#EjaDK]>Kΐ'ki<ǩ <#ぐ 8}*&E_[Cb O5=bAD 9_lB2r\)SkjτdZlMBS7W0)aD_ZfM#Rh2 7i5y{,aNȝ ӵZSU*9 ⮂_"oU]Pp#*mLiMӦx}~j!zwXOٺ w8n\.YÅv G[cG@2)%YFsɠj+7W(5 Zv|m=ATQ"m$Mȩ#H3#qc6^'5Y\5鬐|aΔ\[$@KjbJ&fYJ#]2kb [M$$ Oj"NNliJ_b>\[L33}\%u d B++wd!l~ji{ #g~JH dž}϶(ݞ-QbVWEAr Tbw:dWG5Yrץ]4P6_7>3kҀyڤK#[Mwf=rMUҡ4nh?78_\ Btc.i8/N6dש?DuVy7xu:6# Ɉh"Mfs̘BBIOT}[!{ ۊO&OvK}URO zcRⲴjaG$\*^b\uDjI\+)g_HѮ7S*HEq!<5p`5[МJ1Ĥx4qj7k@ZEPxad%[:$)q'f4$ICdY/8c_͙ ۮS(Zr)`SXi]͜)' my%/nj*sBRHJ\z ' RIP9Kivن!L ?4Ʀ3 R I@B$S>@5}M޹yJr+Fp-jHu՞BI ]9dd9j*կ8!x/a}n TNPF7bMy>i&pFD_ M/";+O74ܕ3S:^-ws^&T, Q ^:za3pлD2O{q'c#JMXp=M D%r eiOC̦uٺI&W h}erJ 1x-nX\6bGl\ߪe/d>LŽuggz806N2D|OUϼjPX,w!|vx%c}{c4Y$?n T@D^9 酦;xĀ2udgЅޏCZ8ԁog )m uU3QߌJְ~3:c%Q1|% %zEBgV Cm gPac5@ I+I^h"%_]<z(e(&Gp- x 5u;P MnbʾP UiXm}w5 <fU78g˳tlͼBZxi'gD<6't3H9d`wFsjeM<3mo`Ȇ߳}Bץ}9 B>GkhojUO36}‹'p2A 1r) &"1ڟm FPcmD[U7fYH(x8 Rߩ~QJ)x}dmP`-^GBS;xTQ8-q,OUK6o9;Vng,!M*Z?݂&6ư׌NMU+!!xf̝/n5"wrf֔Xg*_jOǍ@]AD))2 wYw)Fޘl *ʛoi?y{wfgyk>%4ՇUe"@pŬ"Yc8r- Ck?ŋ%@S~D% M x^l)suMW+i𘾭=so% DCGhҌf2M䐖o/Ō-ЙZ鑗}H>o7Cc lxMQ<}F'" ŋALwhjVac/[Co/ a$`|ًX<<e8lqQ~=N?Bv&xtL@_ G-Q*13P^t9r>u)k=2+tz+j:@~MDz b4"J->RF„?a, g| 6|3+(tH]dZ~HUêI'906Ty\7ɓgˢm{j7 ]* ݫʴX])F,p`}0gd qd{OjZ4;$WKÕ_B?֨i&6]ڽDP5isFec-RM*YH=kGriy_b6Dnefݍ(~:RأOJ ,eahe cdB5NZP`/K)򹯔 r`F^e^-BV؀Ymۯu!3 Xs6ZyK׽89W5#(DL"k-?%'}'^ҽy=;w$ΡA[L4%),v@6fQ%+X[Dm6Joqp^)X󅝻.PĮVgvsעVP6pUa}#+VIc5e6`0::slmDU7DSJH[X*HKOG)C_^rdl{_C?c38UglM_>&IK=22f}BZ~zt)$0۲Bvʭ3(W&ve+HtOt2{̟c]_'ވ6Խ-Can"k?'0)MCmd |΅*_[4=9M9p-Z}2ֆd6DQf]ɦebHg wW%[8) hhz׈X1L3*5u!*~v"jRo0 [yPTE(O|=/V4q76g,%3a9_atN{9|rbkJm3<?h41z5_ƳDp}$ȺLwrř3m ܠ]s1X'"3 'Wn<"Fd?=dV m|' }ӈiy+shSh[;lSbl!."&+ *u2wnafMçmqw_/IL' ؽohb(UPT 7 Su:Zx4PEz"Mb<ŏϘ8sèe/u1b'e64GCIKoΤk"BXoM*xS_e,pl L(TƯVVhD(D]k _|Aw-.]\|":Jsݛ{X: -K싿c:`.lGA-7Qp M.-tx@$6׫_7T]eWy30YS$fcѩp48}V4Zqpi˟`s|WًGhnO[!%ǿ8/<EcM )01^a1ѐi8b"m2u\l~v?_9‘@e(wBݒPY:7(_n|5Kh - < x}ME3wP9#iCրi\|HhIYKz&5@|3-G.k,PNImPO̫)Ѷs R 7lquwz=UB>.g N%`zt.`tS?_P-[XU+%IG=gnyNz#quEe;5NVF$+YKnpMU/kӪnFq؛p]7Un{zU\9z7ty+M,vټa;~jvGA%ʘR{+?t:&7_e9 R#6 ʉ7fEAMttIJ[=vXY- Q!%<.H/Ac1:"@ZI_h+_OCWJgna_iYZ\7OӦQ=x.$I4 (Zp⛴6# xhL>ݟ"y cݔ {?RM`kP>=1ͯ{h&L ]-0aT7gD6 jjUF cW` N2d-4'lM~lV 6Bw(#7@H?E)'ݹ +|Kx LV˃H&%R`lv[Qx`#nzmA[2O)ƄNXi|BQi ^vr(%4k,4%W D$Mt/X4bâ|D&:d'Y#쑬~&Rɚy4 H#H!!"X dz`f8Z5P@w`0Ylrei!ĢxLc:ٞߌF+p@V%Wֈ&BkbnePXd{ym7n}ܒY_Q@U ^kh̑uNDs)V&zH z 83ci/|xd[ɏ(ӢiE]<)5cR RL^KNmdIx1r<@+ls:ˀϲ+1g)(T^˵}%\,cC_Fj3%UhKT\o)yBf23` {_P T_8 #4"g{ez ƭ0۝9uYM3pl`/Dg{5BA9@|>=u&sbFKbA%% ~Bsc Ԩ%ǎS1My@T!QY"bJ=./HTM<-n(w- wV:mK%|Xf,|hs'ZB[V+QuiN9#ιwf&.yZ/9>`9?עAʰS0r7J mw1$Q:Og7|r77ӛ7Ff_;F?jʬ\^uI[n\wط n %Kb^^ݚ2C1L.Jn!୑*IaW 5¸)̈=4ID >Y܆e6b̴(V{^gG]f,!QRX ;?_"Zhx`Z܁U(C}NS؋,c// YMֱZ->Ԑ 1/hxSp M%?pLh_g˞x6(,8Y=~))An2` u ^l!y-V W"L= _)qZB̅dYn3ƊLi?m2P˛~ A9o3OV<47On oMn ;:9,(]7*bXx}v]ԒF^ajAAA%[Umh6"a@v>m"3a/ .* vx@6h./be087r H/[ A"/}>M!j:-Dh|83 }F.E\\ = Kʭj8k Fvi?bHƝ|sX&Ѡ$cT搪ށ+"Vռyu7ޔ6*,Nf:% "ׂC %`PE`)ƿ/@-(6wҌ<.UshH]4y׉p_FNqOI<;gM D?Rz]_Z)e~4uHUN9!DY}Z~4$t\B;xGKՕȯ0 eK\ԐcC"se-Z6W>ABxqQ*H;[Fl#a$v QFWLt`wNr{15'y #)H@;@ŚۘI2|)[ֹ͎Cɦ3B >Tg[=]eP&aqr>&+S6AVj@#+Â\,"wJ:d }{\z_C(⅕ V.SiVh Bld+1'<ց^yst`G@IV.\ܐ{5ՊUwZQdLyoߏޞ8KRABb۾֐sSRkD%L5G"D5Syf:hL*>:u3.<_ZM j,Ў#-B|& xڱ:fH:K mX.X@e}0eTKfo1) 㸟Y$Zp΋!;~wFBWZ<_>j0"f;~/Oˆ ZV&z"izFa%nI+֠"̣X@ä<'&q'uT-$u-l<8xҍ{l] !|22@t <8L(pg!(9,t4ka{bxlWm*X E&KnGVmqFK 5h:g C΃OcG+ʎ76q3V KGnїr8@4 o-`Qi%3UYl?$1ݿplrjWڳJOB}Vٹ&UH@DLQbcПUA[%+/Bm70'Z ADch9*lC Ƴ7FׄM^>:HS =&'Se3䙭γ@0l4ĹcR'a]{?| V^ c7ev_Wsc9 S4b 7 ^*1lLhiސ7(Ni Y?,t>Q;\݁̀gc_&ιƇAy^y?Mfys@]D{FоkeP>:Ny~4}jς(1 [۝adڂXHks8xZ\-}$Qu6"t[j?o=BjxfְMLϵ^S3qF0>@?> oB:NUE\i /˲#̥+,0y"]vɾTXu{?:7&5Jq'] oХF'"V,O"Jׄz-$Z*H=(nRL.Io+5z(Gm+gC?Tvi%}9 @Rlp_)꿤!Ѩ&۟;x[{r!8ە9ȮsHb(~A B=NE ɚAmN.t ?Eп@:0oJCpMy*k%(N|ܞu*^H-xWqPO{q7$zE[>p:(_bWζDNr^hecb߳a05E~&󛍦bٚ+HRs<*#fn.N?)տŦ#;W qG4a<ݫVVbwNCg3QI4^\^9ھ\7mm}RTڀ}ڠEKRW V8S@S5ҹ8i,~@@ Dթ2 9F$h[ȓeJNHoQS,lg`jJ_#W  `VIRGo}i*drn 2V Yb{dtyvV,"U*`b::Ýj1B }q*fLozf,Bb+G ^RΝ0?hE:viCSy Ƶ7X06GQP՟V$zuLut2*Ǣwo5¨撀Wb7q"nߺ!wڋ܈ v@6y?Kkva^$A2*Ǵ7Z&i:.M[ICc&7__ ~uf5T޶bW !ܑAC >? @;ŕI6ȣ( ^B{K9<|̗V 0` %U@?*g&Ve0V}hP'`t9t[oa/{.@F }>@1MSud\R&49]Bguf /sȁͱMF<Ĝ?2G 0DXΞ=*[a@4ru1넸:Z 0Z&1ng2`g|XeU- z`@U:nt;F:K$ :$9,›$kC"<ݥ}: WJЃ#7R6V#m,3/q=)5LVfo)t6)VN?DN5ͻL}d3 Gܝ37WzQuƭHH_XT|ŋNT.9wh<7%U7tJPT5Dz1{2Hk?ҬeC%Uc]ZYuK?>\nT=@ 2]nb\w\mD֛]J$Zs(Nlc֬PC+ >dZI-)a1(]8{ƫݓTΟ̜R6hWNj-Fw7P؍1٥맗%\ k| !QUj3Ek޽hF=ds[Z OaПqS\–E˙ |W|wYU؇3B33*,uP{#gBn9R4ju,C!VlD;GR (;%_f\Wؚɜ8Yv>p7ۤI2?gUe+WU}~k/ׅz9Cnd$@<v `aaE6ZgKb01eF nBa}7l?qXNەsC$HlSfm Bl&As@v\ @ӊ>"IIt[ >FsKKۖgTs.@tk x$a2SWTת<` gNBˇi]כG?S\8[b6yhK}pdtsDK=z6]*b,8cM5U-LJ Bbϖȑ/Mj]jA@gpN F˛oqZ mug_:sk슿0i0|V$YOõV\\.1$re:H-yx%5ty %j2LCXv1ѭ*VgPp(4=j ӓcQD+rػ=){k\S0L?hJ{C\fv{<{v؇i47?D%bh@ =5r|svq׆_C+>9;3JJb3FZ(E`vztAcjfi;yhZkfҐK[K ÕGKib}Hز8}ѷ=z~X,d1!uo̘yaێO8nFV޸ֈ'}:_:Uwo~`Voflх(<Xk1iҙɢH.hztlɑR%y|[+Ξ@C M?e^=.M f<T \ Z T }ZJ{@]R7H]S.CZm > X9t^H6ʹ1x烖 3 )(gRAy5pEFR% i5 CM;ٻ\ KGVsէl}jȵͻC5GB*4{Vͳ!r-Ul+5cr¬dBӪ/^ggWX6 rEfC"K vJcC$LXv;h@_X1&!:}EP~'=+k1 [F-FfBkJnOU-@'}OW/KuEXqCƍ-ӕi]nWv6j)P=΅{FTCc #%3 c ^+^&yT6ޅДH«+쫩\|/ (4<9tqA: :E9!4l\~3#3 "8K<4r;VLMWeVO&#zmsmfO(R(i࿲_ uٿ=SHbhut"{)h99Jt.~:#%Zq8&GȾfaOVCf`ΝkyCYb84cz|q.K(bR9jQ{TLAUBho fdW=B|Aƹq G)Y;p77ͩ#$֤d(n$[QQlf?F4wci),' Aƒ mq3qJJ ql'4xâZIgfp"QE uJ}0S=!GWjƸX/YHgZPbe'WbTe2eSg`iS򫖐KwAjrsn|!.pyƭ]ZD0,y'yJ6e[^J"~. #5 ռ,{]dގ\y%ҳq0+Va35:E .\CF v.Hi:+̖+-۟ -A?4kVr̉!2uL&ߢ[wND=Uߐ|Թ4nO0o]ũ>=&6&m֟u\ N~s]Ugw[A~X"%Ϭh{Ֆ1L\j$M갅i ;nP }X:f!?ckw.Xٌ+Yլp}e&!޲:7)*$'\9.:Ociʬ"?uH^s@k6ⱈnJȰFK8:cӜ؃%.A0ǣ 1K~*x7'KAjZR'+35$D1}uxGJo|ԙ1gJzZ̭$7!'ظ_\1eSXrS8Fvm%mJ^6Wj?KM%]Vr^#m#Z&46R oѾO$y&cƭsbbd蜋?eұ+U5JA<5n]F=0;( O6fRjѹ Ą}#3Ӵ5 .9-G X3 F#%6 ؕ6G#j'<8$ԥ7DY,ƤtD:I1D2O @t:KɒJ`ϛ1Z*:麛&wKeLj^":Xvѷ8*.]8f/shd΃VMʢGKI}U_(㇓ 1wji)vl2q0:Z@&}cupb96V1hD$;(4m2"B1Y;zwێ?Gf^G﮿taT,\Oc~a;+2*^PCzȻ7m2RRnP*xO5 P<É<]4mu*54Ɓ]5Ej%E.>{=XtvGH_B<_-iPM{=?16mY=$z`}\ b0Yxhp4COc;#\  h5܏CXk 6[_L3kκh zF7{؞+;GThQ0GIvO5u/?a~W^U/ѵc! |dDŽN$Q BZG-Kp:$9tw ?9s ؍䚒ǜ4Z;z)1<cXWS8vfh|z񧉋4V=,-5CZ #m z9ݙ6#> =67~-$w6]{^ſ#׿>AWcQf.$Zɬxg> BCOf}q|5krXn5_Q-FL n/5κK]$H?9ȵYE{_Ws cqwh؈{ 3'7OO%5c} Ԛ邖I 0sBj΋yӆRLFF^%V @4[qoݠ"Gu_^|zLxAi9X7⁢1=86⭽iFFGciw֍]tOZ )~SAO}h}.þ7皏=X1y޼և` vMtgs鵱V 9N'7=98M55F=y4g@Eg}XdQ6 "f^Cb"mx˃W|2 b tyRhGkTXvȜYT4 $A62P)3꥙>9󍹂l,p]v(.3p+Mp1iR.@JpvTx[C*tK>6}گ|vY*R"s:ڡADHR͏4-[JX;ݡq웱M* Wg6rtpd\<_&Fm8:fugVlNXє>0S#HFP)KzBrdz +R*Y`Ţ"PpXsaU'6ϟ y)eNTcOYk<<!, 2j7g+Yȁ?Tjipmt J>x'QT.ASZو@W1R&@kdXV(G沬smo3;JVZ,z\ǚJA> 98@ p cA>"[IdT:Ʒb6b:5.c~NƼ}no6+;yM~b:v_XWq8 _M[9+u~OhW~Y؈F}uѡE!t<(o /% 剟JǖJ$9z1 rG5+e Gϼh%hB89XlWE)8Nb5@+QQ .~lh7SQc=cl.6XjdP3F8{( ^W۫j׊ [U&Ϫpi% +,\*BU2$ 2 I`*'.ټ[̲RshWЬ,u%bZ9W-I yCaM;:)Aovѕ.qQ2I]S%$DUtஞ*bj&f|jurM j1i+\Q7"nHR5'Xrbr!~lZE[`sm }Gqy-i3zV L~T%v}cڎ:V$(::)LrsGp} mmY '咒X](U0 tMsi?A+L^1 :ً9ev??Xg@$'ў^d}i /\Y0ϸ8/B=%Rh=;VbV%GC:l2?ZV%!+MJ'_}[R;CE߮{Sc]{Aty f[HۢẞQ7$NQA8m ҺjpbGJ7r!Q`Z0c2GFs{ʑD25wu֫@rQ)ߨ |%~6'X!e[Ԇk*#ib4 \R\ z gg$' AF>xU3jɷYB-_(RrFu8]Gc涋<%@%"9ԿO'W~PG,LBUsqk(!G{+hr1UX3V:WD<98~aV]GD(w`o%u^ (ue4v]>t-6ov3|ǜ2JqZdqX%[ aew|7huֲ6lF㉍iAeۢ 6<16E5mjfbߊ9[/}QJFUWfwCoTg0Lg ڪєY_R- tnyrzS' 7LW ,0TGM4cc7<8{@,"yi'H=nKg\ rڳI*Kuf)RtWԫiMs= Fjउ2u Vsݧwv!)A_cxBTf_oftCwd$h( BYX[C_BM*{Tzܿ8Ɓ<{\ȁ04X-%7:&3,?Q'j=QdXZc_Pխn}YZp}] {%oB[FYZW/QI7$ɣKsGEX1  w.+0{ZWbUa:]:gWr{m܄m֡>q-5⃲IH| {xΏ0PM\h(8j_2Nܓ$kniťO( odXƘgE{2-CD+U՜WO^ yE^3ݹ"aknog~KۙT ?;B2D`P.vm"aŁ_LhM9 WU"zLիM̓ÕRg!9!Zň8DU $Mu]N9}b'Hr5h֧co"@֢Ea]Q dx(2+H'݂_o~5]t0[38^[B0Ey@S JTTc1ު#ehau ϶YW7[BaB1J3d{4Lb-3άDrLND A\ѱxSv9>j#ĢE?>^ϣa(9_fY֢*cnUϝ8?kŁ\t'E3"Xt!9[2 /#t;vjZ?< u2.1#- S.<,6S/ @#|xaa׶Gf͂BHawn>$o鶾U6T+Z G)h!TKɳzH\ڐ){W`>: kn0l4i#z^b?96B_66sa=|vLߗV=ly=yK[E4Ie6BDo.XYXH)WZ]E5T9'h_5zX˛Xy <~]Ka*#& G1{F$u6vf@6kh2=} 4?ԬOJE1}VvtoHLX>2TK*$"?CI܉}șO%lL׫=D!<YKyE| Bs KwWlknA4AsISh\[xfw(BhX?Z !U+ GU Mm XEF!з!deb %+HQeVnR96Or}p FZ&샡 %GT}El½p'#aH`UB 5o'qދ9| ȸAj]d\U EojIyl0m=\=7c^%~ F_fW9܄K6@u~-4aXavlOkʲ0m;)+ͱN.ަsVN0q8¿C RW>I(BJu7,g1M ^fL]J3Gٿ$ؗ$(h{MPߢIH s5CYښ}n!mY4;/DMfyhH-PyOg@=3ј#c罾^uL mig{t)""Ψ|Oze @=a}X>+$:ЎJf8@֚ք|"7"Z|(Sʣ"zD= @4 ,Г"Ǧkt;op|E G+5??gþ0xh̢QKXeМ0tÌxd4ܶ{i z֖ž_#5Ix= ZAip#)ObyCda1m3:",1y\EhФ]8(Ay&[ÜʻSSCPx]C+{[z+׆%\Pr-p~? i|PHQF*7m8iVU.+ ކó3m8 ̦/RehZ6G9=𮷠6>. JBo%VA>^3LJXp_~,gC@yUܠpq'dv!1ǻ GR^5x;L_=@P$Di]zyT¾LvaPo zq}=@ifr<8ۮbڵ)b9C0.1/bKѦ"=-s'ROI8:z[AAʞ˛e$o"Hl,~A_YD^l'?k.PR,R@dWf]\_t?W*- )GcTP$W d^$>*~jK=TLFO4%&m y7!t8 lgMj9@*_{sh=͆& dDYGEX^B>7ULK]𨽦 zݕ}EV)yo&صٶ,p2JF-ww8vf}*޺05F֍nj(྿c3-~;|Poqb>wM<#j\Ư~ؾ8 r"՜IE@޼:$#qdM2}W"gH0SO̬n ّ"3)؝^WQ:"N/>@粱@N%5ϩvA%Dg,lCOCȦVhm%tk7&ˁg7fN,Gf¦bnŻOm+ ̨nk)=曕Zrl)ڬP8N3X6[5s,[Bb-1< pbѠ~L8߼O> r #uվ~ $\.T.9U]~EQOJk,#W`!@S_ix#p9M@ 4 ~gb:BtފW1iDFomSd, Rn.+4ۻ#}*5 8y4)AzX%`k {Y\I@[!43YV 2Ot.XdZ2 u`><&yHpLX&*ey2. rw*%R.(~Y/PtRKxgH;Bh,tspEZFBxhc@mK'..N>Ok 8VLUԙ]?|\JT*uy@21& a3=Mڋ ˀU ZȌ`fAk HTWp\} LiAD@lٹ}c-C"?SX{ċd.7\tS{He : cSk6̈́xy!h$Qk6\:tR? Ui2V%5@)5.[ϸ/ &W}R!XmHB$ј;i~_6(J49NuMOۂbU_ޖOis܏{ gذNc\ߎFAlwjasj,|b_*Պ&qz@cNd.:! 5vѫ }4tzI ̱86i&$Pw4}"y2dK(4g4K.aW"9LjEg>0 }Dp4_ (%Cنxx~zHo|'_VJ #fEҒ쩻qџ<\`>8+˰ՒZ|:y~n "m5A<ҊR48ٹSfxkjG{nBz~k.‚@u{MURLJcFjQf [:g HՔ 9s3T5?>_f:0ur<4ߨAU]Rli cks!+8a(Z " ~^F-[;٘O9M/"SHCp :4plcb+nyj|;c{~I$d?@SgIm2'y/(e\L9m1y$Z`'KsZm4v1ٹҝ@KuNScG şxs'S]V[b@JFYʇ"A[C=?ys C*2 N\,]Xc&H%= ~uۢ jL51߁}%5R ź -yZYD+_a=sAHw K󺷟 Jcj 7[勾oP\؁J0Z[)LX jIWL18Q QoG> RKJ!X8][,Kz(LvQQ! /1MgL3XdhS9P$\ bښdrlJ`ͥf&&dKD"B:w"߶o q^5Sa΃W@\Id)ir1ߴI@>!,L6ěEwm -%Wj-UO~g{V߻>FK$kVNl2>'w~<{46ȲD̹lim%e*igh)SC9D f_1ȒT zj(s 0Cl?Cޗx6|gT|6\,,KY-0=-hOTiU<۸Q`IO_(8%;З r DKt jQmaH^7Yi5$Δ ?xv]{X=ͳ^3IdVWЩVWukb¹ngO\ 54l `,^ڮL@yZmHOI\gHdf glC,3??b$@~pS _d3@'rQ|% pCX<1T9\PIA8tr˃QV26ļ= ø ׼r~Gsm)g(F:>zr#00;KMYhyZP~'Ppu@0ɫ{ DMyKA Fna4, 0N|o5 \wfCO{qw^u)"XޚԦ*p#S s]J_),KrSs>MӋ`+(zz40%h1{`NV^ØI^So̰`X O %*)ݫuuu _r/UM{ 6:&vPV-htq5+AFqhLb9ÇhQ'AMM 7{ikOT*K5akq BU%ܬ4o2 "l"-٠EǷ;C$4Bg'Ct7K EQazOM>}Vso_B{39 3Q*i!)"}uo&CZ㓔M;j3^Mmֺ?fg͓BJ91uٕbH*ϚV|]EM3CIg%[yvn ^1N&ywL9x)|sPED9JIŷIY2GU5Ũ=Q@?H ĕO ԙgyu@$uG".wмɋR̲[zs 7P+2&=r &a 'u0޲hw ҉2bg1kl}6 -u/jC'A$A^|GmTg3%X^j`Q`Oqju.Qs7 ޵,z»f6.:m:$ L8mGczLss_-꯺%\ԗXx0 IpE0SҸ4&eX ë̄ː,mforQG-d>Y($K9jaO vL\~πwfԎ`!M2IuG" FMdLHIT`и6wx^[Y #Uyvd0.}p"uqtt@|P8\nNƬ(3mFϟH5+ 3q#~_Ɩ׏8Nr&JLy9=73?ZbT CEBwT.A>WJaf/͎] "Kn.zclNJd4#BLXD"tU-Ґ m'?]Q .,Y-*i̩6"ݻ-Ǫ2҈C1)<~AZ9)D x,/i֧:Gg&A+c46^Ͻz6ITSHr fd^F1­myߛ?㥳!q@VŲ?YeGh\t،:0sm0]>?fG\$ǩٟ.ФB2}GJ)L&dإ G^S^k놯Ѡ5R&:H ֶ&*y, RG;tq J6 AuzqV6\qB]5`Qܡķԓ{ZuHB9)::hS`hӤc3$#+\ڢLR+<6Jdrm*+]$׮lo.\ פ?O/셈4ʶ͎{ֶeGp[g06)fGӤMt ,"VCN@J @':E/WqbbɗZEqpX>9( n& Sk~BEf;v/wLA?stA2$VЈUAc:'xwpea z jv7g_ys.=B%2`=aZ $SB[U3g$]r o7)a }l;/eJN|3VCx"6rH`Iym[( E4 5MldĮ|q`h,!շWPÙX,Yt\7ջhf}W5rɎoi`^?HA %8qW:`f,M<% 5>{+CX~q$AJYS۫1Uy)Ih<gė z kotOSwm:w<`TC (~h;`?ΊIpc XQ8@T͹N%<|yCtK} هM:~7*>̜:ҌfF,M&+K{F /·JVf fhU=UG زа:e۷A4|c4>*c_}7k3!3X<[u]c$L[Ծ7o|n.c `>s)^3/̃2B"`xep԰xYNBR85\5\OrjnpaZEp&!/GC1{vgX &ءKs1A6\ny*IJWܑ6 .D3ss^)A4_W`gY@: .r/:`<[B>E,,6j2YpGPLfH}:ڻ$-Hٚh0i E nꌐޕXZ39L#\s*ݲR #LM7za'99a)^j}0S^s'ȡPɤarD aWzngPQh1#M蒆G,M#F.3[|H&$$-@=_Lk;ӨVwT0?j] u1VHғpq{I4vFh֕ _1ELEeKQWǣ 4PXI'|1p#k}6mpxHW*&%xQ&#=\Nzt 8oKx)75S:ǘ?0-OYO䓌ؙg {͗3>aG1점}e2Zuf| jpzϗ0Kц,i1KBMYXLn dնudP웡磺5`=ErEU45Cu,aa"2~ =Br0-/I8.X5yN"PV9wHSv&{4Iq=gaT>rkq"9gVr8#ds?9:O;Q+60՟OܿeM"(#pg_%Ә:4Ϲf-,j}~U qoˠxVb)upCg,A(J ZȆ9f4֡(ZݧW83LS>#RJQ ,'6hu|謑p2:YPSV /MTDM#@'G7r"GdO">TV*ˍZ8)0sPP:F Z[!Pt~INIީGQW[!ɟ8 .Y L榆:,/Hӻ1~U~ z\</yKAjo!*uga!C/u)=ĽFӮ^?L -n `\g=awM{$M'jȨ o9ZWfנDYtϼgG6_[UJc 6Ԥ*]Nl؊/B[p 4%_-~`lAm^Hs 0í\/tfWT0xw$& 4!RM?- 䃨ɄjO2bW$p jżorYOqҗxaG'>\y2d~d`y=_=:']7׼v4gHTq'/H0ulDEh:'W=]pyv@B4%-ӄL< {=/!Rsm*AEq_Xۜfw3=٢/g&yu`vk?@ N0S|C-\جx}N%,XiJiRBx _9<ny`y0J`Qpݪm[T]͞mT-Ԩ>܂/-^|B H}*v2NX;b"i-т<=ݭ=FpKpkWYnopiX8}En\ U_s N(H>.tJD`kfYZ=] ^yί:WRm W]dH AD2X5=Xޙ -␛wЀQWʄtnG܃v}n=˻*ɡا`fEaPꍅcp (HϠ^3i| iGiSo` %7f𤉽Ҝ 8;䠿Ԋ{,9[qFΩ/N8ĬZ Sb1Q;'bQ6L,;ǖ:8dőSSܠC8i'# 0j~ԕL?R]Ĵ({ΡiL ,ыW) r-)RNPlTv3.T( EPPA8@UJE;g! 57)P-u9()E @9X8߄|S S^RHz$]S,_HhZdd mMkGDKRR$) p+te0HDx|{m="f-rS^EOCрM! ( )t(2\"ehPs?}+[ }]JsS׭p9JʎIh_4LoZzOdcjxj n l71gٙw[>L "E꣜AAGv։V -/墩hjy=/|#j]CNZԻqĶ^QOIg{[7(?|w3]8^(-: NKyBJQ3 Kzٜ10T_qn.tsTM5DepԦH>nӿJtR,ĽuˬO6kR L)D F+ók_2fUX(:" N`i=kXqkYJ!K 73sG|#") Wf`3RvzE̹a# RZmΖg]S&:0h("%۠D"͟ЂCyp~$߅20H\q\n,Eέ!Z#ε64zxڇ]vvf k+!*-R99B1}ʳ9>'Wx=4 .v4 9iOCYVPOd fLcd"{^8QBg@hWxa:|JݶH'!>Qq}+aj\cy~rS8AA8WCD3pbSFya;w- 1IP?[( \#ﰱ\,;^2߾L:v?pr2/.Ӝ;޶c- VVt:%?Z)k"ps6LR;AO 9d?\iI.6ުcj=>::];ڔ_$D@j@[]Leh.8*Àsw?n\ #[2cߪׇsAfVS&dԫ \Lr\CCa=@(Wzf,swKƔ/ݤS5۶XX^CN+QH+c^1}2baX! EIݺɕ 2-9T8БGyfZjQK7DZc >EfQ{6gȃb[kQ'^?LWyDpR,*˜54GĦWt#dq``\輝-%H[ |ݳ99N3C߉$YFѦ%9 ZzAn0cEtJ a᝝ ), 2i*UUΦ 酭hD얦9U[+\A{,/|/ڵҌe !]05ma:};i ިWjB @q/`rJj)%е(AraW[dK^-H5 cԧm 7pI_ڐL٬x:w}sL#ݰq fJ*#\[}0}4$~ 8ACyx1 kTȷJk6h$"fd+M٣k~9̾ccg={I!7 f'-Hs]f' 6d& 2NƳY[x AsJv꘍dNlKP=^8DYbX&N"&gX-okGTf j|;E?&@=z>6O]s|ڟk[bzve83f۷_֍9P GhGSSɦC59h3{\VKru׻a 4M`Sr<*ExDR-d_j6q i*#_p OtĀ}2QZpa`dH B,/pa&3m|FK0L1Λ~ĹDIɪÎ<$ ;ʀ^U2idXW=a\^cG{eyfxb왯Iz5h7nmd.ZRqY(yB̲cӢ NDCxQI髎eoS)JuS8#p-Y g1‹yLӝh}߽d:mQFLx8{f7wrh߀Dc؆[3"BH1_VN#۰# ,$)I0 "^`yǻ=GZ?։{CS ,#-fUAʾv6ݠ>j ddkۣS6\F1bHk3b>po`vD1 au|,U ,4a ,p%Z1ҩy/ޔ($cq5e~~L^9psnYf w :5xaJ#3XkJ6Qufmw ^eP/E.Xg 2Bɻ̖QeÁ׫o"l[`u][+)"԰UP6 v 엖4&xr  bT2RxvcҥCnyF 0'\: -fIrrw|\Y ܆?H$)3@aѨZD,ggDvw]?xdz㱏nM[!DiDxD^dKVOڬ5^'CFm7 B7TEx5rFA&2[F 39c7Vez!X>Ѓ )2!?PVcUX ;gIV3Uz`ލt3Yk1f @]4CnZ+ج2$ "x5{sr-ZDC~=B _`&C"G5rqE)LrZ,+-:0Y`(>Q&Q$TD 8+nZ&?z %âMY08-=/_dkʙe`'hP.4 XtOWOS_=IY/+$ƹ}Fk(:Y PhNհupWWܐ 9NJ% JN:\dzo&1_7DFWT6[D}Bi:Hؔ"-_9۬;1';SS۫ыh@N /_J7f{T0 \z+xA(kxn:dKfJCMڲlhӧk@z89SAMt\B|J>Zα!"ʕ` 2ؒ],LKrܗO;I^/ MmHMܳȂl$7PO䇐D m&ub6YPvE}DeEę.nRI1s \[|\!°ڍBT #R=d"&~&4vg;Q_լH XZ͔5{k; :Xn%^ɻߧ']5l٣"ۜW0(FjwG=~] >Ӳ3H=/{y*Kׂщư*78C hU@mBk,$gD/ 9af_&"f5U43]ʈ# q=d}EWf8 3v yr.1 D)NnJ4BdžeP?ƷSZ2HR#d!hIIS6|HBpy&1<\x_"~?APHyh^Z: ]9ju!7{gj҈N佽/a 0CznEJ4rUk˺ XF!RNF8y{bAnlC>o*:IvBtr}A'dF%e?#qZ1 ߲ ,nˆCG` "6Àlms_r.geH*[ P`4R{$j@Ɋ޶ykp! ~9Nߢ4/©/e^*AEkT1S^*hMyaV/EeK.B1~eN lZʮ$@m{:1xɞ}'V ַ"7% sӒy'KWUXP$a—f@ri#5zd4@,$]{g̫w0Z|M|Gnǘѷ}+E}/ءQ1V-2Oid+6:C P-o}36Q+m!|T1Žrη+xF>(,-˙r=7jU3]a.@^J'0{}O5?w*}HΏM/IsrOF'27f *SXԵn{طY'Od!ٮv@CѰJ늀1-K@X4ɽ݁S.)vݵ,z+3uH"hT{1WRؽ1*b[<3%~;߈Gx^Q;ZQRY{+R .SRd$XGWpA怲:~c< P2JMp8g2T̪U 1ȋIp4yi V twn//& |>?o'|"'퓅 ?.B<bnO Ay *=0/&`{w6 ~?VS.]/הSL2q=}r~; nq$Ϥ(FjY5"vˋBߴGȮo@&pPp "W]`QI-P%5nlu^m t^uéDD4YY^ N tOr:.ÄXP߮<)@D5i8<:209.[A#qA?Y[.>Z'u򍑒" ci a`EgocH;ŕx[@Q%m`3gEtPz؍v695V"F9Qxqʾ hOR~%~'LvHDq`='09Q>)쨃;őC"c;}H=-WG$wj!MFEIP貳oP|* BZI k FTwXM@o11;ujsTHQ\9#`ї AnS`oJG+V rJzptںuEyK.]Ww[DOW1U3B;}{!LþZ0~X>wXz 2@syWo5Oi0F:Bdn' ]EF߸,e"FM75jl{7n 0(F;u\[%?>%WN6Xg2Jn.g(tEF_^V~a;]UiFe 4u%C[zs m ;]@Xt"X`+SLm!cekUQ\霌.P 4]e J>gpZVԬ'Q$oj:DPB`8wK&N d$[sP3P2y8bT"7ZH]'[r>ڃ ;l6Pʁ<)=oؕѥ'y 5hWUs閫5V!ѠL^-`5,ZuĈŢm\L,Lg۪$@dZHWR4iD]mER%fs vufY)XrVvunǾN+Ž(lup7.ѝ1S:${DE-'_;ըDDa,j'+Is9AŠ|x:,|k5_IFFu?c ; Υ1&YFëfwP皵$vXo5zRG->U쾬e}x怞2M45A0qA2IJpZL %Ad=~B"Sw:wAe\Yuix8sri,Fܰ y7WDW?=|_A˽\LZ #*R {zzGם–YrY*a$ ;̡x5Y1oR 0}LFY>Gi,5R'dLF?8w?I;&e@V"iDKlĽm^ق U~e5moebe5 {TCE0sɠ2{T}::%X Gpȣ,p6 Gəhf{($ dhZ5e,"O?K6Cg- m}$/!Y WHφR:HK27 TX$oPϐ:${y90&FC@FB`{<[2@AԒXa:' io.lv{ldݎX>n |9}2NC wU3ueu!LXۉZhBg#Vz!lnˑx虍Tvp3\; aʹ >Yk(lQ9]KÐ+gH3)y"jY:˲zw,F2Ts9\ D5kBmˈڞ3u|Nc{|a+Mu!bί^)\NSK; R_S]guk/lnΘ^_ҿ`rk0 ; TWWz[T"3+2t%UY;lyJT߭[:y5JHn&3?]OmD`8Ws00*DѧAFSg f)s@b%}8Tʚ FTS9&RQd٫{9Kڒ%Mr2˜JhG0^<~٘zj'u̶T")i! ou^% {:; E&׶D;r5dNccZɺ[j%.s1]]^ɻ6 iE` ld:.k$Nlcr/#[/ko&xY{(4.-0м$;aMxώ0jw-ϵ%*0Nkо[ ؀c^&ѓO{%fSZ<^.^1I& Bvߙea^} +*\!5c8"QRBɊBMua}Q+ P4KJ6lj|tl8plYVmmL>UE%\Nl!H ŰpZsK|S+/x'B %VO uk6٧CH73x˭%d3rrC8\ ԽRb=>uk#<0Kځ3̇9F7FDҳOOn^!'׳2ko^(㷉:!1ɗ~qf"T bMW'6D$,C[ "/d|/֗Alj ,noܡ/auEMN#r:XV.ӵ.(G+>P6Ncf@d?VuL(q&qءQT;^e/yge.s}AW[cPqV7wsYL]i" WAq6݉qzomi% MF7AGz/@OoE|3(7iqJbJ¥SPf,l68Ԡ]!Yo\yUVOaBrZ@g]U "^'dJ)nbU-z0 t♂#^אb>&fەd CeoB>&9P?M-FNo >C㏖22ٽ{+ST+]x*=! ~@|j#.R 2sF;VH,{3'7ͲYU5ghQ׀<T]Ұ/;xhVy^*^==#79Q:Щ,#`7U_4 ֌"|Bӯ re pR{_W#r]M!C'$À)gxEen`D S ϫC,0w|n4!/nͱQՔѹ \7wNG S>iRQ̔eճ2c=7UQ 꺆phB%—);[ ׳%n}ISsHz,&C CCV|v#ʷ,gݶYFb9^:tĉ¯V}o~y󹡋Tx}'iW0izvy!Ю~r9A鄡Nh7NXhG" P$ځ;];'Zr{) C lOɓGDz}z U U4driͰ+3awAֲ71 IY93d}nKv*SO%'i< [*t {ɖI:X tGaocc߅l,Ѐy.}i-;{8Trjdp6Z@AH{KyjyZ ַm6i,H[[d66UH;ظ!3x" w Ƨ=ozvCR"*Ё{~#I0Ʀk91)kfb 0WvI *+̠/IEvp½'&`\:6$eI\.k1ɒs"ɍ϶T / Q#K-#bh&P@;O) E"E]vn\0f{ߣXT!ȕ'!"݋0Y}"5μR|ƞZoMLh5Y %/u[lfa@vRs {soͤWJ7&5Q(ЖD c>6QzrEW`&$-aI|kv LVMw'->!2 AQоb&Ğr~QZLFEcMy MЃor_`{R:R"R&#ɇsnP;oD}n?ߘ9|[`&QRI9MJ| O[^՗FܽYl. 1au2vlȟhYcI?(b;,l솬A%fo)a?_1 o)Z:sR$4f$+vwd&z1b z'D@Mj 4T&KX Ym0;2?E01&pqUWJUbs`넥ۖZkl@G/xk'JjB4Ͱl F Dξ#%o4\?hQ|Laʀ8 '@HQ51̋!_'izJQ dA3t6`%Xn.A (+#a$Ȼ."^\jK9$F[`AO׈׃=c+Ll>i M8!Mig^ M.<IcRu/6_bt1x`kvOrxU-XiZ{M12k9r2aaQY>b(`5V:YdkP2oqtDKw$ә)o=IwˡyYn'Jz@MWCZ DU(UFoݕQE׿,pF Iڹ^ s?ͧF u>dKu$WA+ʾQmH-BFi_ë Yqg `$q[iG>@ˎP $Gpl7Z1q7tI}UĆ֮/̐ V5wdbЎsun_+rgsk9;1aRXm;5;R>WA0}g! _;q~m"MNܩ\g_JӖm1KsC@(r6$mW1m|azvF(㘩4`_RY! 2"'&<ӪpySy-a3̩{E(iId~6n61;*4->n֛\ 1| *k)M\ akiʖf6q@+!*vCa>Hgcx7i-AV s/M?x-a Avُ5Q %tz&W0S 8 L 6L`kꇵ$jfjRkKF%0'N6U:#)$PDVS0.z"au}[Dzg "}r#Je oTBAY7.2B6eԼI0ҿٷ[IekGb[y{~IH EǖR kƎ1 >NʷTUu9bXC~[@hc;=oA#VH!#g<VNяG:QEgytNGmrR gYtTj{zC "Æ)JОBbEDq+-M}8S%FK)ǒ_X@GU)۰3 giG?J3T[V{e\}3g܊j2 (O(pQ/T∓|[J9c_I魟$3R̝dDQy»鏳jAs5 7t7hZsn?2:+ T.]ޓY9D4NFw98lDnC]ChE(6!B*2S-/PjhBJEn͕ξ?6pSajUqu``?QGV9zqo/,7jC)$Ad:$^-(gKIRsnf[3%񭘀[*|jpkJ8lj]I򙝫&n1jj0v-7a߹Es0y )6SJO 3v1ĮhvL soMQFuuh`iX皵D(`0KU-V* D@O:e|ɨs<78~5;mE$jy fu"MFCuv$F)yb_$ չC1 qs+U <:cUGWX8g᏶085r) 2#)(e-K2(݄#dϥGQ_ Lk2{cQv!LϔޠWFg`>FxzSbLAkf+jzelv nݡ;8^|IS/7x6C(ʃ\&s1F~2r|j4E<{J6һ =tL&r}yܙu֔>w` C𙰉 q[H,f r9NPWP3ݐjpwɠ,[p:% 3Q;FvI%]5_R<&T_V/^`(ހ"G9eP)tP+z#W%7G u{RT ~6A ."$)Tc`ձ\8u$._ϰO%&)̀pu:ꩰ+$-x &* EhύNtΊnvtÓ pA i/l\?> "A=%GnD?:D\k6rm9Ej`ԗ^46lŔGkVOԖj⃤P$Q"yO/3φ4;s@eG)\_S˵pnD Y$iD{Qژ dpsȠiا=)C1gecm2[Æ';H xm).}4,?vZ|Py{_9 yi֫AڍD:ǝRnv`T q0d*J :"ŚR{zBO͘SvB=Pså~kpi^>Mz}Rƣ)Mb(X_yyXLyU?gb;U1=TxI^?5YB8#+>mA̶w-ߓ݌/"5s<ʇyC'(qҤ%WK584=CTM>1 S!EU#Tu9VK}_qQ[r/]"E;5Z m^:2CvA-@ mR@؎"Pj+?2?Ltg/K.%g$mW-LXth"Le/ktJK[p2Z# mIjD;o l2# ΎNK|TzEJ?dvO"MIƌ1bAR[x4n@Cpylm]r 2kt@vVXn&E -a/$;Hm#S:aaIYpmgxIqj``ח:j/+8|K'S~/׹6cuK_{[)oK~;{ª(Oh&?8FnE%;`G Co5oc,;6X7Zep@ӤۛM v9gx/5iTz1\~+PٲYy goHi0#?ЕL^j4 )׳TAP'Ϲ>-"%녋P&^=-Ө_S~A7zQ3ۍjО}:(m@~$.ov]dd=n۠"4FJmz8 g[oƂ]e)7*J)kh%;dY7\BdS}kPm_y[ng,x|g F&TM8\}9ݿin ٕW8,bvNܳ7PFZ~zۡ9\NФJ$W*MLVA =_3FtwoA˪܁x=~Z q)Aֈ`E5lU:>E'< r!lUȄ3(rW/դ--&ŵ(}=v'cx+_ImՅvIi`3};9ׯhFf*IH'[h.qr>Ee7rCINzLp\&`=U^PGSoAҥH):k?t.~O16<ꈅ}e?N%`[+Rp&\"D7X^ B|7txcj-ٜ~&2I~kD%6}%gIvV'QNDB~Z[x}v>=( CybQ?bI4 AB%Jeǚd0 $ Dž[{@{- j1^A8O HI~+i5Ȏu.[>r=R7 aq;Ru\UZDT;!KK=H)/,(dπʬ76eϔIé1\P4(sb~ƀ;7y̙ ާ2b9GXÒكVXCpT= +cGJsnx*Pz<)גޘ6V‘&x զfrmR w(. \c4䆆W(M$ sLsK3!i aհFm"/wzϭkN9}%=TQMP2y2F֡h>W! d5DC# ? _(uz-@=#MBw(5ξ+$ w]_tItC}{Or-t &dB>QQ^^aW~X twoigMm['xaf-_mO蝱|mkl67t=$a fxj fg16zί$Ѥ;*v !l 4ܵ<#fe($mȔfF8IbF~Sz(.1>l,MV\~H=e_ݣVxt+0N,DD\US i }LeGB.&mJ,I>6ZxѢp}U(F,OL-D;("Pl F>Iٲi渼}6[&8|\! 5 % adp[)yv(LVF05Fbq~?1.39,x#|Ep~c'Ɛr\6㳹dK]\.^QUO~,߁u{h-94aJLBJ<5 rQ&`, /f)2_@m` w[:THYno ܭ4"M8D1=(#et|כ ?ZpQ˘U(vЛIHjR[Zur6"ߛ^X%1y]"Kd3H Ml7`s'<xo9~92GG8ɂ2 8ɼwdp=o5xk%Bͳ^Eh@,(Yٮ@'Wm$֞Q&%g&6afH(#ڭw|t"&/Fk vu:cQ_7ީO"k묥^r_,y!9V櫲b٤d$QyY1c&|_)E*K)[+JFPk-HEٶBxt.?nhHV< Wejˣ4Cb[pJ硊3&x9&@w23&+V2ݨG@(6z)'r\юcKE V܇qSQ,;OS|nz.SZ~zYS hipAS^CVfُ(Z70NzmC~v[pN߉xSlDj?弗L$m}NH7N(sHHp'Y=cS|Q 7Iգ?7v1Q"Q"c%ǩ5!S.1Ak~3q-E.L'1^(W,´k z/vij+JZfmɶW[ d#K/կպGֳCh=vWGKNr $6R'% "<,_2:ZѕVZZN<1 %B3+K*k0.6hq^lR ^$ivJ)V4[cfmAE/ZڵSR'Χx@I!y ܂.)E܉!KH2,iR]^ I5Jнa+xک T>ܨHøHp p y;m\K|MY yx{sHAN1U𼥱fA/j*r'Ajn;CmqFi1SΓ}FQT> u')~3:c!p`یIMu61(v=_+&k(<Peo7ެߡ[$>-DOcr?DZ a>N9 QsG97֬\LBm\ wL f3 x-Ud=׮l[.$$~ sZQ_8 b% فy'<\AU:vC7TQ7 v4о9mҫZOEwk̓H7`AEn)~L+e;Dd5R aַ_^']7͊$ؤ)'3B]CW"U''-$S͎Dy "C-5g%t7.OB.} t`;;ƦRQq4}߳\d ((0YD_3'\J@m8zZ-7<ʌd㴏VjaOQU9߯B;Po95$(kLTfcMa$b~5N%FFחɑh87HW|4Y'夈ΞBw">w9v%%w#Lr|e9nxηaEn>pt/,UeBGAJ-R/n%$D| ]=䇖4+dCWa><8פJw}1RGNڢ8 -2Aet O.0{&Xb`S^(P׻`8װ腴ݥCo:ne $^@7yo54i^HQ#%oCTJJ hsyjTt#uof3A3zq%j#7y'xVi-ڴ͔LT-vm?֔mBwc6Yc-M/%Ț0T(Dkp5U_?R$B 懰Z"ug4A*lY^;廂a} S4g8[IX}܋ kyo\@O#gMن#JuBPzwU*db!'xYb3TN¿2 ̃;}\>j nh&}g<ڥ] %-G\AWJϣKlG}#s{S[}UN%'Л'$I.M?ݪ7OϔFJ G\BiY/ζ88RU~D]ߓ$ y+NI^HHaהkI%BԔj+m>_=W)S0Inо!?T06]6u#O\~&aG$gVf5¤9{1I\4O%B8yH=ʊeK+k~H+iiRd߉B6)On5Yv԰uTAxq윥|Yy ,>ԁ¤R(Hcmr <5oʵT+OG)")`c2?}>ƛTx|l#SSE4#_$.XA&Gzo%شD Zu= rR9/aa{,TK `&^UC"VNsm-Ein8"9^X!KRXX29\wNCS#[AiXGHy^.ſkRAowۅkQwcn5Ek V=ܒ]͎o2"V?"-%qBRB{.:+7|WdV u_uiC(F33OSr\%Uɟ%A$zܶb{'5xD-"8:zۈ-[ȗ @V3%cp>\SM).bF`a4"NKí#rJnbVkAx7+댻C39DZTB+BYr+5 862n g&|= H(n"R8oA[n*Q$mttOCw%oZݸ^{_MGb ׋dQs52i;= -Ӵ'~e:h49ah5V2ujru=OQIp!hRcEY$+Ew"\jM%巳TP4 ò 5raC2uUY ;7X:lY;-aQ h|:O{: C8~.N/:M(ɏ=. %nE& e2V׬zy#;"DEm~ZoM$VNVr|כjꇥ-U#\َh{h"!)}N]@wMeQǘ#i 4tS95o2Q#/]M!픰|`\ǎ;hb5̽ BZw&(H}G\+9GhRSԗ T2=JB$ +_1ju Q륹w5+Կgp@Oe´F㮓B9@[ b=>iĴAlj}춡 !E any|O*e9ZT0/y %Kz*&xP!.N %&=h-Sga῟:<2:k01|ZȻQe#%_yDԉ&Й)^h`؁(7([1-UCQ&nH;WAE/_ĭ9kJ8KUQgOtC?](.5 u?٘gT,*Ƒr7YkPl\0k/W9VU8`<9S-(;6asL֗ YZ4[ta>߮X-u dVc*_ѽ װڿ`m<< M͈tn= =`';Ǜ&jn91pǀRn"?!;Z KM‰ ٵo2[g$]kә UU,䊔=( F?ݍ(ftDn~Lc % !m:ץϝ7pe"X ;o)X~}(]^ x禇TŹ+Tf𾆚,*l8̈}i3d D)-U[g5i0UíֿwpR:diW :h8:,!ljj6?w(?& Ԛ WMU|xCíӖuOKi,4 Sy{nrKGuN^R W Xtռ,=6HEbsadP 3(XK|}^077TFE ru|S aT~י|a}$0DbVnWĀF{pزJLpf3ʐä[$73gW_r7su7p+UI۷ uK`wb p©d&y=Rni{Ѕ.ZP^]xGa:+mzO .KaYBi*ϭ3FYiE4@JC]CmMz;9n) &#dQW*ALm`[:޻:Y-;2y6T Qvx`6,gBhzJ<{?4jR)d-no6r9 |ӱ3mLn`Pc采F6J"7sfwf !=;53Z\qLߩ=yL(?-uoO%.#e"AM< (< T;E5o{UpR 'xuZ`T[3Ki%q-⫨Ɓ3ԩy- zx}3炦7ڒ/ڬG(` 9R?{lgzXs<~nwm0?Ɓï1VF0ۨBzkmc{"9d ]{n+qN^=d}>V`l>}_7Fv dP(6  5GVdJ͋7aj͐uu3=8uw*¯YO)9}eBVV+KC)]` EjoQWܵ!*k |nILC={>&rZ/ 3TUzVdod##S]4jUl'3/w-FҘt$QKXC_>&]cz3q֌kw7[Ĥ\,?Τ=cxtf$ :Nh lEg4(/v #r Nָ67#>n][eyLyڦjM̸۔ZQٓp $!O蕐|?3E͏TSIx= Gl,^o܆/y0qBDCJ-@Rغp1$e8`?7i~9>,]Tq趕K_ Χ~xY5[n tVcrL4?6O6bvN/1qDvo+HxC\eN)*cqt?AE_5ښ(v3@*ĸ wpRZ,?`7qr"ow^+ Am$qQɖ53+(*qxHne[Y,3oiG\pV(@֗A1^j/l6׷z[EZ*EQsz ?6NyyOT-IȮJX.Ȉ/%W HPC w ێ/e۱y[U =]iUXj?Dߵ-<>^(KD,M߃;'$u/u\Lvɭhrݶ7MHۢ:ܩFߗhP!:xMu֥KmndWd2MO'@|5 jcCĊ4"N0]S dXbqⱘAuKkNX Lh[jK- h e՜qAR@q͵ΰ׷ âI4ï $3.S@,#_ \)sPP%nݳbxge!,ikndKܰO{ *z}ݯzvnyMY(y%ԙ)$'4;N!hLV_r25~ 2=&xWLG^D a =xI,.j-"oůF{%l)z>pcw ,?ev\#\S)ؙYnHy"{r7C_X)#1ۇ￰My͍dě-7qF 4IEѴ$S]e";&bXDo%Gb]֤(DyUڌjĤY%])jQЁ%.o1$Q?ɡvW4W8K|mSMCFyDk/Ds"RG5Lc4^h!uO82E\lLn. >Fk&GLƦrQE,R M hxig~)qpﰈ'} +o[/\qd~/h*'?m%g̀K0̋E"u;z0l@3I.:2T0,,ċOpphҜwzE^}AT%K>Hha^& s)۵1=4D`ԽqrqȒ(T$VBWv[!V7%9.L 9glSS?QI]}ax,(i6$aptb`a?I ,k=J8Q*q5Ry~،xjYs5;3qnEV[% ~y+.tTIB&5& 7xboM>Yƕ=l(W!lm_$-O3_c]wE}t UO01ODGq[Yom!&!AxߦVMc9|}g]`iʵ;qz0/± 9ZۄDZ?u;wߢU0B. 4V2&{:K.vWF𷸤퐐Cy/`h{Pn&5Nr;l7o01/ +fο?ǧQB5ꃘ@j\x*sZh2#ߵYLt]'KXڰqooZZζEK+X_vovtRә2Ke_^Ns?b6% pCDu}tW3q$M7S:` ! glQRU;S5Z c1:y䭿DLeU`z~YdZIBw&[!oZx=#/V;)H{K&2&"gVxJ_WhGTeݕߡU[Ly\.$#P_ni 16`3O~j^}?`bFն[VV&KIت8ۍȕa^5cznő@{ O?z>]"Ea;D aR BVo*i32T AԂl%e' k] !qVuN 7zvin|=FqW\5!IrvzY@YqԦ]ET ?V_Fenꯝ\=۴\1z@4R\*iZsCt H('ђcg63 }h˗@ HZV@o5f3hgeއK(ǜT"0D hfZkM؋Kb};p'!n RWqB?}݉3NcԴ YƟN._HKH;A4ЅV$%roYHnw8Ta$օ]eN:58H4"K) *}Ƃ@{7趡q@ 6l;1-;73_^dk>f0x%ԈQh4j c%aތl) #7& b˥mz_ְO䠛g$~MJ;mIАLL} 'S"H["^=n/4Et&!z s9'@̃Ю@߃)ͼ\@ȋP# Gvwgb:QBp4~u7SRH{#^ qK'8~cVx|gyЖ 7FJR~w5f` ugvy fGu 9c#x4qO2W( "Dqcԩ/JFڨߠ~+^)Zn.c<+fut2VJPSQmoP9?+.)RnV[>Y?2("Ipsv/V0aCEV21F`PWH|SĀoO'Qq/x?ft{{}ncIRV Z;F\ʨ1{[ڮM!YU[tֻ꒦;\ɻRSY} Z|[Ih%6Cӈjշ{fYMDR#4C_˜МIh:^EC[zO-pZjXR׭XM_uƉ*ڮZ F@WJ&0U=FyPI I[eK;Y+AWRI ٱXz/Lɻ/_ =xmTS(jk7'@l8X|U!UE76J'[ǫ$$r:e$UTr%Q,߁jXFH+D? PWYH(?#`W 9Oߧ[͆p'HZXjD#pU8r2"{ =vfd7Ɂ;$^%z4Ů@M;/ >C悱8 \c[j yd{kL ϬiͬMo-RQܧ[S+DdљA[b-#mGv^jd[nCFQŝ U3o5{ TkD|1jüOo_AeZ3Av &؏z! :p6Ga3ud`YB!#,jNE0_E])J}緸H<̒P0]*SX2I-XYn}@ T) S5Juz!# ^~<()%8x?P1~T3VVvx}10#WOKRɥ0:z؏,v vF,.\#H&J`('2ȣm*P{V>.wr1[(<܈x+%s/+)M.x"C'hn^倈5DK10꿛Y_w4j"e)ޙ'EhC"#^Z.9 "SķA:(FJτ V>k5*mXEFYDuXsqZaP 83d@T"(]qʐ6!k$a{T|&˵xڼq ɹbL"4n8 ËXQy]^%R'._A"+c> rѧ^FC \PǖB X\ U*Xݓ[cMLvbM}#fA.6c*VMߵ;\i5Ӂ3!.Zo򮝳T܃9uR"d`LoG?!6u7@ڂ=F՗-'" 5Q!@AXG^K<-l Ʀ a{pQ_P(BJ޸qɮ ÚC(Ve,DRֻ*ܐ I{3G$25+yM66ؑILSאMY_ifO_Ʒ#sdϤM٬e_Jo_8-.i a;3NMvIHԼ Ӿ҈fv0h1not X}8yOh뜗\ I ȏxTc;t=:P/٘-Wes7ZvͻZox @3<Ν[[5=*ק=,? wY (3W t;IAplEw_B!OEHxg J׹,~0%sZ$.&պ_!$`V6US쐕HzccrxfOLhE\E IEt10%T xb;)$ݰrۈZMȖJdfYn7_l ASp^i{/qwi ?;Q] c+s.77+J3{5J%/! zEncoa!:j&)LioD ,ь2"YQe ʭjߩƌgDc{\GAS[Jy-Ry35 є"-#FEo[$em?#uw8pz%{)qu3XZq4άnP,b9 fGyPf4Põq`_#61A1 ۰yF?w/4Dgp[3u-o,C= gx"ڋ4Ll R]Q}vJZA'f|~jD CE8X'ujςL͂Yd}*)\mͨk?URa8`Leȍݨo)G}˓ &Œ5õe>Wƨ5.owd6v EN]{sv-,ʟtMdxgD.M<ä«_#@vTw1w,g;'X#![zKYo QỶl B- `TP\:nK6YztLK ?4#<Bd?iR8?>U: b_ 7SC# ̳`EE#t<sD4g<\skDpf^rU8 pl<Czhwl yF_ƥ~Sebb/@sHfjCOVE金#+:\_D :p\oIaIBT~LfcY)qQa3y03N}a.dw޺algYЂ6GƄ9WfMuJ}U7Ji`CHjH"=ل5MC KDN:d_Jx։ߖrBU4 9q19`|KXLmp x5ϖ-}΄b SFvWRҵ/T|&sYeo T]6G bgF>bU(^^aO}_ϯO\N(2jF3WME!YOs~aR_ՖC>\V@ofG#HwJ R2UZԌk8e[$?ߋB|NG~Vo][+;,{bgU;' ]11~~6g]`iGћ5Z=,IYegu?žʩ)F;CLR}md1aED~V72Q8đsN _bhOەʶ/DQny,5pК"T(Hh -hjghNoT9~rS mH"!đӄme8/Db.IӮ15C c5TV{t`OS){Qoޡioj^䄨R}g:#Tt"O&$C)kĵei9;[̚U6u$Xew@A .\i vٯFNT')Ժ*g_m!ɾm/r R=J.)Mm\ըK_dW {-Wb=bNlA&=i̎l`2-O5r T$?Eq5tRkIB%2u, өPkt*V9M2FY=MwLc>1~[}S#*k br*^/f\鱊AϨuCԳ.Tjցf@7ei?ex vuJ{;b [w@Q۝*雊>/ckb?p)3hq+vMӄj/ce[ޙ& ;afD. o/۽Z* :mńhzT,餗cU`v,- 9R K,GʩB?z~$HLA\6."êuG$4DX6,54$oL#XjDl5(rf5?ҍ`pF`59wV0m'9$njSwc<ԍΝJ֝ %cO3zTxCUnq{;Ȥds .tHag' EYe[I06 Ґ:i,Fn*T|*҂l6PqH y VSm# hUcn}5"zKq@.o~T5Gq؄ KÞqPz$g h 743*22fsjOį2xrj5lK,nE'gY' ʼnRs΀`@z*iU"nP oj`uYDb%sa=:pKLo<ݔ`<]` &'wWp b*џM=P;IAVml$P_F$@rns}IUl pUlB{,n`-5`S;&(dd}%4אXҝ4fs+-s|Z{(f=d")['l4btc:@eh߿n~nߕX"pVyNsEwPt"=vYAr[5RykiK/;4 jPꫤ<-=*LVq† :;oʁ|(*Ua?zaAX ^S8in,l36_/Jښ`FIhYA畛C\ս4@Y^w"of]rж>qh4ˡct0Wv>`Z8cfxЎ]F.ZjlG旓o;r~l Տ/*oRW=>8;o,3oz&W5`a j#8'ϔT}k++w0{-J̀$gP,mSHViGmױ|o;8) j\#x72HiDqÉ[E$q#hsPD0eTٞ6/7OIIp$1 a *=7Y@Ԭy-w[ۄ6NgޫHߗS}eOH:j lQg\$l| 2r 롧ʼn*>Ѫ%2Oy1NfǦ8*.<72D5$?ߐUBM ysN(]Xy!u{>6+x䩩\=g0eTuᩝ:M3wpfM=[=8?+fz][uko.+B0[<$VZ0ѝ^|8A+*2Bh3uP57K5Zx Uӻ̶ƅ+% eAq#0̓:qZѯQP]G꒵4?Pc;7G/faK$^ #!vV%tdVA|nOc~K?yS7ͪZ%~,p a9gO^ h⹀tkE]}.4OH]rTyUw,]!Y/>):9@H|// X_cUL5(^9c O2}R\4NA'x䅨|,36]Bi5)5ҷc)

M CAsoچ:~-icY6 ƦP4ǡmMHPc#Z5`4w~fi.H 7{ յyv3~*԰d©l%KY{+ep6##z^U_IsZl&Ǝa$q}O"`7)`(Y:+Ɖ{W A>dE~5w4ݫ9տI˺ˮ;7 W *pQH5bNՉoqjJٹ݄PLq\ Յ1i嵐} BifǴS_YO\4;:< uEY;D2hr4"W;Sw88<#ȚO@ZwK3>a\fg^b2PLqh~;X`ȟ;>*% h}jٿԙ^>КS|q"dZwb!;l"8-^a$/θEZ'1gu$g_Xfw-^c{ҸJX¹)T2T4k#'E};Tз~b*>PĒˆ Z.yU\Q\XciocYTl_Kע3vskO,Zpl6cA32hF #196jN]'*"Hek@C~-D9@]6Qbi!5U;M37A mq>*wwm$34PYOy]Q};n~>yjȨJdJon'MĮaG rgah> g֍ m<3x{f^ZOb,%Th(P[\[\,Eu(}a0 |>Tu09WL]aS# RPoD/V'iJ:[H6 5D ضP ADҨ|g>顬IV':?-vu#AwNb/֊B-tt!zoM["^koWh^}(Bz'炠ۤW 3ҔywA+-F#Zou͗Gͭ9[ -"I_2^czgSwt$^;GכC\ѿ3>خe%-fUpduxj F7 ^*~ѳTsM+o}2)"W縠#9+4~H$@[`uO/IBZkmz{}]pZ)H|N擧5hzi 8Ow$EG^#rx.  rz{:D3ߊmדq2$#X  cJ @>1aǭ_ڒYr=dqϜ?{u9ziMΙ]TaxD} k/LqHͤVlb)P~IaddtR,*d݈Jbe( VʌI!0/]ЅoΔedT#زD'jr`+7PxxQ xb[|Aؓ =g}rMP^5V|46ch\ @Br"S(;\^oQ#$Y9H`-!>20||C+dLd# -xR(rҲadMмix{i?I LRTIƉ?ś2hYk [ٞQxn.4s e,C;ʉ@\oCF]oNM92BnN>OvB´rub;+*^MY7o02l ]7yšwێEn?7۩3e%-!YxmU ?3hZ4VL!zɶxM&Duu* `8E H6:'OStE۞UvX+ L8ͳ2EB%s@Sq4uV|!DcچxD 3 f!ʧvI #ϧ4sYK9B)sS2Nwd1)hBՑ ,3vkȠ5/݈轔5T1Hpщa pLv\^vBRn㨛z>)/⯥^kL=^W\=Fd G:Zp߶SZؑFu-S`G`Xr\9dTs (YYM|/T97,[h7͊/er}JTzʵԷП.+CoB6s m^GgIrI9zoꔘm:b#Qlfd󧿌x)m9 Bu< -r%4>_d# .M`9y Uc"7 RgLC.8sϐ:'Ib#0[qQ6ȭ Vs6vDy dẈiiˁ4c\V) 3Y9JOyK۞l W5gXV,ۏ5&{`45F^mo )$__p{LY۩12Q6gQp2WnXڇ!g'{ ǶZ5&U &֘61CIJGnF+ܪ%Y !jc\g j1A>6Byyޱ.<@4c䁝-/rG i"v-Wt݇78N"8L'>8 '2j>ۭLF/zJP3Ww˅JmWxmNYu,A5e!S<p Ҹ(TX47ٳSANQH0iW8qm|AW/5_}o`֚bIG!J3]Hs?UJy\RI:A% mJ4ַ|#/\\h8> B~3y4ENC{d*ɜmBt+f.bnϒcp+NEWe;g X@5m"Xm K^OÝP=x,(F z&F ɱ&2Mɵrb6clAqJ}twxTG(ʭHk3vècd vŇA '5x8B[5$XG(7UXCO*LހAWbttQyy% B0Y7ᔒC+,c-ަ0mP)ZMA8`ȕG؏lo_ATfTU ugELp7C!oasTЧ|q~i216FiC|Fp{$(!bwjvv2lZ; ~qbLKc2>>(Icآ@V]m=&$~غ`2TߦfPz*>:Տ4֔(uᱟ2OX;R{H%DBMN{W͍tTڣ,avgƚ:d^f,5 ۚ:F'i{RV21Dzk@VD AYO 3uZFjfaXH{?6AlQJs#[.ƢǶ@s= C37r"q!]ŭ{YNR[Or mҗH#Oq?g 20r0~YG;> 0޸yK CۍM_rnlkGg__ uqYySlje,59;$1@T[lf,Y_]c#1^q)e`tpVJZAp7nźURQ~ 8޸ւDAp86!dIt-GSc(H4 s$kwAN k_N Aks~ﮊNM+w>>Mt&Ź /|vi %& ,ɒ:8sF@n߃ D}z@g%W4P_D"㸁c>-N\7:aXdbNS_ R?y>~w~n)Ɨ1 hZOt5.ʡm̃JytyF{mQ_1|eN$ppM8xf|Iԯ4$p >cmնO)z`F]R 1GᭌT)eĻ> qr; P4 Ab?yVJCfń[hFr7]{PvsLޛK6^6ywET=|LBgo)*7cTvr^t][?GN'^em|zB1!n()yR4Rn7(:[G"GS"8dR]-`SPSqz;iduKy6\90 W1&s'I5pRZ|w]= :NȎ2܍4tS&;&U%4h8\_iR=c'7?XK"N;'5zԄۜvC8ujO•n% ܺJ|]Vgf# .urrA{"rm=KM<@]!%?P "i 5]͈H_tO'I0D#ޅ9nq}tE34߂'f4睯"=(&Wf0bAޑ TT/)ܷvbod8D7~QB_XKYtZ4$i&jԣ/%m͂W])3)@iR]2@9 ϐrSπSpߦrj#VfHMJ NɩPlq ~hJڎ1sTi Kbu{D͹AM 6Nh¢Zl)eXQA:pQ4n|ʡ31c"m!ޢv"@aI[җn/⌑؋Cubv)J%=O]Xô<\{o#{UJ`):0N [[d2A:؉5/eܸ[|v_V07a6鹿FlGDb`%RT<?T2\)@ >$ L}VɯR,PYD>H+AAV?G皾-⁄ru ֒L}F%|uB$|zbI!퇚bאZ.u d*\VMB@жJ t.T՛ B߆9a ݞoDS o&V !X*a0}a?+Tdho6=PG- iW?c߁bu7{ִr̶5(89qpjZp+bTirL[2:اODRUbWc2a, $M qyJqy B;?x 7MGT7mWG/+$W`ہhg8= #JW|zx@^xZ,;lp>\[\ԽQ(zy_r@G쒇D+k Tdf㧿-8Ɔj+ |rEK>xig=)1sȰQҏJͻD3y੶¿be$~od2h}#&O L9,&3m)KFXJNwJzDጎK޵>DUhST'WAәGُWDe.BIWEH5X;\B56lT -)J|H0@M&n M;ogab릑\70s ߚrlj:@&A1_e r,`X)%g;-riDɮ C㊌+V $+Imي51ID{zźgag'QD*vӇ }%vCAllN]um' D0i~2_/i~j{8a#YT.g}lfA&u2Ϗ@ %9ʇ;zBe :@֢miO\JYf\RZ?ևK>%(t $ѪýblY-x41/4'QEi1Ô؞/ OVrfy6^Zr n Òr$CPxNֵEDwI{KOj(2} s:6`IZA%sqA_p)M7M&A/yèF@`L)JDz!|ΊqH& W1;287_;Ӕ?1>>co1c+d {ib&z }2QB>lol}4YQ@ *ͪP1?0~ϟedVbidIٜLhܬ4L*jb[PyƁsg໌&sCؽ \S7#rDv.Iڌ ES5~+@'>[~}=#odptN' KmӕRdB ={E.lr,zPWs/v7d/=|=@ϢTDR|(讲k͸@ PM3PFZǜffM8xfG}8>"͠~I`,q?3)W3 k$v٢8#{ 1D$CY*}Jjq%/pr|Ho%H'弮`T)T4G٤uvpjt%u{Ѥ0*k[ڝ鸮bJwCI_]Q(TXjqq\mvp|FCߴx9 4t}C_nϾ_=kXR~V {^%Aʭ@r(D3vƬ&Ń l; T&؝Utb{?0:q1x7Zgƃ|H#ءy~wD-!<)H~P]&Cc mYoQZ:-w He"G>$~#ױ/;ń13~j]go14b8 W1q|``Gܳv1m!{+ͮ WVŅ.:׶?/c%jtHZŠ h:^1J˰ڃ՟`p-iu* 9RAanc7DsAptfi>ZBuQF)h|= PcWk=n*v–"ؐ>„\K5/S\K"0¿fE_$/ʡVrKֆ;8"Z{r PSz%32ŕ:lrr3e*ֈS8g!lB[OIVh}ɶQs,^-2e?+~$/}:yE[̝?%z bN38pW!PaLb/٪0:+S5Š~군T̉t tlܷ|/S] G1vNԫ(QxdLb3 R>-{2s;IHgȾC+Uh~枡OT[ɳu1Q&J W$5M!Fq$mE34 ZlzC&xh?뛉?G3Bғ)-_YEZoܹÇy d_]Y@+ csn4 JQϊrͿG6lT\_ʉ*4A|: [y=)_AzW 0IRT&Gސ{auQMKVtM/ HUAr=TT՚˹&k V2!;N0`\Z2<4;ڧFq:Ws:VZ(;3(!>z!Qb梳VۮAFMr=#\2 ̾T֊%q=ߙ@ x~z(wo]oƢ _c1eTv{>Vt/[NT'd]uq  oos#y h<{ւ}a[D\hdм4@z]pV ;;H)gchN>qHL^wh*Q.v'*$E]e'g7!h-n<›ʊ`!^P3Z2"K7#5w䏱?)젤,h( n u{~pk?;c>^ɾȁ D͚@/vdZ!InzmX9F R\3*gp65];U0+" T뼉MFh:jدpMjIŜ/&e|6ЧCS -B_2 |Q5^cN ldy# oc]PMN={ TvK ;ۛ cny :42E3eRN39O v/H3/r׿gw)R!/i:o\f&ǵ 489;7oI/J~#{]協,&sY|-_!RY`j_FrEfta^ϔGXuwZ//'m/+lFN_[Ԍ6Ϝ-$*{Iy |3=E)-gcc{pt_w^"z]"#'@:eHE쫮Z8'oa>YJWEkOne ZϗۦSW~@XÈ;dNr2f`Ǵ[rN7yLth)%Ewḱ;\nK#}D8Oק$<ak^e +)#Vae/ #53Y`U! C:˼CXzHpMVUub偣z0H\ڼN!%^7ySׄU1i1٠xˡb1ً{2=+@#)Ye?pPl1W~{XDy!Elf[ykT:ucSxinH،ZkthPA8c<7iVLjҰ6]U<3kqqtQl 5qae~L?aQRwuέki<0)LuL^?Wa9:*&lO\q[5znH}dAm Z.=m.oUd/T>ĭB[ee!~:5#X{/Oqx9yv7~_Kގd.# .#PǑlz>o{`r6 zk%]%%aZʕg dz:-nG :ͅ K1AV|.pks.DnggW^t| {-Vs8< WOM=XvQn1_՚y=D& _^|uFҝѝ/g }`TW^fĶǜ3vj9X"Y,SWfd8tO ,AzDH!2^AP1ltU{ntd22S Go\fT.'x8T=-Q úe|yJ+>X,!R۵f! M5icK@ uEx1@")bþuŨ:\Ku88 1;~Wl牰 y4B*J6McW ;q,05RܚP ސ -Н, Q^3#|[ 9="MxEJ^ZPeנ]l?!Iva}/mEm@7 hgJ4nLx }=.Ƽܧ;QǟgS"VMVZhvL+4N44"57%AcL>=<5tM!|rc2]SOTG~Of?B*#t;y.x9#sU`C/EMUg+qI'2hyAyJƷ\sq}Y 2:Kd&4u7'd3JŤ D~@]!'|9զ$8Rȭ-@ J0ベ4VεuyʑtfzɃ*ԭQR<br+c{xN4m)~OgtQҒDڊ~ԠZlhl9N??U6QbwzʕD0Q9;_c/^46OBnI&Pq 6@U 9"p-)gH}M$zy# /!ow27t'%8{]rηs>.D@Od7ca<>.Bz jaeGNw} /[L`o[q3g,RGqywٶFx2md\qj͎0AK6s~ܾ^HB# (L4y4Ufٶڮ˯Dg[ f#V،%鐼,ЦW0"C[C D,{AR|4M@>w,v;(mh}{3k ˛/:PNHSx*AwºMSXbWot"e\Wڽw$`'J3;acOf&@1ĜQ1'&_-=FD>>qV&t1]#俿 *bv7)kT#T3f+40xXQE1d_q {Cq7aaw%0YX*FplN5gd80BhUm@>Y>{Ġ`QP ٭ô+fj+#e Eb<K1R]Za0u9.d Z0K>֩\w$4CFd{(;c/ҭF47-,QaѪ[ͶZ¶›opXѷ-|l }\Kp*J"#͡[LPՁXX"hTNM@چ%N"z1)HU~I9u(P[]Th{"4cί#1lE"HnQ#ܨf]; Q͑:r[ߨF{p;@A\ϰM:H >|Ae @r//S!At̬s+ğMkr隥sNccykgp9ևx-MAf-9|SirӍb%E`d/vWt 'ʓM!:/ۼip`!t[_ r̫+Q̏a3<2+t'@T6*`ge\F"ff9<8-<3w~+=#]%3`_)";x?ӈ>NquHo0b hx#g|N=v'{94GZt`|p(Y"U<%#V1yZ ,)#^Lr+Ivq)$WOrQ'q'$ԑj `!M#Ni餏I1h,7eWɍO n u]7ʾS1\[1@E9a`d "b0V2m>l{<)ZOԆ[wA A$򏸭"N % Ff$A@Dhfg`!²0UW*7L(3;,YBK\8ge7є,96xrÝu5Rk BEOI>DBl!3Rzf `g{:~l]~γgvTTϨ`+{HղHMmu6{ "MUuǯm#WntWėY]Cep;wfe 6ezD3hGdi onX Spw0v u<w{9qX ;[ؾz}Gځ(1CCC Xp>^B'_3\#H@|9uUr0(1I; W$Oߎ6&d"ұU4pkSUdp@rf-2 ut8fBCpR9 qťM6~ ն7,8 ԖݓlKK+H1i|j^c n58&n@/10q<٠Fdv ;uёAz`&5q</}0m e!v7v+o15g֗EUĞ4"6L*YE0L!yucoy|H!ֻx a}Ը mϡH!Lc1RfPD":6eIapk߉!ev/CثfY oVQꂣnR&Q#Hiq{#JcAO۳3v*f"_;Ѭ0F"U5t~WLTPxx[GK֋(%&=t)*HB7:2'6ΧwK9P_*mۚZ6L<'d`.0@Fl )\ZhzNӘ%fտq\gtc fRB*ł r/m8UjGe;v4(D X[X%pÂSF|i4NO -MCurM4WچaF QϑKT]71B lg.ƬD'eHLQܴֈbP|zb,;q1 ֎p6`3~ `}x4f2it{\{&΁dtG.Yǽ,Z_yJ h sZa%֎`g-i]H,u|-:Hj0ufmG^P+ V(G97عPQbH:c)yzvuÖ4%ɑj %SH6:U]}Rt wNfZ}1BE$h})%c6)u|2Bnf?ז+p~F}*b\(f@Nz:a4UOKof5:dAgLR{) u:8ڇ;i̺po,8vQ dK~ә/҇TI5n>TY4n<jhIrќ:W0r`UM;Myݭ>T48Rqm4ݲ+md](4U)Wi∃lBсZ{9ko: w{ZOfLnbC<@k\^wx_=]D|Xt}BvuAQ,}$SޯG(a`'!Eş<?yпf0LIs\KKLC5 H 37+^VA#N4Ҝ=+˖oV#Ʊ7Q,%1g?n*^*$7OTQ>y gp>@H=>T- 呇qhtйt*as?V: IgoawZ5{?=,DlM圞+yY=dY>%>RSԄx`,df{-}%qׂ0v({CV2Ql/ `2v::i;vnN:L'6~7UaY۱M wiTeVLG0,ېhGvIWUQǬ߰6O3T;v +E׺#tn%:}j&m_ٮ3̟EO묜<`s.R%EA]4!Wѭg]B+IkhVuz3`M՗?=D Ѕw>/Y?B@X0C c ~r4u}0Y )A'A~Nz?{Nt#?^4(2%9(fpG̱(9ʐcrWw!{e4O2|zt*#9$L쭚~_8`u4n5_'/v2&Q;ͫ KdWddSSA.6aQݻ;18fu5 lInmIۑ%_`)On&b3P;C[55KU~iMA@T@ lZ~j@E3ЧF43ĵ٦1”N`wnU;쇘m)Jd'ˈt:ʾV% ސ\ŀjAXDDYc aCMN<3;bOBKkb́dۈݺ@d3ּ/\UA+QrhLAAYl dqsw'{8`t2M04}?vȥQ~; j g@}&ɩ:t*?1Y4oJMȃ2ޑ҃d;\[+HwC/ΰZj9"}-ZS}Bv:wu-eXlD-Kr[ƒ$o6FMd:{\+mD=͗}J^ZY`:";NU DzgAQ(-Ϻ̀B8.lsr+zLVrc#i09A)^)XO]Ȋi;WoY`d|Gkًi%(ŭcՑH9]ԉ?͹E4VW[i!$M"˜2ଲاk.bZ#VAݘB?aJ  UD$P9ԼFM,KtƪmYǓV[I&W#zP 79Ba,F= x1[]-4G6b[3Q"ɃH{o.փ|C+S?^c$wh[Q̐? Ef G-[_;x\,}y'" {G:w 5LjP\GCzKa u ,dlC0iSR?>J5Sot05砒Gx3ҦϋO3xF'|os-,]OVpډ>~_2^0w sywBz{Hhfl,Rrs+6Q4[߻GF5e%O-’~Z) n!SC1kY87,9}P5s7_7?Kh_?hBbM)} -x8~)5S\XcRh3lrJ Y8AI4lV߼% @ Es{KI.}l)9`fVIe-,I\^lA9G/7ۑ"t[>\k=أ}˺w]e{kSˇ2OwχvtH@r/P}! Ufq^&@f;7-+n% q0造`u7W  IyGvP*΍ ,B+ѿ!gN?:ֱ"Lb?*ו{Č&4D4GOkS.Y_qPH7G-1^ↈŗ(x̪-W=N$U5H:)'n*|HfW8~ʯywXwd.i"6,RCBA [۷1u\eVZ U O@v"z[6/y8Ƹ{xf]K*- /_|/TacJg=:v,#  {O6-탍;&(\YA_~Nfד醵|9;G>@T4{SڂI:GE)6F郋~Iրĝߘ&)DdYp(((^ؕKJģvkv np1kNП3 E.",_Ed"'wW9R7m7G=-Z,[~D(-(t%c5$JwRa!6`u8tCi= CfSuRw>;ɘI_--&?8xC)y_UzBJ~nāM K<*@OJ OWwm<b1W.{À oM]yYHO1#Jm)#=O/^ʨM~uzۿ̫QFʛ<Ox;05Z*:N^V@&yEjCT)s,߾ #ߥiOFѐG%MhV:xλ9+|r)+{ə9ISB0&>T{ÜnGi|&x`>vV|ȁY9NiE1cS@U*3؍s5Z{qՏ$A/GOm#{қ^3zWd4Gg\; @og5C0VX-vrW)&x*m䑌1\pbJ S%ʌ!23K6Afp cO,!³{$I$&dfՄӅ3ͧq"p&e|^̏s8,cBdJ@֤xF r+#94(3_0dWO ;5+ X2=15 U![3`~ZLii:ӵA`<s-&+xYw}E/qq^JFZrEK7dOgrkLn?,ݐ_ ؐʣi{~?6Ϙqq,+1P#0Ű}oQP$AQZI!зE2my ,x" YNEQ>{)`_~42ut8A.FGdN0WݟWK9KfRgҡ+ >]wP\mω3*نZ+_")wlLlAo`zؖ-g S#"I_aP7`!Av;ٜgbvq|5۽HPW?ǻ_ iNdvEibQb,"ۺ#^@ˈl>@˿+B5 rR[6,{?a̢f F-!d'Y$dgrz۝dE+s ;w1U UO1[ǡ G w{Л R^R+q։%2>.ΕܰszF )Mcjs?Cca+(DVvcUڢ:0 4ӬH,愺8)lZ.1~%js 2Ġy.DW[).9,Q!j9ɓV 2wg}%LK=.I8v-w5Cax} d|bg_Gю=-D$gRUXFv_L{Wj~xKdB>xt3j"4H6&Iz>F0CgxM4OrAqwUbD['ԑO7 (7uRvT|K4^bV&Zӊ"̼'d+fOąZ*zJ: ogi< 4-Y#T'[oWPϓs04E*̴­P4ϕg]G EV$27 ѝ%pSYݻy<޸7=@(A@`hF4gn|D jOi! N eI{xPblus9 1ڕ̋ UnxЦuXXLwUDQF P!y?'Hn\M G.F-O+)pp,)p*<ȱAJ:ݓ3ځR_>UuT(={ MBFszgcYFU|mZo*HL9OJ&H,[dQ_$ ƒ2թ bYcnH,3Ϲe-rom`غV|zHMzr6ɫl=G^=sܟi@; nW ó@JLū)hoGϦD#J]bRKWPN{O9$~ׇLFAMD; y𢅠;n;7.L̸۽bb@q:yV(ؽHj>0#1 y[bno5I%l +:Qv010g⾧zvNQb|H7# Q_t7|dWS}XZp%rЍzB`L[wb]x J򣟉2DY{^M:Q[eWs{ L&츏"qA9)+ (yqKNaˬm6uVA:Iԍ Q-_F{ƪOD|.@]OO0Ɛ|]3Wԧv(ZsP}@;kh1Sm/e0?+L13_g9*o.91Qa2MYoz&k@Q}Gmu_d{^G=H VzEK9?`vVSS ,!پ mS5=5nѵ Mod#,~>WUrG< XDB$.Df+nH́ވd:R ?ztnLrro6/ދW$Eduv|W8WGCYRyC}9;[<Ի:oǑu)MdqJ6URV7s[_wED7bwB@\=ыm=[ ?PAyp4yF/{^hq qZd@rx74DZzw%Nf.T_2AT2qGwͱM'ݼ +[5@ (:~# HskR=vBķ>28it{a?rhH^AX~iatސI"=HEo@x f^Bcã"ߜD>Z ?gZIRɥ Hó{cQ zU, ` #btep/>ehV!GN=?yÌR Tr N-#Mҗ(orM FPʹ(&Dw'W%XrJh\$DL^>gf0޿If V8 |+^>&t/9\ ض%!{ ieJ› 5u7ۧ gN %ɬ9~h;ɉR|=C+>1kj;0{2dGKl#;?hY CVݯB9CZb1J tvLL^-L-b;;-]i.'>hEKEЏw4pgXQ])b3# g(b##BǶ1?K)45^Kf #n jjkG/'QÐpRAV]Mρ`Fz;\O)H%S]߳ gdeh]??)V;r+hٲLb[Dc|/\Km$$gz>e_ʢ5L)13]e(#7KSfn,aXTma5]-"rM׾ ( ã@* $^#~MY'Sڮl4CvBOpA{t\Xb(n;F~'w HJ U+w`A^\ d|6=a}ZnoEsCٷugM-eUCw0uڣ +6t5ѝ B f?=cJL~d&2w7[汪]2t^bK0n}.;Gbc!.3jv(eM:u8cm.ikV O`]5J,?Q^y6sqШPj!eJ\ $ oʒE?\bu y41cۄhg{i[| iׯ+Z361Fߢ(jnCT-8υlY}'Uoc\UY -`?apsO\ ׬[2մ"z',3*d-흩x5ڲ Vݕe+ p{ =h3&XuYge"Rz7#n.,94pi i'9CI`Ei:{n[y`ִl6-6+Q ^H-m)BJ Th9JWҹڕ:\@6giJ$O3޼js"_hGӁHZm(8_ZnK# xln>~tږix֯} ! ^ZF;fAOq?J5(5R xYNÁO+MZ~aOt z"XM7U U.ނ ϸ̄tRY\Zhʝ ԭ8Y8^T JX;[-߯v$W8gHGo'YP~ 2]0ѽYdS94ģ 3*`Sk%I&q_NaZ'!QR_]^70?0j\B^QCe6hS}hY A|O#K"ع?vmgߒ YFÏs"EX?PtdžRs>SN ~'DKIQfYyLذ@1ćjc#A{Ф1]a$.*mT(YqneP`V-؝հsd(w-N%ӛ/NF)7p0F5j2~kg Ga|ߓ=nOe^@Г/uYEf/L ˞`EdL,IT53BKÃ+OR4#޴o;1a-O軑6 LG۪Nz'ӡ'z9av#K@0w<.[t$:( @eQQ (6u+^̬wq5~r1 U^2h<|bkQJޢvUz5}]0F`"ٔFS< ohd#?<;lgCbэ' ʥUuW*".z$5Tĺ ixG2Ţ0K&߫eWn/o,t+0S/#@C?XN3 `W,7(QFۻS|#BE&/ rWuV驪gt,r)ː A U2w,/U|\vsfޜ`y# LIi-@ ,x2Ν ƤcoЇ&s!iSˆ")ݼ_vBw/ad*`IQj^S0"&xUo;dzinX>M&g~&j)#lfF@Z݅d_>)V!iǭYFp9P!lq^h舣 Gs@*Ѭ')`a؍=Qm'$2JQ ?_Iw$)x)\1|J4JpeGyc"DL\-Xs->@ ۛEsz + +<s`>]4aT˵^Z…_7GB,:K0SS>KXxT+[VUK*G ًQ]A>޽/MQ~u=+6#&fp2hE[r =ήNAƅo!ֽ9y1 %)%˓l4"ǴDtH;{5Z$4a3;W$Dň=} lK0 :b%Ԉ~H`x};7Zٸ Ȫ>b;j7^NAW{"5;EM_c* =F,On[1}q)>! _%Gu+ z b8n$œkk:YbsHqQhkΝjc:+\df=2]Z4$p,ò JW <`AwTB.hV9aU*+jETsj`Wˏh᪺FKh6FlS Q9k'Y H9uiYivI1]p>tl(9o Wunqsh/_',)jlFp`-'BB2}5Q_kR+ssf%Y~!˶xjRiMYLMc#r+ST;y?_p[ڹ Œ)m57SغlI;Ó]pj31kҔC=r %˷y4<w֪͂[FI_AT澐㍬ [޿5M6/w m_V4%@P d͉v68-j'xOCfzUfn&{0dΪP yʀc}n9/xOz~fBuȬ~d$bJ,\mi{Y#|g7!Db>VDO1}5<*hY?C7XYf$9!R=276@#y (xMC4JPb^dV|&4xJwW2#1ތW#^T7:KmPvD^+[-RKl̳Ll땄®,h >[YҘɣpHЭ*%|/Zi5a3GQD!  fZ{:GyJ8D1պ{Ix|cMY7۸?ZE&q 6\ejD2sQ">p+gfwqmAAMmN#*8$~ctGtIW& a 6$m!喞5s_J%Pρ؛}cZ*iLlw3CPjɒ6F䟻Jc|7bz6qp[M,D2orP5|>z=w޳<Tfh-x{x AA 0F3 #!+s $:[V<Է=[Ni?2_pV̟O'д |g )U`Xp4BW=%R^"?{l5i8Cik՘Äk $,oDb|<%yvRunBVzNf!qXd]f.lj &jP~]R2>PWpۄmt*hN׎OCF1&iUf'Sgbl1KŰ&7ۻS^mhj[:vJ dٰhdLx ,r4WM`Zoyao[Gdg!o:ZtGR$]DIʷXa޾f 攑Wg Ioh'Y5]W _!H:E]JWy 2nq݈!}0%ՠJ,re*1DܱR+IW} Ջp10߀@dYtTQV7B$iLP-" p &|aA\] uH H4crBQouȾ:zn{¹a @)6^ *wS鏦1SB7p<|OuG7Ftr&jJoN=Vٓ8u}N4QAR:w;9B7b7N7Sb'f[6s9*o 7f:CVoz- Ab -bRJlܧLjKnثC dhD+,J,MGK3*Oy}"Y{Ddkud~(k;Y/ g9|֪am/6NVF'Ux'\ Ӟ+%{ #A=N^{(ܧ'ς8}RjW8U=N]]^ic(vÔlWhtme_L/wt=ØD )_rg4nF٠uQcڪk=Z-IPP6Cu Te~Fqm9[~k( lEMpC@, Tu)N81ߢS$`y0#n+AP,J&B3a8wSU^l*Pw/PaYq㟅J_bVuUsci>MMUyO?3D5lЉK><֎2tߤ.(<@c$@ NƛgxqHгm;GUanjd`c-$HQcWB&fD:CNqqi1: [l2 U^yOnt/I֨kwu:I5[)ͺv*KĔ*z=l`Emp.3X3\G8+'\3  LjQIͭMcQzGP?5x3"|I~Q>Bdj"JbQ v0p髦"=6jǦ=woԨ ,F KvکThѣsahSst‰) uvqXl ?Dظ F!N)PǃxmHި|R7YN~*k)]{+  BivN*>M=Mp@}bsz7 p"0&HXRz9G\ &YS`MC`ZrtGz<*C2z$'IerWn 8H[ZҸ(o;˧֌"G. ΧW+V55+T. ۭ(czv\c1=˜H96¶%XFL-f=,`_뵵ۿ`r=;f$TZk$iWc!VRmz*Qr;5?>%ݥ>-N:P('d9I[dƣv޹VZYwSc$ܺ92"\R% J܏*K^+dI )3C0++ m\G5 G{L?ЛsXF]zUi[ {WB<=T iỞZ)Ya}3XZ&;)b̒Ƿ V!CءF/f0 4MVT1S_(uO$c<6]5ԓC[HD*7޺Wm$ƃxKK,l8BxaL#E&D-y?XA Y]2f^UH9Hd.3ɫNFC&Sߩ|=;N,]WU"bj+ u IAH.H\ؔp~˶;0m e7+^{'m( "*tsxPy@mP߳~ !!3(Da`JU,e6J2y=eFyA1f"0Z2dz$]u?kE6 Z=fu0 [_t~?8'ϧP96GUTz뾩-VmSDI %O7tV!L\Mpݚcn!B ;<+wb$ fW N8VDtZKv2g}AB2^l/_4s+1Ê02^KRDk@~RUS`?k_FV#:% >Oʰc,8,dՖu1Y:@IiAψv힯 06 >IU 5 c 7&\Sɼ~b:;ԛ)RyuV` K,;>J^2Pt"bS&z8xU.C9 `F1(*T `l7r"T\y=X V;1Ϳ${,L}y5ga_ T@bK SuY; 虼iQ6FBF@V|<ӯeEI6$`1/D(S&t?Rqi/-W \jjdiWC%Ni]uwFNҺqwdOk5+g )EҥYrД{?ov!(~tuhFV'v ^ʩk0\G6ݥ)BѠ׹'["aDXқ:XOCp^FN)G!]ꋥ}}``5u}DGv69Ydp2|t ] 0emq$~fri*K5\nVmN5Gm@jcZJTʎb$;K%?T!g)3jDE]X~&҂5})++:8\+=(,E) SG)Egr>``x߮'WJBF{- 5mtCy MUKXé =$}A3W *]RÏ$]B"Ug0fDK"Kk_O?*KԚ`P5=U.d l%JPzneFfd[}#nlt,<g8xIq`7ظۦT(R[a}wW΂W~&L~Q9H<"Y`c4_][]Y{М$y8  T_+x I7B%dK({17&4^|ePa^V8C/T&6M;OX-97GÞY?V9hF#oBtզDƁVp3BXҾ魬zi" Gj3|#rkI)Y4vcmŦ{ЮW\-*wq&)nʲ[$aaCES&~ٝJ]I$P4okmpO>'&I-R]QIO/#~K-V-U&:f<1G$ }, ps6]℠UZ~hLUmfwվDlHXFp]9}͇wڍb:Z=8(ۇOÜ߇k3sw*%|XU\<@`J^7_:0+ <$t߅f8H3ڵUe'fVqU_=9qVe$q*u=>{,qTgw" /͙ j|K[EkWe-Q=_7N-ZV?P,Ƨ[[ی*E& MaUkS ޤc6 5(T/Q4zE*F49c"/'diRٱ~t9ыiJHw/_Qtpi`sf;GiUZn't'Ll$xȃ9Fx3p?kIZ`^"oSY/^YH/;&v0*H@~K~^bĉ'nJ98pK'/+(Lx뗃b|1z6$-m@Evit/X`Sf/s7ؤLƎ5٤*в <柏b@4'w&4lfT#={t[{lιU˸7 &FK:}1;A(ԮՑsEo$#bqg-rHv ͦTυ{˭I5ACfqQHಃevL#S=ʇq! nHٗƈ7(MƤnU,< Q`ج-)Ή=2A#}*& wD7bYӳlf74l2+{jg;sA͏S5HJ颲 DJٛ@Od ÛeFf %U=8i3b:y8/T/mT uk' TKOZ@3x0nm1z8[Xy׌\6A~Mj:z{bZ|h yy 3vGȠ@&xJhNYWjIb09+xk/e,ntؽ%^,wűa&M|$b8K~x/hI sJ08o/ zNSvFg5«-E oط?r=u׍JAC_G0YS_Ӏjq0/Qׯ&C¿q9'2bә jk}h5477e%R8xW4p,1eGyf}Y[ʾVv6cZ`PU/t~xXc@عh9 Gs0Uxu@#_`aV%Ndr0>g)·"kM6C`z -7?>L}JE'$cNE&i{tTo ¥ddbȎ ɹBdWT1 ~q\c b? ؑmōLu³Ǔ>#NcR64漆TD&WJT|ӏG p)q)y\qX\qjx%xm;ɐ_ tj%L"rFLu>*d"q`-3*B[6*iݙIM½CkW3C=WxnXdO?ZF5=t""߻r؂2|>O&,lIMwض$t!{ȓ7au !{ oQ{bM&sY}[4\z֭iT" ;kslqx=ޠU=9PO{ z+E)Ow43eyit4,xb bn-nx{|ä]fifBlvo`r2i#i~ͥ7nz"wZXo%~a6<'#!x;q7G*D53./T1f@QRr,Ld;gE-`M BM Y>O64Eq_i݂O߇xDL ӚzG-i忙vTF<nCHhimÅV|uM݌!Vc aڔ)śJDUdۣ贋[a?ۇbqπy>`]>&̯S{ƃ@_{yjsRchCVrpu{2^O$)V0.s]?-<<~E.}wR y0^+4Zn1C?,&\ϣ S_pe,ikM# ,7ѺqX#ij,B̥'Z9 P`tIO/3Elm+LT,E2WoaJ$w- }N"gBR5{ 4W*@5t~;}8pB S[5qtW5; ]N%ĶQT2Eˋ:BH)=-3p_T {Їڈ)X_dIoClᑑ'lY4;+r']gӈ 25P+0̻~"RGZ܋>R'97D~ζxŸWz#&~?C;A@FeqtU % A;%kI:Xm[ UE*ڤ֜ n6j*]'i:]̇++v)EG$JoW8B'3E\匴-+N#PrXY N_dl0bZA3Z2^`hepۖ~Wȁ ؃Uc 9lAٷ *}%"?QoGadK{g_lGfY N%5Sk(UcѰ \()"rSC_5C 䗆k(?J;tlںiwHKGD~F63%@a"!Fzwo~\s% !p*#LU˿NpQi,=mrbkfci1NY(@ mWoHwT#*F$VZ&$S{䵇EN&lԐs|Z|TԪ:! wa}bܒ抽qmz1Q&p'-歃⌗2K:ZwCP: vU/n({^-~>Bj'];7a?lWԺ{лeb&m;acNTPkgͲYR^njTˢTC:ϳ7'pVVӮ yIjk.l$oѬ)D²VY=>@*|ʮgL0}8}fD,ba^+6}Ū#t#&Hщ͚y;"chz2MhrQ3ТecvbcU\5VJ1^d]#YRaVO*DW 9;9短pƻA&Ѐ2mEnk+nn:c^+~1/сZiSs/ ?;$J'^ l1̺:b64>R '6)dagM ~@i& ɋK3p~CgD4=l,%c#oXZ0o A#WVZU/YMj,k$?.Sh0rYtG pIi[Ot \ՈڀP4r{E}ͼlcݳ{MV/ ILolޟ~ZQ;,J jQ{QxiNyWNb]p[T(Mɜ*']Z*9;R(s]Kv@Vu"?Rwd] IQиo'Û'twDEaxE m/ZTM63+t[*ih,7;۳JrV?tR( tRjW AIVWp.dC9) 9CU-ϱY^*Et)AXټEIo峏T -'M dрyw&uֆ>7ӒMLXi߂DSR ~љV/2ofeE_]I %ʀ4S6a3w&k f(G%uKKOY2H1Ƙ+0k$_~:(-: cˑ;&%zsAv@!5x@ ;`QID:`z™Zێnmu>œ^lsy/f (:S_,m>جxO*a.G]P(\$9f|Tsef1@r}[U5[!-5dNw.|peU˾Q ;Js?. lWqf<-ً} +rWWbe̶ƿV\NJy)hs童T ˙+|;sܠyL *:HdR )BFp4- e# 3Gwڨ[ =a`o!X):+ZnAK_ H\w܎h\{߷e9pR=xe` ɝ͔ *07[4**q`{Ze' P+9co>VHz@3b-Ԡ=|Ȝ1s+myA;),Sꤞkz @]`fzhLFzD^ ]Oju,a$^$iг3:Ic yy}gPjnNsӎ5QŅ Rj3uup\݊$*Ll 3!Ăɴi>VȜ1zU5>OKy 61IW5P/KxCqKl%TJWLl%>RivPFGT00hi+t.D2fka)Vܕ~6kf1q]iUJWb҅UKQV埬c$bLb+|U[|$W ,yE_ٯmd(iWss) 9q#0Yb;WɚAYX\kL=&H AゅwyŒa$ dC'3-ݧS1PJ$΍ƍ"S2oqmw"{j6؟<֡y¾O{Ze76QC`f;8-M{_,JXsWB5ܻ%< I*1 ?Y+ILZ'7g` J-_Ijd}[bQQɊU|G\w0?J!`:.sf !pޠX~}=(ItisOǮP$'`cH.pv=ܘ.êA&tB*q-.E<٘ÏeH !!_yp М]~$ãY|-mbFCݡhNG%(KN+b]Rt5L DNp@p2Zmˇ{LWj8)>Oq L+NAn$Db }G#gZ_bQ€BʷL3T5'30oˀ$丨>caNbTx-ŷ79{})byhh|H3S=iwf/ 5~P%"1-\)'}:(*b ܟOdb#EU8.j-J'?ϣ bv鋚m De-\zS>-sӒ fCю;i^*d~)XwR4Rz`kz"i%wsaHx[Y;6 5Xb|:ȞG3yt}S2Q\-K։h!<-N;~C/(dh>3X$xbC@J*_-|Q%No6Ps?Zx”Y̥= JCVCy-0GYnB jXÔ1RՋ45>A{^ ,WWL4^JۦVo WN$2WG_n֣9:l EzܙG8 ;HT6|Utz} Q7i5>\2ZozYe$+3#4b_$t sPzM\miXj~]wXa t_wVv]*, BwW*ؤe~Ht.3-O$d'}+~-# ֞bg%sΪ`|-2 Q6ɰ„(Q>} 1S )f -y)@؏MF\kR۫bFꃍfN/dx&uՃ@`\ ^XP8MPp%)i\62̰NKLmB1QfbS\ɬEK\d9~ZTu㦹셂'GA1ްgZ~7ep73@.3&IdVoH3Wd-.Ch8wPMm9 ` m)%Z^Rw $ *Ε,g"iE`p^{G-_z [8FcYW0p;VSIg%y/&Ľwȁ<՞]FO4Dž +Y?ft4[e 8״"2Ť9׌ХY6MUz6R@3D;yv&Hy8애=-kp=ضpn(JbleZ)Fh[v?H藔 CJڇ z(- |p+,߼:;b*0ٚcv!Ϥl?"A]Q"{nCTg5<\MVMM /S>>g_'͠[L`-U&fͬ ,^7OKhWW5;ڨZIOՒA˓nL?C62@Pg7~rJw h/"L,PȶHX}&yLŋͱgV]*hTDDuɯ%lY W%t1'0X.ءJ3x"_SPN]0 HT̴geĻ[s#g6!%VnP 2r0D4?4/A(AL2T 2O 8Fۆ"8ˇoH>s`&O ?m?i _?UkXzi~^{ІݻA ۄ̞݌m[n[g. (ؠޫ='e!h.D#$98rL jÌyuV1կw_u󊠠}]}!椊4Lg*v,>5@k6sOEA`Uٙn?O'20|jЅn)Ԩ"J2u,8f]k3"; K8U=7,hA]iVu :vc\AX*`t x^?=)g I T+ ˏdŕG)9b宀 %^Ҥa62]) Qh_vLW.+9?Nd*:~(?*ȟj@3#;Mt4ZR6U 2<&[Dq-x/JjReZ2f#e*Ǭ]i& pyTpyƔvIQ[Jª:JFh6|o`%χ +JMc1Y.hz TQBVO@LKˢ(#507`d',-:|811T=LsBN-aIsv&}~'?\ _ {8ӑJjx\spή3am~*eTA̭FTK]:ts诩MR1 .|ݙv qSl b@\j2&#F&3Mߟ<56ܕ7#R\s%x*ƀ(˰d8R@$Fv<ߦ9[#.'P et%>gs"lfP2w9e^BGb 6LN_I2aQJ,L; j%3)YIܶ kHoz_hpI)CVY6&*ͨg* SԯW%fr͍v#U)AHZI(4]|ӲQEirS{#trP Z)9[S_Ƈ# z$ G[yC9-q{ݗI(H}rDkM]LSuŇ__Gt5JA'3] ƒ{PqlvrY$\4֞xq ,8s5@ۘj}|ܲ gHtrxʌZ?4N' cS BxzE0ͿB ꚇXW %1z?CH54}y z>#:o7 fϔguߎR4>!a sQ-|Z17ue(iӝ_PzR=f|`Hʚd{h}(ukrs=&-o$ͤtkW$W8]h&|"=hD]D젌puUjf.npyEh P 0z:dL#y+M "aJvځ$" qnV'F!IV4dD*邂 w:rƄb~~Pk =fRF9{fS>N IFج9iO^e2_,7w`i/\Q#xdJ`CpwU+-%XyGN_cRJ2Nj#4>@\t<9Qg(}قjľnpWck!T[!FpX?=vcIxyx:*nퟃ dz_dJ*RV~9lʱ@) +r6Ж\l~CVU71[f4p)8/Wak,}2&9ߍsRy)RPXeu!##83p ~'uBD}D1YsY!..Rm:,(#AX!% {wӕwrkw >$YĮqxTc :\!\V/f/A}Roi*;6TٳAs*pY¤R&q 9?yWrW\h⍛&,R6O|C.%f9& 'l(.dX eCdX:,z>K:HSu /Wy ? h ۫#/8`tm~XY3}"f5 ݉Zxq^3j9ϘSZ]T$U0?i,?=jT#J02ܙIRT2VY.uEew'/\B4~{jOXM<*Ω>$}0:g װ1I-$oRo擵<g{tajɱKb=)V y2_S)>&m5EOv r- F\map)p"I*5 +JF͝KIw0j "%8XN"񰊪b Vf% $HG(rMՇ0хNIc1!H ׾C'4PZxG\^^2M~⨥^wA\ )R"{8>@SUh% DeV _b.#$WYGm1M[i.U{e]/F~iD5Z~3Z 'ekR6Z= euG LUHN{O&1\Fo%7$g`H4s<_$Mۅk6"'4.ND%/r^1yL+Y*A`BTZj9**Sʪ Dj,44z^ t+ۓȀhȆs(*7OЅ|GǭfyiTryc9/>_7D;"jh%3JF!lk+Ly'ZvsZJyͭV=2xmtK)HM)_tgʡ/f{tpx2#'*[۳Psl4r^q7 {3a; TNGeY~Tg:A qx`!; sj6Ŧ9-l:Az2BK-Q;m)b LIJNXf 6ncbpv4ٺtB ha/bAb.^",ގIx#'ΜボF9xO=5Kw&hfnP|I]\#T4Il OE=[p /џ^>3r£Ҍ%\#lfڏO ŏl |p˵\p#d2,/JQ qkp& >v+wNtv㺭`r3]`_ Ec+} ~"E5p;˰idC!VC~+YpǙK'l/>]e t՟:rlz;$Pa2>Xχ 9MTi1 c9\DU.Ի7~G%rET#~X ̣n( { 1Rܛ[Fp`6 `MOi5of;o*ݜVr m8' Iɽ[nI^ῊT|mډAɍkւgzE^\žj&}|C)%1J1;=1O)2Ge/D)%Q;^{K_'EtYtVhAпU3ݛ: / ʼno4F&|26f4eH$`{cLyVH^'*D0k8~Kn~Y @'(V~&UZ'i&7%$% nq뛱&nI(sPSjb5֙Lw4_}f/Xm]?X@TlBu-1i+H1孻p3_pj/]Eu K&1h#Yv﫼߭ymjڨ[]D F P_hS-z~.[a'WHq,XÏ:;ЃU ~XHqHʁ`6q9jQmͦK?ت~XEjM1BٲI@9^:<,}/Kg$?KJ yn1w0V7UCFB#‹皙avTZ&w9)xɻˈ=!@Vѱ?\U)M/P_n>>rm+ 'd> uB(]^ӡm߯o :j#G][c~ y *$ɥpAVy%`w1_@ṣ= ]khh3RW1[2B\H1q(wD*ڰ\jwcԮ7oڴNӋ+^{{:V̌Y玽/{mʕ66" LB!jɄ sՅ12HEd }Dwu3l!i\.EU| _Zpm#MYrwP;ȅ~z)-*mcA-/VI|tÃQXo lF~/!"j& tk '`6nޅ>prg:zɗP2Dp3xF>L_7ߐDtpPN[wPsr(bqrhz#^DhlDfKB0l}C.;TsEf>k2T;{_kE8@O__UJv.{do`t.LPߘ)_X^8aV ezgL8B1ȭld/7wFPLV#@o6dop77Fѐo⁎Hymvb`s?nv&QC^|Tw_JS7Wk0 :,OUܢ@>|St"!)ߛ2M<򲭸Rvow5RBKZ[:of" HRmN쐵b4dqk|O[L(/E,-=8s++uj~ѧݡkՅG3^X` >5 UvEyX JW ֖hSX1էj귐Xny90eGr ˏOe"+k!DZH|kDh",GAa :q{ Y}1U朵bT=l#xXj1jfpԽdN9')np|5a&xFHV釡W =hf@;y{pdpBwӡx ߖ&K=R}071Cؽa|74Vu#*Bsߌu;o-_ܡ[}zJz'^8'F_sI78 B~3w4ϒ@޻ɳvj{-PqDfI8j%&@!6C{aCJm ][L+qvIN&RZGe"ҟiiO2Ƶl3T3]PZcهe?_"QDz4 H6k (LǢ Gmߦ2YL<˦'{yZxHB\d؀nL1x|X;KGy=$:sYQev8||l6=@C1,Hvj0*j&ux6qHBVjQxirL٢ ~8q5'w wˠtelQf"p xqegHDea5oD4 -JVoޠA"Zm.e=;pדGGOt*+zhM:N^[j|X& { .hKTŸDKUqjcgME];#)n2# &r>sU޹HZzmBQXAVt]K.0%poHZZ@sϒE/NYi$pk.4T 3/6kP2:~ne ˁn[G*ҟ]i@)#W ٸnZ 7GA4!bkzmf,N'?ēݹuop &w9Z!5/KgsrH-]sP; {Q :=M{W֋4-Y_`!Imڠ T28Kgw|}/k]pZ[c@ GKg$Z<(l<{"H ]ngO⧞a&+ ?Bg#!91Fi`+ܲEt?tt0bUUb!S:|R/gݿm!Fcj}WZ{VV>iIrg 48rD[ŲҴx&QuϣiêHy9B>Jz eaGnUoQ<_Z+55Fdq"c_o^Lu3IvY|HݤAa}nê8]ȫ?:"E;'_1 <~S=J9K[B-p6XK֗{|#$Pd Ll1Q:~6 wˑg?(gmu]:J9'I繚%ٮ;Y\fbkx+mfkJǵNT׫7Jdv}"1N͟8r zq-D!=TL>?z|%R -NS|%l4[t4*Ea#r1AϹӢ8iž04mBߖk63v kJ=1 x؃VjDApw.k;zq 6,eK8D[܍7Q 2Se=H'fU̮bLa'm9*zL$$ =qF߄GdP:x|ʼnEe3!Gˆ<* 51OnJm㴙?D,YPV`5uf*gYMj%0U!+zu0u;1d7Y-d={goڂժ;oiNKiocoS\'VmgM)wOilᮁT rVYf8<##ctG7cw%B`{(뽆_E!=.oN_}sىҹ;!0\ӷNzТw)@uroaWSƌ\+SY&+ۣldhw,> \vľ뮥N^Gɔ@Z#@a}g`[)ݼEeÅN=BM1n<5jMKCQy9B5-N`wdJ-v4 >*??D(>fl-ꕑG{Z;nP4J ,(2XTZszJ3#K*m,>5weE X DaE4MBi7Bz3*5ΒQ,O la~ |Kg4ZaĮ=j:Wp Å֩iaU ؕLuB>|Vf#i#}-uE\̡,[x|LRt/_ Y_@ҭ28#N.M m-8 O*Sw?ױ#q0G [oGs"B~>cA0Stt. E УفRIAMVP4Q_ +[#-&A#o} '`]$pQ+!Q#5R̮!cKwT֯ `\ 0#e8=Q*S39+']TwfYJsjӵe"D Gw鿕KKtvOK3=ɵ wc-ʂ9fI!j EA:TJC1컨ͫ0 @+fr y?t1XT =sXܛF*ag*崔na $srj moYu : ( T\ahB;i;9A*6|YJK؅bo5³ ~~qH)Yrր6Bҍ{¡`li.pGqY;k9tU}rb98vE1WKz+Bq+e@HwbW?C)Sog̘Ԧz퓧Z\x ?@s u1l9JWnfnD;>K$qɊbqo؛Cp <+)1+'j{ D6JNšDyLJ[۹2q֬2kS"6{D{~Q^abCs1C: 9̇+˄[S OWJY%i\Xǡ+T6_yjdPĵ&kS+tTR}TD#I<@u;([6d&.S\f(0#qbl$ ='BMGqSw@wNcڸh|&ܘY< ~ -91/_Dpn({0(8ׅveĢ,3#[Snvb' ASFjשB^sĝƔnM |A/dCD9?]lz*f`Rw7S|3EirщAd@OC/bazv7P^)'[OV4+@*G@6܀ 2xh "0RVXi,bٯrE@8BGDx+-&b &$2|t}A'lf>q 5*Y\ە4rn8{֭%׍eU|gfs&K+*—NR\$: b%D)aȣ)/,zFvv/ޑ-L.KL`(z.Vi&i؀ wlPsM~sr WX3!n_IXKJymUG!{7">uug?]3Do՛e=,_PEql\kQ *p^ jF4U%?(&#t\Jte!h'D?`Ąaw(vLп2o^O?+{]/+OIi:}RlO5Ņjg0vC?$ÌH paym38e숓@}57NFVt~Ũj뢰%8EJʔ:Om,3kVQ.'~|眬Fѳ?-@=53[ԲxBP #(f*>Sot7ۣ\Q(ݗEdw,pݑV2b0.\=y?XяtX2ѭ9f88(@^p$_t򩰻iept*|`w=&0nfQަsB`-LXnȘ] ^j|s],| C/ʵ`x=GHJͨI=%).r"loQ]ъ=wc #+X_\ >.-,K}`+1!7h rk6SD"|86_C Zr-X~6 =.._ylkMUu6ϒtT2nڨ%|Ft?Xa7* egL|E:~2T ONy,mJhO VD .d -( k%9wYi.bHˀc˥TZY=gIzwPV@/XåVAF*S(<^Ŏ ʒIF "9Rk7Fyu׿oa'VSk\KRs+[?zsjP ] `lNm4m?`^äAv=AK;3V.SSjڵH0^ TfTGC vTno Df4PfT WbޅtR; NQKУ:rwhL+Z1rQXL,Kjr}{'بdO9\1K]4Qyq#0Gدd?`9@ɂ^dvjLqqŭ 8?\qfLdS9.߯|- (hhu/{/ҋǧU֎t^2H˳ӗ%}Hr&CgΘDg5ylgeXE=8cƐCFps3Id£MqMe?ʸ ^8B7꧰_,SI hnSC#g̮ﴖ'l Z5{IۤR7X04n%yi8#pV=ɵ^Ǽ\J#)8gaZġ9 =Y.oOv 3tWE`|Fn*R(+FXwpi̶aUG o;)|ۯ|Ѯ3+0 KWd 8 <+P|v:\Db>sD {1ZX'ׇbک4vmʨZaP^xGq-|XDF_"jFx,ŵ ~oL4:5by TnP;15~ɘB.i,,棑+ &/;3|vCML;+;\ҼIVKs_g.jC*lFCn4 M'OPw4/pQ1J/A$MsYsfUqNH0Jv]n!~YInٴ녃_&1<2lʕot6z3H#󛡦̮0q|Qm٭`LVCd9Nd:(L\iĩkHh{ʖ}Z).BR5[.cӛ!sz"w8n/$zHrbkJqnD@^a"S7|+Q6vroG=q2y\o+*u8'u*Ed].2(lKY[(+<+[93qlTZ{+:C.~ܚh7S[Tdlr\"AϤ6ήlswPR tA о\5%HA(p2-,7rHlԀr;P$1Q<>wa*ƥ|zecZes=rW\Zܽ6gO@p:< yt bLGInM>5ْ};}A]gtbSf_ ?n&}P΋<6GqbzA^K0!̤`N]"Էy˓Ӎ!|?Q[acsE.In(&:dmy6SYg!GmV92\n֖NXb^WNCpbB )}S@ >/Ѝ)촊ӌ:[ HP+ }YƹB8\ɓ\@/fFvѻPKwiun~oRţŐd (4BJMH/o8&LڤZHZC@JҞ C[LHWIÌ񻎖wA14Ff K 9E9YzҞh)VZRFim;D9:HY`&'$Xt~ؤ]HT\@ww|ns9׬_F |1uNex<.tlQ2n̺7Ge'+qq/ ;c^㶧׌% ڬcx$E ~c5 UuOLxXB 63CTōдHUyvpT®$nHz?J8LNb-j=ތCk}5a4XMy ;HUW)QMLb&Œ:׽W2MT2S2D4S<'htTUE ]YRmfzJ3>9j 0lmʦ^XG)-d~aWJt'<=Ӝլ5 aXPϡOӫӃ/xأz[JF\k/Zg=qF}UkO?(jv=U#5ɀEI Jٗ^1]d]-*!KOzqgt 8j-B_zG=`w#D>kmx} J飑g?Kwf j`0<*e*"C1%y{76K΢#9FpSq;MBEۂs?ʥФRBa6 Ȗr^:C#O,->CIcF}Gmo<\T:Q Ǖ\y㯏 YIF[sMe)XVVquK,Gy|Y*E>ly*i]#e=!S+8׊>-슍!Fw.r),lo]X:֭V,FFi&rK/h = 6 ,Ud&Kh:t#F्Q`O}CJ&iٳ%̇ϱT1JQPYjk2#Nݙ%yw*Fac:L}.zt/z}lG'͋'φz&4Ba(⸓ amdd=Xkă$  ١:΂򔘍>wp$S>q,bRSU<|TV1\-[MC`ۣ1iIs/F|:/S;;eI݊cL .Fv¡ys?dyK̐mwrd42bDR7A+ h-ˑx?lʐ&֯EǢˁmN:N䡺Cߕ0lv .G`:"ݭ]3}x^W@{ʻi.gERD$cV\jn0p2imyfjlb`iZEQoLLL ji3S;pv1)GZ dzY@[Shׅ.a '7濛ڌII80I{cD rxèήδ) A~^3XAQrCk.+LB Œv/ 8bߣ1#w:[$~c@UPЧ>j< ݗҕvg@r'e0V?h-E~ԁt 6D-5w Q4c2YI6tM({Kq7vv?$\^a{2BrޒP@SWA%\*ίwXڥE|6k8ܱJB9ՃA]ֈ9lG?/OeD/@)OueʌU->k5](}^yQ咽7.'uulmFd68ڤgɋE!ܣoHB/2XK-_b) Ԛrʉ'd݈N)gB4=hT)W(veT{r㳼v=Oʧ>"^W(4=`YT5!GqvPx'HƬE[zxWϠ`bD)lv##1qz1b-?Occ<-3}Q'F!wh&ak]EaO4= H)N6l!~yVf^yLW~9NfȫNa,B~]|TܻkuZX˞igp*d&*EIkE53jB,5jϙ0=|ch<I Q *е`#f9J6b4wta8nY=peu#YQ!]wA>cV8J^ xiZw-ey) aJц뼂}CDI=TK^7~ؽ-&7ĝA{%A7HBR7 >kRƨn䉗YK7]u]ԡ?M`;&\nv' Gfwv`lUB$/pr=L MӃW%Q>9X{A%s ٯxk8Fn~,RA]fy;%:Ϧդ{Fj9!5gS|r14{%IkZܘlHX=e^ =1/)C%>zxEk[<'$~4MR8vHư0)馋fK>ܚ3FI걁[wf]<:7V^(:C{G]3ΈlTW)2~E]AI'!B .k:Q|a=Ud(.{xR 2{2X;~1ӈ5Puf&Ә@f~ ,D^Zmdvy 0QxP⡋:] ʟPBkOeG,)x~%@ScҾ&7gP҇.m:)fBckTNvYҔoIu<^,R,s/&_(W!%0F%H<7t*@Ks=ca 6LZ%ճܿwq!q_8*#?AÛRiRuh9uNE؁cUg?F* g& >ݾq-5~F& bhq-l4~!:e꩓]r G6ű.kZNCɔnUNp$Q؝U+7ʰbDIGh ݶGJ+DyF7\v*1O점x YqWCnAśl?gG,)ҏbE&3IS5(7Si,LBĺt/*t6E7w4!&&p;a1X5?.s$yDQ'ׯE6 f%N@l{L .n|$pB?o--to纼\ƅx 0G{ IrO]`Q衙EqiOgFg\rLn?' )DiH|.!?0pfi:3 cdĬGޢM[{ :Iź*3z 2eeh p9Ah 9oX9 Y옓8 ~kv&qewiQF|sFqt2e ݣ̩HQ%zcEOZcS{ X.O08_V x%FBJ'h EWvDŽ8aov L\c1 jf\~(HX)az1S Q5 GY[@y4z&^8 3sD!q⡵h[N'BDb_N^\s_|^er}'=~N~PM<]ug%WFQB(t(aHa%9]E6L8ДYTqa տV1|z&Cx 5WDF}#D1t]&d&ZT=P:7P~5fsd& AwM$ZX \:E ZaQg⡀FFYLVb['H٥V | s%NuJWQ <=ኀ{5f=J2Q k!Qfۜ]jp JYC[o^6|qbL; J]aCvX}j ުxyέM<5 =/thY]_"rID͌5(]ϝ |?Nëz- !XeW^eAt񤕱'镾 D3Pm*|=XR{[<$,>)؈GTz}`sJaY.J_i):T8 jBG_L5k=Z&;⟘WMcYO5!$ezύ1=$ӛOu12 ~bE i(hЬ<3N%%H9n8ϫؿ?>\&@@hKZpZ54}U!,Gهth{l:sx]J6oޜ&>7F$;=J˜ˉ0PNlXރö$)ZWjND?HB_*9Tw>&\np쀇!1p21{f"7|r9V}%Ukn L.3lVBoqU\FZH?͸'!Qc=DыPٹrpΕ#MYLO Zk "IrTazA A8],jq{σfp0zxSz 5pWQ[ƣsfTUC5- Va7KHE~&RMtd$4)ZDvMy(Qk&=s5'$w|/1_(;o~n_냠HVH 0M?tgb[{i~4Ul]M Q(j.ՠܼv!ԃjk&FMe~W \y,Wֻs,Q~d8|SwGR. )SwUe[^L6z2 @Cm7JxyT $Ru/hos Y,;1!wI.gǩNPU9qDet{)@X9C@25RzZ܏K`u]v'W%zi6ۄ/, RAŷ`#ȗ. @ŷΪ@eR ?L"9Q܎}9KH{mZAe@!s g5ᡛt.xٲIa5gѫ!ٺ3 QJ; *t{Okj3['xEHs{lpQ\X_y;)n{KeGs^ask5.(2TQ6KE" vRȶފxR.uSRI'؛P:WD'EhHՙ ?n8:m-_>cm/wZw08QfpH.$| ȂX5SHm2!k ŢۖZiM$BJG?xsE9@q1Nnn OCE9d7xhXdվ% ]6WF0dxRdOQ s]"ݩHS\sAPRWR$T1"ao]<$P[ &;vAݟ,:3CCލ&tS6C\#N]`['H 3@=ba, Z{ːv-(CPnJ!v2(v>ݬ﯆&v_#0*w1X[A+;cXGkkph4 d2m?> "Vv6TXhA=T0yjjqTx=:cA=,$&rC 2 r(rESY)uhh9wD`5 桷taomI.ٴ'f!Լpx7W7ǓYTT&m=aulG AqxDaBݗ'yMEKzYoF yOJo#Uaהc@4D6ۂѐLm G."saѐYgH,=G6fӯ<%H- % Fފѳ+h\2&XjΖrZZKڌ@B((.QGJfmRG j,d~Z)O5օ DԍXW,ůYp TSf9N^E814wsjC^Ob0(?m* Tdd?nDFPABU4pkho~e=INZ笍h+ 66Ob;L|lP|aM]2@mu%3*gGl4ܖ5f/«=M3HPv$a~Scd+6eAL=Jlf U8$v)Mߴ(a*xk*؋W^FUh(l_WDώN ȅ0ϛ!D*:m3 22Bh$J1TI0k{ ;晇2(ΖI]]kOz P jb}FAH) sqw7w9 &=b;$ɯFR*1vzozs:chеd 3ȸM!/MvI DOb65ql2p^.30Zsb .v4K,4/̧"ɲN7jAʯD d h1u"LG@4R!hdu4u*4!X,Yw5l!֪=P2;Uƾk^ϋmv+%N#Lp;Eagق}I|O4!*İ7_1kfFbSQEdP}It&VE~=swp~,w YcZ }{xX)zģW"oiȘjQ}a^GN66Lh(FH:OjuS?&Vq#Ÿw(9 ܀yOYXC9Czz8}_V|H=G1&Xwy8e >J/i5#NBUzL}m=N,s4T {J DrsOu&D` v"*~MntG6a0AHd;4aDCM+)jlWlL K3٩ 'H0Ⱦ;f-/\;n} TMr`K-3f(nb+@Cc'@*tW3*[ps 1c!nb5۩FGpN;ITvȫ>VT}U5 (z.%f&9e~aH2SD{?X)m-k$MJe74}{ϲJ|H뵌 "QWS^J}TUdU$?7:DPmKf#˦TMX,J̷̒X~LJ/MZ-xT:,*s fXup8;ed؈*$hBd,J^fM^4yeTN˳+E1{瀗 v7Y<:0_F{Lf5XTB;OpCtWQ)WM%g}+CE"ښ(emvцM}x5Xu3t#k-ĶyxK&*ߗ!Zim@}ـ NHWɩY| h)uQ-{C 1]֗j^;F_t+ q>%*-ؚ\rW ?;W[> r^XBZ4bh ୮nuQFL7 i;h*L(`J{w*Ȫl[_{kouMwڢI*W|P[^_OؘHH|3O A  hvy*bG=Vw[UTD>j&T- gPJMu 8?$oDN$48J/?i'lkr[=.x -(\Ĕ-+@9gXc/r'ICoN$]/½Fw7d6x_  ͟aDɉH1yߘ(ߨ#QKPOr4 4j)FMMW%j@cT:tݩT{8M\~ =@fӪLf Rk.RMhvV2Qѣg'qdYd5j B#uOx*Edia 8Pͺ@ϫĀ"K#8.pO^"xQWHuTA ?T1^>%HcP2rgB/٧]Mut*HāGωb17&Utqd7`׵EEK?N`>!¾EV>݃j|ra>IO?/Eni4Wk+9PU+vVQ} *9ӲVm,ЉCX`>ACdoVָyg@Re,2s M/=ϖڡHlW"|/$!rCvE0m!y2B,:yGiK sL Њ #z-q䟞vje2d1CSqe?;*hR J4/x6&zƴFV$ d i]-N`8&وEωЮllJ4 k#&%`O%7`I,(ћB"_Y =lYtg_'F&JMNe ߵ.Ţ-5sk}oK4+Ĭb/M܈B NY`o C#6q)+d]-UZbfxW)*N'Q1f=/姎A ~Ѣ-ϯ TWY(ʟ%`9bURpV<1'Qe*a<VĊEH>F+<_5ʼS<_d8;5VĀ=0h3F=j0 8_p0hˋF͙!x/H=٥ ;>`] 'ݭNDHY0䢔WҒXؖŢUիd(4^~STV@tXimQ ^CBxk?4xwՁ7|bΖ,Vtٜ'FSNG *c+1YΪ@en%w(4Rl=~/~a> V{í;%`$j6ukޯ| )j ބ֔㤰T8iIA@$ǤE %cy `ߪ4Mh3:Mj-dxJh&vp: mP'n7?܇Mn|t~Z.ȹN17ɪlNdeY2$ C ̀քEj׎eC:קEH֎L?ZGOz&1U$*'N <ץƎ8BK5wz.$dbE{z?mqc7T,շN " H)tAq4'ckMzSQaEr+xޑKۍM$?}؉"UdBe7hM0oJSC Tc" V\FЮ~)Udtf7xnn+3 @~E>SSy8v 23p)qccf_ޙ42ใi.'1k!/ ]IehX{ΩKoh2Kc.Y&JG}hPR]sG )c"[r,v捵V7:s~ܗt䂔 9Gn%a+\~@J_9dLcJk MF\M"д˻]yXuA*kuU C{Wϭ_9HcE0`Uq=I n"cWh#TCe9`c} W~W}8g9ȣ-mzKO-e@Q V.ClTz@(N*A{<޲ .PwS?ZO ?BZ\,r`C o4,Bt4x d| Irht_hKe 31n z!2}nD}ex KכE~jQXԃz>G ;c hP(/*I$X#Ia/ǨzI0hF!D&ɟ0ZhBz2g;~RB%د-vQ񤉺dg*!M3a)/NirF.xmVzeO; XS :;BnHy:0Cl5";GnʶK‘pIxQ)Y+"@Z] җf@S [%+E7"$ |p/IrThAxh҂OtF;tg؝4WԦh/П9;bdƏ]42lWE Î=V39pl캎o#tڳC.cEtgh0FI+D7-\ `8Ay.Ǘ F6eCu%]|wV=QMvUkb\ -m:$m;h8J-m:N'V R!BJ.o8g*!x™[+墦$HBSbG<\ۼQzR;B 2:m=QYtR5j6Wi'4jWO $JmrR,m*(kBr'已%wh%,qdF(Cs$>PQ S.YTY.:$0S0 ]C\j"R5>׿CEE> =͟hȆnf>okI^4>P ,v\hj4S)Ev BڏL`&rׇR2g6Bs6+.8ײ+~Ź4{O[;iZMy-jLPgGH$!r܍n>Mb3F٣P2oDgGy)KQhpZ޿netjs.D0iX6Ѭ, aC񫴼O:Y<12uj XH|F^ۣ#~H2Ոd|6\YO/ʩF9;\,6Js-7"bV]k<-9vt%ZG=AhzCcf~+pSH{yjkO_8W`9ORW*f_S̚pvoGhR=|≻F" rfK~kuuw_t9\=y`T*lfNNN+h&ɓT~C'yB"'B2x}YJO C\Y26r bSIU=jo5ܮfK;#HgZʶqlqiC 7dPmtߏ -9۷F {[Rz6q#]vN_~C.qڟHS$=Eѵ5A ]<\gCJ.]{J9Ƭ ]/8Pˋ4șR ? ]`tǼj&2f\|Bk #_@t)LR-CYi/)ic bFt R:74߲JN C Z(E*ǢH+gUӮHTӺWB@Yp }Mf[)ϽHۉdݧQD !I6#%lcNS^q}tȿ"S9MڻAvKx4|ݫĠM|@F1X,Z‰L*=Ŵ)imH%6x`WQT#RkYSRSu%qSbQ@F6xë3F!(YڄFp_5K%Cz% Ҵ+w 5#aӌ5@9hOK-LEI&pz%YSC2 Njfp[v`}K`NGA,`^+*y⼅UC;[lI cagM6Uk:s!FxfSɀm'2R9/˾؏P9?*vXAŲ.a eUEa 3zNkQ^Q8yƾ3;U)/TCcȯUө斦-`sլ\'$HI3v;{q·TE]K:eՃZŚў{?FNoO kH]SrQ&A;8ݵveH!lH85|%*FCR B~l|N^wG0MAy\4|rGm'ҧ?f_ g`h[<1 TR'_1x{౶5ْxSkQOn<1m!KiSTc'~@8)vd:@t#0eS竽+ *r9pC@%^yED&w׎Jٱtvu'G5.u&0p.Egi`Dn=Q% |!^\^XWmMtˠoAmz~"iVBzi1ix.:ݕ#,,f$$ZZ&/͚"*+6hH(qAmى>ҶԶuŵna2_W[lIh9CPKcu6=nJ]R ?V>Љ:iGF>wRt26Jț|gnB {F!(8m@Deڨ0>y1ۇ >#;uqD/Epu>prf2MAZ\z9c],sޱAvWh.h "O탺O°\8h`!ȝ&W^]RmQQl,Rp&Eɹ*XUFdh~->PZɣ*QEHo|f`UY?@#[y0S_tԞC=FݛݕqI"y㍔j>ۀe_LZ~UDh֏ PKEC}i9*gGsn|>脒nV %{XAI2c-nzyHۺ⯃Lwi J>J-2ؽk*OǦ~2G~(VKp3xB uYqzmP"7'dF!7/n;Kw U`@;:S?lU[ DC؆&V _ 繛{G۴TRMq 7$e\MFXm-^&flrJG.? ([\h"˲$kd'MD^y7%H6^!=_ MmjL+%_n m_­T"K{_wZ!p(e}{)atPRv_$DeվZxm dL28d}5@ NsAEaUĨ&r#lЫv'iAQiWيq=*ڹaN=sy  'ݣA 6yd$Nє!t<Qm箛=|L"&yg8-'">xűonɮ'xĬOuyxҬ8TUk|p]c 4`HF-ʐU=rˮ=RNsZ||66o9,~hK1@ew#(uN 1ûttJG qRϳuoH,o*Ieo m0ekC t~mR@f_^ψ)OnĔh H_=sMRbhdҔ4pP@4çAGm|Rc0'(Q g6|F<#v² ~+`NG: ~鼌#?FY_"F;ܓ<.|Ӧ`P$ay>HވtqPTD\CCZocBfhRbЁ14'ms\exig%ޣ7|D^<fa88A3,*sfН{m0I!dux>Jxg x]M\7oqΊ{&_onf4#S/iKVT-D:;֠EA'^<{U- >Mbpէ\&t˙/-ɐ\0aYO3g\3>5"j%sCmb(NHUsͯ #w5h܇HFYoVP]Drf%\BǶԘ 9P0Qkz zf4u*hޮk ^fK39cD943]_!F:^k’&Pl%*XЙܻ7us'`@~L V$Ukl6 45?oT"JR\4| S *Hk`Nt$9pҋAųG. %.?7딳5 cYN1pnG¤V&%gE%^^'5?62DvK$ԭ<OG4Ѥȧ>d"rd<})`6׼<ߐ%ق1ZΫBIOAyrEh*ZޖwKelc=z&v.es$z(Gdd')R7#!ɌD=ٝQ@sab FJfif%Dٳ9 %1c{jro'DF6EcYo%^C1vPVIc M=o5N?0f& U3vM!KtXUΒZں%s]\fḍ[m ڿ||k֞c6RT\C(BǮ4* DV%C IV۷a~̲kEՑ58 Fe=!\ڙP{XƐ0'vߐM˱௾<;Ч̻JƇ22̽B1:`gE>nT6X)NGpőE MJKп^&w$(C[eM7&t]/t`1cni35D,o3ja4hݺx=ԜYk$徃ksN ߍ9!XJ;<%My4%hډJ={6D PArT9z]N3g|g_::#4TiA5򩬖n$i?GthK8YtD~5ÍbM M%RZsSMvM- !x}4b#;7ríOjeJH Տ.~ f|pԄ^tvAĥji^!KY"n [ >R jm ۅ,dO/庫0;<4)S-0̭EiG\cbRESsN[Sji9i6gr 'QE8 Wf UL:B"NEFi!z7.D0ՃmKb =D8A%Wm*/Χwxp@:/mƎ,3{/`D$:2[l3ÔT;M2rh=%؅}a25ksՙk ` *A\gl$+ bgp>7zVBezsh#I_A+Qy|ILew\m4h<<7 _BnA×8kD3FD2i_N50HZKg2-ZT~O^{@_('6 .y.Ņ ; |^ؒHx?Usnx(_:Yj5eY,hDZg;+X4",V!T#/]YKHڿr6׾; v lZGƽ-7f,m9KƓpCѶم.pf#yRUzSaqRm'*>HL=-%#۬*AMassa^ w4=qx+/hD+Ũ:XJ^pPV:3v}̍}}]fD}Oc~"}-ȥ;o%m%0TO\];s:>dg76<%GgN@Q9[@(9׹A~37/sVmWkdH̉a=tsqǵ,K~?Gg)tȲE.y[ༀ[0WE $d*gB|AS /_ 41O4/4͕?gJ޹ W= J#MGQ dQ>` Xx=&nt!YUq$i%ꪅ􍔮[ C C[P#?J4}p7mgs 9A^^={~hՓkX% r53f ZOs-A3\("C-|˫p@wDY:-/Z9˫g9qB·]#q2]ÙFN n\;Jn$y]+ != 1ѳPx92 ލXy2`XqZu @5 g`>VdW=^}qڍw <`___-a'LtH$^ç鞫J]P7 ./WZz0/qً g}";K#R0>#(:Jo?q ]&59Lz[䝍$jb鶢0ϴ2qϡvOUt-t)TS-UI1d(uA<C%P3Y?ƯXp8LTm4}^ӷS}nu/zdd5GrNii#=7c_9eN w:i+j|0mK. ł<孮)C,|K[c S夷V[㊿@0s5[&/&? G͉yXÎ`OaJ~$k:J{3<$c0)4y%iIOʫabS8;Hԓnbv\ 73)`u!a0nNC~况&JX ª'xڰS ZFmB;9B$$I']N}uȌ (\iX,[ohhAO})#xt8Q.mWrl[Yg)I\3;IKMCV_(tVOyB?Y rypDP}!}l: 5JiNp6!D*k =Q=b|/ՏRo?/Ui Lvn7(Q8)=lcQm{b]KٗÐj @ mU'аH,g9 @˧F aֺP_N=MK (vݳES+f |- 'Q{3FEbP[,,׭vpTѾ=ބr~_3=ڼ/t ?Yhvr#dmGnb˔OS- 3V%&73JG6*Rd?JK1ݺhP~zҊ"~0 kbQ=†f?`ܚluqcc6pp1Gm*t&&Gj:2`Q Ee`;.0)` )+m!M5؟PgQrIύLas{~pU΀ ="`K&gr!Ң{>Y0&ͮZPX%oeaCZ:7/}ԣKl݂.x0&A4+\gp1&ja?4Ր]pwA"~?EbwI eSAGZ-nSn`O\ 4BBǁbF,~q5>m4+uNm/R޳/v:89+ؽ9NFA9|iDFl1j{Yg}D;H|H@}vÝsX`R15 ttG'|{QZ5jwlfR3^[ٺ]vL/L}\3D74ZJ1{ؖvo?%֪솹ľ{wTFnIĝvia L6BՉXJ&FVn%IjkWe,ewS9,Pd5^m3 Q/.^2ͮipƳuc1&`o,OB PHy9XeAiP4Z)ܰ[Q7J!2 u]HpVv#:S5 ~LʓUi9oyLe*%7bx6jA .B ^R6[suTB\U oU]؝k%׻OZ4zD: `8B^8ChC$oU6zyH2Q0Oi# \Ez fߨ0}Tw G0:3gFJ jMgL*we6Z-QvN$1KR\C4'~Q6YA,\A 2O' 5CuY_C9AڐSBuS-Ұ&Q l*rp-=J8+ adҙU9zЖQ)ū$Y!Hg,mrc`x|SH3=zToy#-4M9{61|3C!Eۮ}{ɗTpyJeL8ͻP؁k0Y2ݓ0^6.EKbrq,Mgμ !k {8['#ym@WxDmRe.V.!Ch;B8 ΜcE,gKd/,f}-]_nŷq'cT|4HE-CeSYn.ǹD9.æ0CUg klcn&PTEoC%C̩sHbmNȻ_OQAtdRK7A  ! 8T9VhwG&Kh ;#"{EX踐"J[Xr)P&"y(t/도[ 7v#q{/=a(teov r":Q- ޙ޼F-U@zC/CDu$ D j?*ܔiIJboƀե 37 }s=:"AF}¤# "47GH~c[b9wjg 2,u_9^ `ddZs*;̔=A$ _/tՕ-tЄ<(7 ugvˎo1}0|9!-Pok}F2j5S^D#^cHRO{潂< 1κυ"LlQT{-CGbIm&Vy$5U>}b@zShqTsv#ZW|s`jA`é{~:4 ; n#ܩ>wx~όp3%5znڠgޘ%N\$ n[p=Xo񋞋.E}՝`!< 4CJ\,z50EBbAG;9pGj[iЖ[o+'D!0v?DZ @(Zum"c3H kCA#hBׯ?-HOg̓;3olk:7-:l[N: sDQ|76Tq\ 3}^gH<{GW!?%mp >vF |ƑѼ'k*O23.u])KlrWt7AӟdZV-*" 7#)pcn=-9e ~4"S&%4LeQlwtzko_2;E,nq D:1@N|:+vx?7ɵ~an>: I- C NX..FB (aIumxAUah5V;]zf0,.:-T B[ākqm)R7߅!Ht },JBJ'蓫j5'i0)[Ñأ=5duUy+=f/L+ԂP(p8g_ cw8:BeaT&o-QX|WLl!T$024o2(o-_2Nd.كRĤ%am ^bkI M)0w{uֆB{ Yi:%$ݾ F6CNnV>^of,dN2h9}_zpju6 q-LQm5oqh j߂RJGx⊦U|qd e'9jqudq, y{bD:o&qr=&? gmvIJyzv\EXi23Pgɔi<~IҰ²ML DRr7^u6IY;L0&Gkg=ϸQ"7;QX@%0QaS_#xEalcluBjZp(4D(m/, xSDr{\8Wm,[fhO7Z5'"Y5eNcy {wYh(U_3,T , ɕOw7eV_0N*UWv!MTn!p;BO\Z"Vש _%wC6X<afI8rk+Y}g@ŃXR cujӣ`XI5yܪ]Fp]qnC$^%p4y@jEܿ9I宰zሽ6-~f3c-!Hŗbs~z1%JKY<ɾo\2,7 2]d4Nt*${4[v;Toұvg  cSFmom3*H(c&>v'ȴΘ:d}k:#ysG އ~CA<)%xδ7{ [0q'ﵭN02'W4s$ 5Ĵv\Ս(23T͕ DI+N'@ Fon?$b x`ebOҀ" ̷8RԱ]V3^{zW!. }IѼoSK3w!~PL^w)Tt pD[e>%5 W:`%5\o :-|u7v׍K>xH pztōiS83"9!,v @,Q":0Q ͏KXtr\D(XJeQ?M(7oIJ_4'B$'#;DؑU'0a%Ozb!sTk&B'GGmc'r/Vmq'Er޷ ,ﯡ7Iŀ;'r덮nҡ"0}]J)]eDg6/+_D11$+V5hAtwҐOʕV%bƭeLݮ=e+/." Q ro_y΃i%*@8=B bJ\C얽)8椿r|JpJ|IQ/x_m68hxlSU|wqVl.dKFqPl <~|?o#ݜ ۩NC'Í7HJ U1ɥLB^`C_@Y5fdLOrh\.z(LZ&_HeC 9mPI'|9˲j: BhE-'򓽡7"%z_q^5:ڱ]a83 *..@/|%i:cUX_RSM|kOR$cpKWz]jΉ^oy1CXbC`rxqX- r\n?T* t_ {w&p`ܺOc6|w"{V%T8ә%뙖jbk0NIaB§f0+Qɍ4qg8#ҵ)+f:/?q/zWHgx9ʂRA*@8toX܋,ñt%$x!"N+-ˏk[^+8En{aQ9ΠydsUq63~EJ-/g#My::b$*~Ľ]r2{ϷX3P&u tBFw6;1*{kH8C2A' ɷy9GB^6z ]%JҴ߫K3D\])0gUǞy lE>ϓՂlyv)͢!0,'بqlLTlrmVI9 )Gag탧Cep<0et`W.@X-.L(Uc[\ "j=(B& d飦`d `zVz6>(dM7[ T+W mmK.ZG i $%Co o7jHǢ5DL0IM +??B=q̵W+jOXFA7:ʓ0f_+L@^?+Ls'<ˠc-ǵrL9Cj/Et-*( &.2% 9Jk8$󞱀*$d_rcQW$4/ XQ" I-eUu4>4P$GaäNxY>-(" Bi\{hC׿h}63&V:!Aиó+3Λ~j<2Bi_B+_LD'(X u|8"2q C0©U2..+~ՇʦZL ur":уԔC}!"'AܼUG=4ozZq˓#i>JrzCҭw;3p3/̣Ny%KG LXI %d`ZA9Y K|7+آlm^=n!jk%SmE%tH#!Oꦟل[fǐ |GWpo7&U6M\' YƤKr 7Vj@rsFkQY֚0qI e<xg&p1ݡk#ibsZ wo3X' m$W~L|98BºPt>K,_6;^ج|kɟw2 {0l&IW@M; : ?eǞX1j YT/~zA!E}XZ| ;&{i1_UczVte2HRv&i{(vVi~+H WnB+Ȏ.랉tTfHO<ڴx#j KBBa6kH2XTL|M,X=DU3ӮĜ85UpI?,=p̥m]p"M\]kz`ODdퟹuf*ɖf>ƛEվ'b2oHg M(܁!99CFX,+TRqc5mtG}W! 7?N4"qbW|ci3حsp3}:P[n݀oR՞!,ipWU F[inMOLM. < kP07 %Sp؁QK vD/Dn;mZ?cgUvfFQR?q( f! mΈ h6C$_w1 ̅1.E+Bo?FcRPys6S `gX >-z iمqi?:2m& R쭇ٯ:0h.N%PaecԐNeFjߖ`T/"=Wje| u\4 g|m,ˆ^L#k8$I A&F*y!Eg΋x#圼L N_kZb=U٤iBroLKcN.,}j.:WA;_ >c<7vFB\_ࣗ3t~2lLVE){#-zjl-˂v!k%%Aq b ԴJܖaKd&19)Vd{iNڕ|4k>Vb1<1z7VZM_558*-pqkcUĈʼnPY!ד H(Y@QƤSM;Ff3;W C(iwͼ`[Gs9ѺV.[jdgo~!JD7߷cϻѩMJu=BL"D|BrRqLlצzLPǜҠh+_M> M:SwٯmS2l*)pMqvO5 jg#SזQ%s^Z뵽>c sE譡E/P֫tGTk_e7+əQ1''.qNĩֹ\Yt V:h BMޏJ]!՟?׿plP`ȷR4d:;R⺆ }w(յou @ DI$ Q ލP=JB^šXv y?}2 NZ9|ӲҍNgTRzLjs5L6v\ 1Bpbɳ]>1&nDE!#PIߊusdmd>|j*/#&擻n*NSFn5C 7ɲFA_+~tn0G;o0*IĪXX5RF0{j{6Tl`CW /{yugyh}+b:ɫޅ=8b D*ÅmPeYN]d#PԈ@h,&ѿdzCQT~Qo:*쟿BQ$̊> [;u?+l.%];˜iKfߓ fBaQUeuJէPa>Rw>= =ž̺lGM%q*-o'D$UR&|^H"8 O31 zUQAmĜ g" b8z}*| ]jtɓ+]JR?tRnv@T`cP4Ϗq{S!A mٖƘ}al0OQV -O~f;tS}t9ɑyT3$2A DƖU}*9dB]֑pLBK>ɇ<[P!/~b_ǎAiyqO†%ݒ!p:Lϋ_ qϷ0A[EcaAme߸ `ţ٣H.M,;ҩXoT)j lRRǛI8t/<1XtX0A`k}>4AC.jڕ#Jjj9%'d#e0R*4'  @Qz1մ>D DVk Y#&Kj>0#'a"6Ҙ[QTrM{ͮ!|6/I{@=ވQf!?sܖ>k ,irF摍i 7xtdQ*(T G.xC? ʪȳX?x Wn E֮_p1w m>YJ;*~ho;̥YBx5b7B -#û>á|騗j'`1弚DlB=Չ_dJʀKRy{!A@V:s>F'1Bbh|bř 'VF_h._ [4b 1P j߁!&6/8ڮ! 0 n}x ?bIvi]q]9"~(ٺrlmȔs|_"ɣHfLc0JIBd:{A=!@5M Rsx~+̿Bf&]Q #rbj4+%c>aG [YɼZ|C F @w*7v+(dA2BUN繆8Zʾ}Lf 2/lx0= \sG4C_Iz1ş]gF ڨn鹯zAEtNl1}^ƹ%WEqP+Px]6]Tv*"~/1Q)a:ɻ} /pȨtJ3*&f3ndI~TBT%VܯդVȌ^r\|Dmુk@dE%a9fo+N,{ZTj6fc 8fVroCrpޯml#/jٳ"Iwm.т& Dƴ!1ITiᲛ,3ʵ <^\/\pT$apS_j-q'[R35{13lފ rv:q1B[FX ov޿&;I.S?;5V+w~}b8"g0ؾ< F@^ʹ3qԄ 4'_sa AS+se7of<\vJ!/k`)[ )ݡJr7@ڞ ~XA1MNՂ[RheYQfଡUZUԳIaS َ_Ȣ8D㹕lԓ,W'Un.@[㤸@8vj nD=Get!>PxHnw)UL&_Z;82mq!E{<(k1rMS Cס?zEϞ64U+X"'R/h W-8=]SIӀ_Ho܃9b3; T+D0ZP7dlQ?֒r6YBHVR)[Oߐee6B)^moL_C$sɢH6)]ChLosM˼D#UmM8O"ۆ߻\x?|(v2<.#FC$Τ]zhr3QlN Pح,W΅ì<?^[cvؠr" ##Fj#l x]7Ur ?A~M^)"(d7@L24t^ @iBmq?1 x#B~xH̦ eHl[0A|R^#LNφHzb4?0 a ;M6+޳wOK87`ðKI ™i { \NԐ0]– ѥT08/ >FB#`/uKd_|QH=,4>}2%]C21)tV!p3Rk\t/|>?_o"VFԣ/VV9S^/SξłޙBF~a¤d;? >?;̀:ӴANʺ!+Pހ͙pݾQ~@Pdd-#UF6NOjR YĈsĢƬ}e{;͵W{K,zKI@+@7P)$2{Vs<CÇ.wj/6I%k.2Lr_o팺Q%T1i_Y.+Ȼv [Q)nBr!(nɉjkRCDF燅]%BV7 ZΓlaRA9[^q(zݶ}GdXJ.L_碊@ԇ*l|хW5E`d i61,1@zex;$نxaI %@uJE R63.HCWg\\4䴼čK>.bZaO=(조$B @nay)f7)m 5#m?O!g*#^5OI=U9_P6_uY ryE A[n*o*ldmU ': ! *~=0ȩ|#na1 mᛙrգdf"Wn70r2}І*($}ČbeKO?-#|a8Z$2h>אR va6Hy-}^"I^uv&-a* t?Hz!UlQ$gz,1+AP7``͈ٝ ɦ ݻrq$@6p ޻/lο%T!>?QXñyYݼFpSJxɊui}fĤ"\>d:7U*Di\X#ªZC!X{MB~.\W1VcxlsFIW{b,LAUKNfQI9Gh;[SԈ 6zf McX`-7L5ހh_pJO7[Me8p-5+kiR]4[zֹ?.DXȊ(K@(>1&4gxqmt*w['4 lͭ\_>IXMW9cv2uvzghwFhH>=*6RH][.kGATmZk4ރT­W*0>S]Oţ oYi=z!clER=_!X%# 53E ߰LЊRж&1{.vFpgԆsgXbKS׺g   oX"krݖS-~V. Ř XC6=ߕ9| + ̮-u^0P+l`H̠%/)I&ΑJ8S4kЭG@.@W#䇵"fgܥ͸`ջDīN+»M\ P q-զ( hr^Ҥh ZGCɧ#R^mJC\U8t!֦j99&_>|f3u@uӾ;ez֊4=.WFA%z LLV%V:o ldK\QJơPڞϬAi2}-1L V @K?h_XCKD`Ol9{PpWczƉ`F$℗)5| DTSS7T}| Onш_dMQW|N}eeK{h Z>;e'<$t=r_.~CxjSK-Y?{4RzB!*/y%ge)ޭҥ_7!mhr]^zẅ́C44D5ybvK7{0)g )f"[w)~?!$*3<ўIRSHC&` bg'L5%Aì |-Xi 5 #QOtmёmc&z P=߃+f%YK?m8Ta>Dǃw| 2~CQ`h*TZM52# k< {yNC 1wՖ1; =%M_I,~Io1pԾB6?F9Zate4_Le7M +XUvh$&u\%$[֥_2)U1!Y^4! @}胾O"֋M ?p3m%I09b !`ގ"  J#ٔ}"U BI6xϏ7'I`h3ɥ^#Ow/k0 hC, RHL3 ӛɠ񾴑".toRvxl",$c-CֈԞx#r2t1X4 Rt&AƅbNL/UnK;b!w񄏘Ӟd2(*[1(pE0z,1ZAOi)Wk O u>]Zg轤s [^qrq`0P“[wQA.D G(vMy%&<5FT&Ju'/=F[2Z &(꜏e%,vF(4B E9 O? ma7&,xBy[C9Br] oP z]@Kt %M/Yn{h>$BޅO),5 w;@xݨaYE1Kf6obvάe_`piWV.}wP_ l4*b԰oqyjl>=Qy{уw8:`NՓ#ͺ@ QmDsV šOB+pi}s`ffN鐮, -%zQ޲si5i˘ȍ]VeW"c>8+7t? 7*0&/p; 8 ؄(肬1!,U%Ext| } 媇\$jF$L@b EvWLwW$(! oRJza@Q}]Q{<a18n;Rql[g nv\v%9|]H3-*]w7 5r8JwQܨ_ ̌?ũvL^Ґ4"> Q=%:TXe<.6č@[rJ!~y;Fy{"wSG|9G|qTA*f @Q"%]T\ ZJW3 e~|8wU/Ŝ{_`.|>g !\dT]0rQ,,V`NЂ)(SO>#CUYh1 5-n!_[\*y7uOr `߽1G^x(rxìg0 %iVлP.dQe'rƯ޲]xCR0fTBĶo`8bmuxFC5$e4{"iF|*MFZLYC76F<xo^M.j.oNNc+RFխ]5:5ƛHRvDKi24ZFo*~!s`j΄D}>*|tKun?:?,ϥj]Qfu0&VOٝ Ts;`mzĚn }D8QhCVaZA>lMp]?9W:Ӌ_hЦ3F ^+ BAoVZx<1P;iۺ v=7f9Ke׹ *S6'(HCE }]l8\?(IZ[[#g$Uɐ,2`dy!=C҉f{ =;B?PЉd 6֎#*(2`Mq y|:z&۫Hߚ5U7 nUƹ%Sߍ'=4Jl ~Du)\{E1('O{O h^^C+uژX7S,zn#` g uڌ\?|7I{EKyim/~a@ΪX$;ŋ}on/esI-"U)"a=Qn9CQKKD;jevF?r[ⳇsTI>45eئ"V-J$JvΙu);%j72\ ./hX .&u> $ErCTi@k^c]3"I۸o{r/<]-c9^lg-+Ap@]$cI];`1^\ˆ u#* H)0%`|m5QL+ʞ%,ڤv?ďF;vh  @kgN#4yEE"ټ!F' '"2nY[cew}d! U]['|>#T7]K'%xN]ЙDܐ-G(pKG9{i"h>U_^z_mKt>T)AetDt< kU ̓wD)EE 3 :>3I )i:KЄ>fqKܡDV2CNJ2bD }hMOtaE*>Mt1s-4IxZ83UϢ'pK4yÆO\}i6O$0R`^>5U_s0>:5/TMⰽt\i>QVL DH%uܼC ~ .ĩ74P~f Z} =y9 ۆ\\C]hqPd8Zk.,T ҙׯkRc&Ol~^j *"Ցߐ!g1b }47=bX6S0d> Qh$d[*!l5Ӈa;WPƏ*-QCzfЩCԃ0BS$T/j`?&1[w0v O'=ي#7DՆԹJ+R4?eyn5\)NΥߢ/KK4! Ǘ3{~r@w6(UKR,31gҼhů'Q,?$+ |X_dQJZ{>x$bݿfKki:Ӻh"~%FRBF z Ai~qjM \6([z6R=꽒sC\XL'Kې赟bT83y}q/EXU[d:,'ʏq:,^+FTHq_O>IB%Čk]=).סy T}T^Nv<-;3պ4lƢh, VhZ閙"Fh$3pģ?ESϾW(碜h!xeĨr%N` IEMwMwqY XbNM zw tI Q&h͎&05gfd;s u2Z'׼) Q! Y4) W@wѺmD4|B ĥ*bA<4_ҮKW*$uT1>³.v@jn& GVhzP@qx$M)QSت8mZAoȊ 9y]djŭZ+ /l t1K%unM~=:V3o\25絑m`M8[rbސЧLq1RZ O6/ElWiy%^k\6m-``hz䥻E4A8Ѫ|:FY& ,CKL|BeܧkLorw m' +@ EŌXobgellF0V#Y OhHY:%뾋&o/Yw)cuJ;Rtkl?9@&G1l%|SL(Y*AH ~yB5ٸl?˦䐭}l6w ($HJ^*IM\rfiVv>nҦop MN n"%kfvmɄQ8« 2oZ^+M2?6+OIm:Ef[)\̈0|PhrRZ\GGX(4(rU"g5](w٩͋yqPFL恏]x+BvFuRƨ оE$r8P&ؚ Yj@|'\B9{kaۑL<_md y|)d~W+d#F'83umO ٌF9m?632DsSچH=,[G-범˸Ӂ)۝4jqCƯ5B\syTK$#k[7.J*7I? ?j5:%):A9tm߁ίes^qd΂y}*4A f`,RuU6pm#1;nnR8vxM-IPQiyt6$5Ki!S9[ wOQSDi%Cjtx,FzqVkW(b> Qo0b*RJHkGoV2q~} A$49qhWCuƜ}W{aF4:D QjceڥJw7Gn֣ yKzi]QN2$vieu_d{z9 x?ğC~{J 4.cq< $Vq)1Ly2zTz)䜺 76h]e]Ν i6L̀5{YgH /رO=ڽ122@p.dkѥc0^ ]\ZXχ qx iAFsDLh; ~:G^KcpݦU35+Ӈ7"ruoBuW) Ii24S2%~RVczzh޸XQie7wQ\m qpvwPVĪ<l;g4ӗXTbq{Zo~3w?-,]UDǎg(EZL>PD<! "];wxY7`Б\-a 9=pڋtPzz9T-re+"8a#7z x-*03kM;T c}>HV+r息>\d%Wq콤PC39xi gbz8l}\uL{-(c8&U3{nkPl_G\ 4jYqi¡ީH<>{'Kvu%>XҮ1(w[! X?|;c s>cF}f+[NL%]<, { hxbk}OKedH=hdIz)rM^Kt/|}W03Z <O pk $Qm Hph@pVFgB3ǟ0HdX%;y 7Gn[Oc&)d~ F$t t"NORD5 9YjX Q f %z1P^A,:x夡!orfPE$Vp#7 }>Te ׅWI x۬^HM|R.|o7l/)J(vx䞴OZ+Tq nt^)ϻL- aȶ7TUk7xm7ܛaoa|yoI~[%G SuA[KYY6kDIUf)c3#Ԅ[\ˉ-Wu.s_}^ONڂB:E:R[cbdH_lJ P/n\ |!h%[=[[tBrL@o Gie+cz-!!ou=Г?{Y^{Z"j^_|܆rywS/n)ƔmK:d2N{*#4mEI7!X EE'Yyff ۃ"$S{t 6۲9TIh7y4>WI0ސ/"bA؉»Dm&%k"3^mׯ9̣/RV?N YD&Gctړ{a1Y!ʷ{p[x. rRcˊ9G@'Q+|rAfv#\&EYM&ДiA8i B-AOU8Wm[n']ՌBsj6VY/E3v1lIjCyiVa 9Q4 ?O P>et5,4ai,@ Lȓ0 lvvERc5mRU3{l1)|GƝ=XIP9߀.xoXlcvQ{qx 1JFL؅cيX}P,"ubr6ĺ͛#{|DB;Q k^O%;!::DZc1'v; Yb2Y[¶AC=HJ21:o=K8ހrאyL\0ɊtRa.-Ok+3h5֓OyN~0O25Xԕ9v@i;mwmi1k ٦^&Jaa@S]лXq`4j Fz-Uo #{P:\vF:sjJtߑY2X7 FI di?7%r'&75/"~u؃;7kS!UX|pԛ¾*drZO5;=oj[f5/EKI8_oNo\#Ic&z,DM=}*:m#eZ6Р"'xeImC$K=>XM,PmrŪ\V9;WiMyI1 BolZ0f暖6 Ujؑ A-#)׾# F#/)ZƥePnqlhmŕyէW[Y*q9ʑQW$5?/D" )MC#"6;%CyV*~pA!uK3i^ZO-Vqr.P_l3udg-6 tư`{.7'iʳIݱ{[#M\>O7S@ˬ"<1Jb/imz0q3ꦮ` )ɣPIO L|ilykrֵoJ< *n#owuNw1nj?˄E.op|vs)*;lO9sƔ;z,FUԷ8-WXئ0!FjGP$Uz&Y/-:<AVT%T[ gĈc<*a?JٰHۣs=tCČxζJ,<]Av5-f 2?)5cxE j~-Ejd wr8}4f 0+uGޢPLj[:wNm&6/p}.cv'JEm;g V574g|ϒQMH>7̱iZ{M3-ޑ2^+".?-4J:FƻkW I.? k,ϵdr?/@p@ޞ[)/p@B^o?fztce"sxĿ}}Cr<]V]HXµٟfL{ϪpGM=B!!3D|C{*qn*v@J}M>ު#Z9`:1-r nj|l4”~D![E)J /o8vA4́ րb2csҷURQCx3oP5X突=Mj3_bL>nu' •ؿ1VoL8ۨ_5wm{_WNXHIf~"nAJJu[&v7XU#$|\UށPBtx?o_:CyVevd~{4g{?F<{w6jVԲ.MsJcAgp;93Nqqe٧z-hH:x3!hPtĻ / kd7+ZG ~h=i\N5WqUIeaG]Xg Fh P#c5%+]ޑat*Q| |M \7\w@7Rn6.8 'EI"ԗ?Y0?z"83K(`x[>6W3i2ܿ|"h6]c ]|tib}`ĩbȣۑ%bJŒs;R0MjǪ_H/c#rx??|A ]HJ{s-6B{On1@ ;>JƂ!t749uι!9cƙdW Q@ ?z?**b^u'L%=2"$qGo \R3Z 5>"Y.n/9hC!r\uJԮ(nD=81B-'Ϻt"20 ʌٹtNMv=^2|E6){ 6SjS+dF%87vIp+NS՜=*7+?U"]75O3[&VDeK39N(3aE%:2uDckz! 0j){_Ϛ8tb#7.zAEo1_/ M? NO瘧= $%Y[(V+:`\r4yxv^zKِ O}xC2L"˽̺ c+P-}dV4:)9lb ϥi0ں_#K<yMm2H9R<.iCЇݞ?6ܠ尵~[ ٓM-nh F /'Bu3/:x6sd ]oqIgX}fh`}o .K],!ɓ3w*E,L[BTaV orY3(!()_>+jلqtNAB{/ZFUvED ~#8c!F Һ.[}ѯH]ΜB5Jm)QUV ܇5$!ieWؼ( *چKZo5̟uncNִ7i r^5kxVS&6m ,7?}x})ydFo3b}JXk=H=L/\ !5Ee=8;,ehI"gi%)}1z_Eb3j˥xĥ71 D@ ͮ SkJ;Tw)%$T`NphcG4p,^ a3H4*RT϶`v36_s炬,Ɠ(TB&j̋{X{Q b4r# EA g7<'4i@zf"}'?Dbw*}1F Y27Zϩq NƜb}9Y M&l2<@_RO%d&,uR"c=A}ԼzK;Pj)5}ɬ^:|N:o>' 0V:R-G}iyWo.40du DAKEGzo!A^iW-RB bx2 {;|)++IR.K@~Eg}GaKsBu%C\NU\l M<X=VDNHx3*=t৘}[_76۞* lγ$$. *Hڹs%.DžS Z,pU۝>=ęBz}`1ۀ(E ~dUo<ލPvzjݜ.TbViV)FRvcn b&{>[յkKzw>Eׯ_LR8AxYtWf6}&ʮNv,e=!Hp4j'Y}7٦1K! B茌#}][1k%Ω*؛nL̀= ɂnR 6̈́@gvgؾviWXߌ"~G<;CWXRŕRhzG-XPf_Ըrٜ`OszE0b/![ECS*F͠lc8OTgkJHg3ٓO[ +n 37Ձ"[˂qu|鋋Q YNѺ"NCVВTsͼgM\;t3CcKM7-<9WwΚTh+b[}zSs`[S$/= ,0q m}mk;7#'uM6bxq%NFz5'Whԗk^3o)aLJvAp$'E.y' 0ި{?Q"/@@n#>А!A!Wꬵx1Mʂ zH=[B#)%N+{iC&rbڎH7ø_y?rI7nƾJ8_8#Op9%b˃"m^OS!Cx_^s|̢u#BbW;?K]ϭW+ 4Wfġ7 c3FJ MJ-0#bB2rqN.%Y#tN[!5MԏnMm߀7 V-~'|b(QÒ0Anp5S9 5}vqk/s< $d&ÜU-WIH*Dعx1:*]ʁnNeIsbJ"uV(1LH`xpkGi}fvc.ĿpqCCexw"aDH Lff~>HH:Z(|[6QSBL";hSk& m*:`$Pda%?Ocv;!D sFδDH傈c)>̳I݂-ídۅcCAq6ڽŢlPXr"x`[So{'KR9Kn U W~ސTK275*!L0ؖ -be46Q3f}^|5_k|\C+xᔾn 6v8,KX@%)x%+Yj(7sn[h r.o-@_V:06 ְB5oth@OR"*%'}^;3Xb8"a< I͏|`%GRk4H濍0#R8.2C+=i)|KSM^)]Nr14S,|$sQ;Q)pNvLd]_WC1.(/]ɚ3L\VBhmb2"7M„VYNM%p^t} *qڞLy1ZӪ pkGO(65jLnpdQ+%N=z=DuVG2Iqqtnt{)4"FqOid(7xku6Fs„O-s3w >MMn7NE(mW~FPI!xdAd 7K*{lZsQ ߦ?*'#q#] Bx+j PdHyZQ3G`,jaWH r z9RlAajotA5l_E\l^8wP~Ȉl&(O2=0uFy.?dm} _z :T: Djte'-ImH?LBo6"3q#^j;eh.WNz~ z Ȝby9&"Qglu}82WqFR7?PQz2N7Ɠ{_I$@n5ӖZ/nbɨJWQz(!VfSFm }ct2~!_J ʾrySXa E!yF{Uaá,G$ult,ӍQc3jd嶁5>ŗ&-z.wŎOa /#!wODJ1{遫=Jr=F)64ǎ&,E[6: %Ҫ2,}|e(㓖WP,v+E-k<s7cd3rM׹zJiLs̊9=h.FʃlfͰs|ňu{hnj3'iqƌ@z&nti];-wDZO[D?dZr |XC}):ut*uqh%G~dn;_eR؆ś#9m2-;|Cr6Tzt&Li"dPgOmGG$!-PEKOE=O]ϛ);k=f7!7glhĜ^OsyqVT<%:A;Lunڥ TkK8P=W`$R1t7wmBG>J ,Ӂׁs.FMTt)J1n&*st# |rMYu h Z:Y(f+ rl(*,{pb"B[4xg5+J{&-FhpKCn)M Va/5KBbOˑ2gq- zݐKDC@T_# TUkȕ!KZ{T4J工ݷHsm. ;`1G֝[B%0ġbiBѬNw v/᧼l4OјYS fO|7pVXgJ/ywDy볊a/Qڬ 2~4j "γbK،ȉQBX&1|ȍafB+,V7UB n_Y; ٧JLK-8/`<|=v>SD1L.a^~wUpe- ّMPa6\q4Ts /^X@[bMoy^ @5LyŴ^QRg,&2Ck%/K J)X6Vg^n9wy }Uڜi@վeKfl ث̺lW˞Ac8Jhr{/:N /_z@Jqp-UU&K|:_3sSà֩66RọʴUݹS Ug,_c"c?f;f=L~2vM.0]3r^I%N_D_;â\~C @Ŋ^ O5`V6`VϯEW"O<`Urv1/UŇj*@9[tMn* :@]z2@C*Ca([!iUݙ,/@k~9 gR^hTUC7gOߑŗw]OOb.߷Bw0[a2my=CV O 咡ph=ſ& @'czҍFuEo(:iTG|faou!# ?RoHI|C/ttՐW [ 2Ao5mэEDQ"{YM;f-osY¸uf uM=E)c8-K]_V- ;hF{:+Ea%-!I`uQ,Zi-%5]45:u˙ci{\^8CVh7 3i: ,|MXeAպH,eke/wR Zu ^0|= YI-z1ah v*p㗍)R+=Õd+[-9 F9|奥F%GTZ8^ =Tcf**' hY$ƾWRjAl:M`ZQ4~_Hƽ)9IxE,/]}Ĩv`覦$((?[y j.j~U+ EҥT#ؘZ$IGn;UO]ŠRD MuK',ˤs"Gv 7iɃ?3e8IΌFU|q܏[v4/ٶlɏ4Vjzbf:D%z,DnϮh*z.3?Bjl0 w:3f P4_\ƻѐ`{F `P͚jPk$+"Uj@N\" Bu 4T%i,6G"vv蔶L% B;0~#i\>'AIXRlb!N%eP)_.Խpi)<ͲIS/k;x[3eCCՊL @>"k[/RdA ^3;Yjz/&yZ还 Ra5ۍ$Nmзt=C#j* A%e](F1z8?0j ~=vQӰX ;RbKp6S3 EE;ٌ > 6$f;GSS. xcdc*&(eu2B2U:W/Q1:t@q/XBaCwO"SxRn)&[;9b4X9/Ef93:+% ~;UՙKG b.ũdvOIg(7G/Eio!ݞbz3RҏB'j#%Se0gR Uf 61T+`ޞ z=2J!6bUTeID7 2BHǦŹ|Ui$Gs'{h7''c!Eq* domq.no쾃ŕy_nsa"@Eq޺<$k5l6M<XVC&?Ǐ<"X!LI^u B/򂂾E$OyB懧(9֕Jq4GMe|6Enr8~ZE8 V4RP-LI?i\`ZS&!ƟvV TVS${yMA"iҫs?Ŝ2S@S.nӦc䲿x4INzO8!䞦ߪfy6'"GV;tfðޡM+]NjqQհW٘d&2bL{I/|(4vj> ϱ9?E#V= ep s!,17 shk3k}60Nҋօu? g"vǤ/NSkSG %t&K3;ozs#Y\5sB+).DӔO?:?ޒ1~2dCJu狌 |;> Je۰0N;7ӹI R`ʄXO ޏ|*P'9z=ۆ9h;QZ:t jO}(J~; ,LO1k>XI -LۘCVI#Gl˫TW4Gvs 8=w8%L^kb*#L7Ml{ogW $e[O/*(Cyi1TCּ\@3mwdO>d(8A$ vЈUQh#=tZϐzE:7ݚ0/ :z p2YZ(J=b;[v?G#嬇oɌHF;"4Z 6Czb)ak䖦 Ĩ' GBɓE)*W uVHp-7R<#y"7Q@ r]Ip:0NUu_ [7{`!,cũoj[Ǒ0'sK.oB؞wȫrApE]y c0ۨi>g5b@fU3h ۍߚUVn`m8q(4ؗ>uA>On].XTd6sc O_"Pg A+1DT%LpEЍn ) w" >"s#1i+s#仃4:{ ?e޵rE24iq:KrP9$NΞ0!'5lVd`KqoK齒zC9‹MgG V;.uTL@,8+ʓzef4as׽n[#ƍ'kɂ][ȋnjȲq'ajhxc[i2kF!]wjZ\3SąV.YkD?7sLhU,P(kFwJm dC2st[*}q Le/XkWHS W>VZyY3iѮ?2cJ`9B8=~ߪl\Khr~h|aRZqv5/Jnw=W@ JRbz|'FaS:`D4kP5@ HA}G= ސ!]=b,p ρ|N#-#4v5~:nʀhYg 3܍G7T+]p.1hJC Zyeb|FccЬd$c?!-"2=/UJ&M.>%Hp`qwH"(M7 !^1ve0EE_A}2+n'ZGg =_uC3*pr!>eVY;X }x|n,v6A ءr7 j6AB I->7D6} [ctqQ3u* (GnQX "3֛l0I*ITNR'+.i!y0Nȼ;}GFvSBΜode, oVʂMv{դd`/{ Ǚ剽CaMN$QDNT[dz4XvK77ǛtղyKfrbzi@ASh-N2h(~F9!Cb ǖ1˷Fd>%|7 ,$U|2Ϧn3_c:A+tm"{3͕sڍ]?sMwx;z NVFT0rVfu=ҝam}tM2) W נ!$U2+ x1 Tc>dM0O6~_{fM1)n(YiZPgO+pINR~9VB֎ la~C-f2eۆ ۽60jWjVZ)*H|X~Ïl+iEʑ^Fb"gnc-DXe[۝p}w ax\/!wZN=%_H tD;}Q4qx?(7xJtr1?y *=H ׉JԷ,@<p_8B)K:5fjqBp'i{zA+۹ bţ[YCV\!v T j닧SR^D2ȔM;(P!8Zx.'ȅ2bϏhK5i@Q9wzFhMtV&I@doZdes-H"Kɵ1]bϧ3hUΈA aêT̕>4CHk+ORYݕ)e|\[OB>R#>M,&j5"숊{,4@9VlVWǢN /`NQK,E'd#khU8I5{[$azd)>~RԾyp^K+g1Zvݔd]=Λo*@S%w(rċ^q& Lefg CZzI)*<,7Z4F@1qI!?<'67ːlf9>-o~LNh؉LmJBV 2A&FPg%oZG3AGXH"Z[g}_M?{%ɐZEMۼ!إK8ݿ20Au²doXD:W-+U֎rDE& ^JՅ\<ଞz;^W[S# Cy!Z:|"e=1_Mp*huc-8?rz"b D/mMg|A,HtJ=a2q5W/;|ejYTC]^LTW}'@HϔC(^lh᳂֘ iO #g} xjs[cOp*[TQ*ֶ{y#].ḟePw0˦Fpc[1Fkav8"HXF~71)ȓ"[P%i:r U&Q\P&ˆi\R>^qF L37 {g$j}EVr˖UQŃ{?_ >];nO`ڻ|"Dk.x'dANxj&MZ _|?(2c i,P2fiDlEZ\kԁNa̘ZcGUeź<Y42Em&Ć+Wdnh4ٿFf$#g Yi-%x(~x*!bGﱸ)@L qڪ++YxϫgqWo> Y.⥃8n}ir?+`oAmΖhr|h^vHҐ@>t!b/ȑu[H2S&a,fIGҞ)c>]pl)H,/EX0V*m6JeYs] lf<}=m4ц Gzn{UlBMZ3R@yKP:HHwVt.J@yj-87xؤ*n*<`Q炘O$kNt*FސF~pɁ>#Iɹk6eluxGW_ztM 1}eĀPa<(g 6=NȰٞFR-蚐30R/VcY[{C77IPqd9UCZ̵Sj$v݂IV|.9)WaHp4ҙ}ގo=[8pJ1gk[K[6Y31;A6LSօ5q¼}?}b"G. 塵R4W@R{93bKdkG@%@^èMuY;hwfi ,(,WZCjkEq҅ʉTq{< =CamK`$frԚ4ʚc[f`>u e-Mřx`|;`ez)y_XN#A@JjB @}\G([vU|"Y[s< ) irs2a<_Ԛn.`| ޭ pq3bzꬢѻ 񱺖M֌ͳk_+ױWP\/PL rnBـ'@B"=6.!'Ч J,d`&Vz@RX XlР9a bp$ʰs~/A yح&bP:1>Ӈܽ QZk>_/JE_|/7`ۢ4DE<fI8J6Zi&25(!#Ԓ<)Iap241L^k; n`[4{i2Ɖ*9@Sg G§Uvʲ;DOEEϻ15 nkKAW >̖AﮠiYDxO$*vgy_kFۈPӂTRfwGEqry#ızn=ZTq>e);ŃXވFZr"+$9aҬEs>1+zMRA1vbiAV6_ &,ЊElwൗhG%ȱ|9c9fΣS۝l?[/abE~w<*{1(Xiڝ 8y^kx]iF4*ec@yk]Uv)R6-9*`d4βߕl*H᷉{\h5,jX*Ǎpe)˳ T`(׽8BwDF&oT;.-UTjv=SY.a9Vә_b+s cvWzT?!Y+3' cAEOydbEWb~U?s;,mnv,g\XTA &{W}} k7Sp`8JzhF-]JrV['P<`qc8*t|{t̒G ? ',~[BW#ɽ}K&G`o{n3\ҕΘRq>A!*d> jjQJ!hͭB\NUӸ]#ũ$n-"=ZIF3)D8KF{(o'`(-8rT~RٕL{=/hlƍb?y>sLYD6R#)܈U#<J47y~ھ*5}_75W$K@F VG H~_ʇoz|௴}1P,̓sEaA%v1ۘH9/;E8&U`kW 0D'ӳ^Gw٣|sP~c??@Ƹ: h:U%~x:1}E?o2ۺ~? ($.t"yv+B&Q&Kʒ[y#&l@g%G,^_8ৌaH8]\Ddʐؼ~y,DsX1`zƳP3N,: j"8V%C31v9 3ҦE& 2g^E lIf3ay>s!~&E%Q 4vJ=B-:6Gݺy.PHd @frUsZQ,vp,)h}hC#I45KY E!k{C>R$ώ㺩S'X" Xeʺ0=+#g]3ujui]y:ˡ1>kۑtndrkVp46ǚyr0P3 {k)Jѡit7 j5ӝp עwN$\ˌz"QkBk›f< !Țx)5fOeZ% twYqmW5]-e,Z)dq:@owynNvLub`>t}O%7nۄ?)w4~i3Ҹݧ}HwՍvЇ,6?w*idHWmr^>5%_ %2qXKØQmhw(" fw &b$}|vim!`;^֡εvޒBjaZ<2&wKuLh^U0?5{ <|Q t~AiD=#z s{uoXsQ`e` ėXCvA׫-ujvo6z2ӕXu+U_TvV_눑x ?WsJB{$6JKsShf>܈?IT0da:(d)QLJp^A"JxW;vEce_t#}DfwF{kn&PI&:?'Ԃ[0!f`~H?t-^EWx]뺵Nf# ڌ݉aƯxZW5&.rXL bW7vPԼ*5(Bgi?^4m_g7%t"7qu*\zoU&&m-7YCFw_$r/Y@"(mxĨW; zKd۷,03q#yN]\PҮ->(H쯳"#b|Uy%w8" V9 ;?4 qT7\ߐQf*fQ9 ;aWyVF-AfMƐU /=xTvB[Le$U<1dJ;D"Rp|AkPM"&4ТMg ؎|.JՀT6K=`cκYRf֐J>O+c]\|O3ؓ}|O!6F$| oo[.w_ެr땽a9f܂y͝-܉!xb~nRg%4ˎ(X#=B._/<?3%"UB3b[D{񪄽d}˄7(^|YYjWq_^gr_{I{Cb]ǣ6/˂^>tAP}|?hĬ㢮[ee!)p$.柳ܗlO2c EEf@J][vGN7=\ݾ k!.Tl' E\lp,HүY@eX#0{pE`IZ_+T:hB0#b  4V&Ea5nyq8xvfvVPy΋URP,3bgK(#OP;VPksFr-[ZOeg4Zd@O6mq﯊)ӔڂM?nG8N'{m @$=k1lZ0WVlpTzS0$#177:%iy#_W>%S537)W-#n݃n-JDr+hU-ѭ),)j! Ch&ɧZnL5:dfrmg<̈́k֕)!JN{N?A ܖ} @Ld Qr&0 DFcu <ǩ(춥]r{}=&pjHV rqYeZ(PL!Pt$; fu`y<ͭGX\m)RF Gcf"cmIADuW'g6LкX\Ϗ9n9™Q%`"݊D1Y=Ԏ}H=M]tֺ ݵ)8:fU/k>/l8t$<@o-2 NF/gG6KhRoqpy n]̐ !v %iK-;&QΖ>|iq`" -uO|.) >;˞Y|,,DŽxpE0xA蒚v #ͲBz5\-Uay./P]ɷHm2$0:ܙE`u"Fa TI@O9!o jڶ1Řj/՛)=p tmֹ1X nYFe_[S?Χԩ`uc3 %|4"$Y,n&]S"#f,T:u&lx'r\X]x%yL`ݳq\Lw+HlC !esJA]=Eשg0#fʍ^gm* 530W1[T2_T~-LqŅrŏi7bm)g~xJn,ĦCSld؝éiaNƄã9"'B#Il~<V%ݳ*>TRaCgvGhEImK,;Ef =D"q8eqUgG{w]x1ǹ nڐva&e)=ˢ!-*, MrB ] Scwg՗ p-|Zvr~`l v6\=:8n52aBLˆu1}I_qo>g: =։+4z]Л6'\(eO7teߺ ic;λP͘E~7!wp0&{jVE9\}$%I]aߛ2ҎE u0^[ψ]D%ShY^YCNYExQRE{Zwv?^'] W)h1U+/#twlw- O#<ιssqbI,B5,.hPP4WUfaqGb~Sr(cde?bv+Ca6Q<'ء-cAH~n?L3az>T_$z ,)µyU/ٷde!ۤo_   YƬDC֥?4d|n-jΙv?\\|AcG(s.}B ">Wb m|[K a +c^GDI:-סO0Ff=bZĞ +-Q<0i0~g&t TVE; ]r okvaz_?G EK¸Fux7+{;C(U8<>Í WC%C:?&/a e-+Y0[ɩӗb(BhҔߝ KөE|fOWQ@-z{Cu]zKqY^rv Yxtvw1*3P:J67UsZ-MrBq4q~jk0p#^@^j99P ~"̂0eD'bt5 %bo?ᅼk3qܔTZɎvh`,G]uiYPC(AcfFmn@>!-3 Y"&6p@vm/DJ~u>Td[3Z"~ 5|(zx-?iXkiBKMHHW KgPK!SrMЙ/!'VHbG!E(򊘎FA:Ɋzk d^̡sJRqC\4ipFX irKQ[h"Z-f%Oai+uŊq $:W-2:y2h1vAOlzn( D4[BD o,zLWBL]R#Rhf(Mp'tU0_x;O3%p,ݗ67Yӕ k @!tDBQ. Z4Zq( ,[SRdHa}+rJ[8b!_jt8$ V+'!BXX?H4^k(|Xs{Q%8S7"„xg2<4ia !2MCð?TCMc_qYAᄪ zD}δD4np">q#? r*\ v_)Ts(OVD=KysqIn6툮:̘-oɉ@e(iWүޗf7{&Bu'vV}nc*>=?`lӔcH0/O* 슟O}Nmó)4UXrKY;0o]m~MrOϒgl=9eG!$ԕQOvC[4\=jgM#LK fw:"H4]q柳ә:YxY10/ָzM3o-Xܤjg¯F]@_Bb]8o/6>S>2J&k{k{w 栏p-m[rMN~*-;ilYqb]2x >Rbm% {hMH_A)r"#w9w]=A9@WZ"}PN4uEmk1vi^^?VG^ > _ zuAw-~xU'zx6:ʙ.fQx$/žϷyIylu/" ?x&)\=zhyi KcdCkּ ^pWh+gYǢ S E2{krYqfu3}gK"-ivXQY]{;iUKq3ÄPD Ceb8;]1Ow]&pNj.uoior"%NK7$&t<1V۱oqðj^|Pj9bnbZ#xp,WՌ7sr,6YvhhظU7[WGt-I!|tMHxIr Zpq5;f"uYGtD&NI~vKY̊Ϗd%l8`5wj_z1#mdRTWܰsR+[f3ľpXc yZ/[q!A?}P;d,.x|+'H|Uhc5lUmd1YX5յ4r伸xy;Pxr%0Az`+9vBX*{@}ЫrҺ ւ$9Ax;>JLb`><֢.x'-UzDEv7zgŘh\ =I͉ۘ<v8~ujZąݩƜ[$aDGuX:Vo)D,|2À>37=Crnؔ+Xpi=ZVǒA{st yPƍK|+2HByꞇGJ]9]] H>rޮJ/E*Á0] ut8X=źJ֋c;ͫf+37xI*4m0k%z-ig.8?Kl̉nWjlv#d-:}un[BKa? q hǺDmMHyAT|78K,;HiFhtkgqr M;O\[vm:Í{Qi]d>U;\/՛r\zZmh:svy;?TS;KV Ͼ6x+rfFkRgI˛Imho|]_>Hݳt[*:ق2Bw}k5=Z@b)$팛l })DkW\-TfE+SrZ=C~قp8r)⺕݊0+ȒB=ǐ>λIoUZF;ƷOoYԻ͝CG@K?mAnʩO~, ށ>W7TAY.\/GjV)m(X1Vi;<'mKU -OY"8WE,%$L{;y cƫˬHWzIBubM9|FeϒhɶCp T/ Э˛nX'=rc`\`:Os04jG %k{r`w4ؒU˥>+"qB7Hw>mbJZyh;-S A]C0zV,"J9M#eUtp⎻'}bɏkvNj7~w@Q:PP$^M/U H8cg? 4ڽ&j٬d/HRludmQ>[_LD현^G|f}_zm$Ej{2iIwE`нXaSڡ =iH%&v̬TVt4F3Rv"G y`fi=2LĈS/ )Gj0Lvx)2]TRH-fSDigG) _%t6k"m۲bNG vŇ4;OqsU[DA@3 C_Gg-u G KXHtjPC.|gӧKuĢG6ㅳ7yZ0={60P`8VStjb QҟetID?q}$RAdZP$ ){ 6oo=Uu`# pBP~M]5Oi>:{d_$ľ_|fC_VSL +Tpm fps㷐&C4נ5ao"/gn؇c*W>6)?YSMAPA+0Yt?[\3R"^,>i c;E0=T%ʕ{,UMT\MY넭B#uU_vGQ_?m=JEQo֙!Vvl E3*{ iR2\/j0`EN͡Uvs0[]$yO(#`Hv(Q7=uG!l8mP 9"3e-8w2oB?CraNW(Ht ruÍairG,m 3#fA(-8Ӥ4+䩾N~!m6nBX㚙 L;q9ׯyaʟuؽo|))GsIwWX3"J/h?yDi(Csv9o?<2qrt ׷u<ʟ{}}O: qy9;VD ң'j%vĢ'RiDWI REpo'W%0V-Q\&vmT:'Gq]Lfo߬h;?0Qx$Ižc<.FEqp&@+,/]ᅌտTD'bSMۭнKfxcEƢbTP/RjjjPU3U/pSŹ~;rS Q9 _[٪'/r#X?4!d)-/E2 -qۜύB{9o~K]6!"і}y)sIsI/pvT(geVu&25CF03u*Ѫ{%vd=k͇ Y@ڋy<]xºaL-BjC,x[M򈒓G1pGsk7# $e` ,ѤjQSX'#If S"tg%zlf%;$_#Jk0&%+\T=Cka_ 92 }|prI_̏粹y˖4I^ 1pPՈq3wC1id ;"}(ݘ6a m_`9gG#HkzrI1hɻPD|/)RСjZeR\4@DqsZlvl [e|+oҫ1bn|J(G`탖^1*AØw*re'*Z ceRyg]K_'' F,`OnS 2[L/ ҝ?ȉcn V o5[f![uԴ=iP*َ t"0- Ho;0DlkJ8c`H^^?O0Lc@֨c~#vxdJeȓ*}" : vȶ-%EcJ؂0l9Gzf+0p% A.x|T{VNu6~Kk1Lu^3 dTh$%ECX A*Q|[dV~;< }atȓ E\d-`@h~~2٨/AV*lB[NltN$^/Q`a~& iˡqz`bˢ)XAL$kqM !c"GD14(Ma.&eó31TjJ4C|6pAeVPC$si eEW]%[J \}(ޔ{#B^})>;DtmO=2ms]%!+x1R.Ay-ol~mJIg |O^R򆮤5-b, w:h]ZTvdH{$J]3Pili[p#jɖ '2#do āgOIT3բwNgW) ! +pTE)hARYz$ۑ&BI=NpNo @3cB[B+ni2AbZkl}`:m0Ʋ;E}RʏL9 |n¬yw?yc 9Q,*Us3&Hw\fq^w$<n)x8L iDF x(vKPDU5]8~ =@ L!\mOϿ~gL>F RDyXl,}MgO^&9=equTG݈= a _ǃգI1s8َK [t@CW\ήfXxenBx%I[h5i nɝ7cy)Ѣbɨ'|4cN }QD9޾<7֨ӉVɝشgi(d-괲8y . $ &۶j^8Y-kl+VMڧX5>6>,۰ł7$WJ9NO:G Hu,U8n=!"z'8}\!LW#wð'^/s$!],XM(x3T~Z.G)*vo`Rr>|#SFw+qy&S+Sjt$gM}ߚPD{DMCl@7;摂֞3srC R镜 t6q(s5Z阪UQKc,lʋ>[tl7du[3oYc }xYvHm?f{tU튊n/~}JgGԖ %cN&OM5'F*Ց]'߉HȈ}l8d/R; $>l΃"z8QzՖ`ut=-ôA6W&+Gu#<ˉ 8J w23͙ccԇ?2C}|<Ȃ#F&$3?Wt7,fdODA{WX,챨oäogt{&&jg"}D W؟ ]lѧqavſS"A@2:}Q߉C@ԿP{XއT*U|v<>S4_( A!aΒv'~2˚ȍǚ Nw^T+t.ӀDi&9G8L:'HA#\9cf=3 Z丄GIɠLKdyvW ڥq$.TuTtr,!]pIX 4:ᘞ)mp]C`{MO2ë`a2O@_\_{ `P f7fNTP g@&hK۫Rd&U-rbIO;@NLq ?rT2Rdt_OA}Ƽ8,g@V}"!N`hAWf-g!>)fLn+v/嚲HMZ5#~[mN+5HE֞KBc om8wSC6jXoL|scMCj` =#vyp&迡:!c£ف?%9 yH){PYFoG+Yu{ZbHKkBvMQ8{{?J\WZGb/ke,܃ ͸A H8kJ̓Zּ&w< sN)M >xEV^6Б]*v*a <DOx/ )9e+ѐ+2TK"-a~'43 ?j$ m*ގPȫoy>$}}1vtmkmkfppTn[ïhc\{{E>RƉ.usm]Q?+*Dx)4O0dA񀲶(?2waeJvU"{\199CSV&٭8הaN.|6Nh^}WM. "aHtkGm%ʹ*nY7H:4C3P OD!e_C\6{ՉS%:^H+i=i gI"}OTb9`pz3%n [4W J:ЩC uN`s'5GiLjZS AttL? ˿꠲㚁^ uk>p"0 @m9NLjX߯_&jG, 7_RE_"$U }R VFsf߲6;)] *}:م} kh(WֹBN}('C@}{ˎ3HΙHr`P&#(m HaS_{촟 RK 8Z玷p,+j;WQ!hoAZ'<:&GH{)_ikF|q8Ԡk`ӌ.T|o@[ wcf `z JElTxB >);6J_Cxazwϊ(L Ӆmar m@8-"Dt\? /#KkKQrC'B-MYXZ0Ͼ`ه\P,i ;NR : `"2 Y!o03C%_QC2}pgXZ)IM> iq0U:FC49}o9+7MXbܮ wJ 5ReLLJ*|D\·u ]P@Vg!jg2%H Zz۳8虰+IԮUGpAοV4Ly2Zwm$4",%jܕԅ홋$JvwVE+6Y`a&ezq]*@}PYAn M;A~pE- [!Z˸OO=f,]!.mB$manԕE@4pJ]& GF!g CEF2-z;hFQi`@GiUqd~ܫ,u0s>*ӗ>[Kv&M~mwE;+=0;^^BgB7 U@Bb^t[3mKeׅՒRRDia10u%ϱ/Qg*u a9Mw:a )ѽ]J;~twI˴ d>2 Z8'P$ tFXK,UtZo$0R7#5]`ۀEP5fo}~\)C&4R-XOU-,A u] __e)_@&Цvv㤏E8F:(/]4H$J` 1a}צs? ~fd& Q\n |pډI˕ZXyLl/?pqAVxɎ2s vyѭi_BXݒl(n3Vp5KƥIJ,zrafAsQ+-Bu׭QM Ib{KVj>u<,B-<sr<8794=Hb_1^Y8ˀ5?Ut߈c⦉< Z?⻱Vu栐9QG#XΘgCAU։EiAVXcrohv6B%dq#8X?c 8<޷㪸sG[z-0:`ܾāHGaU-ё1Ɖ(MD>b/p#{uGUG6ͯڳ֬F?U"!W%RwXɏ_ԇ9>E v sy#kZG3zOd|BsR[z?B;ByR>&aDO`yfM#oT\6$.blh秒S|sW/Ă 0:7j@sqǜ:"bוf|A~: I:Z0 gIFsٻzIWwTkqcHqrcԢT '%*)ηjtI*I28<Dc;ﻶ2p,-M(V6&'`UYJ}_XzIs3m:gT,77D0z{EEܰlO`a71濾yC4yQȗ%K; `pM1 uKZQVy{CSlq5MS0Ax^/D+>mt='ˬQ#IHp' Bx6ޥ^ZDqhU%W ~aFi ByxČ4|#;=nh?S.J~/#qf!14g;K0 q#gFw4?uFPց%;fx27ZU0 ݪd n]>A / B9)?/o jtY/$ѯ5juYITdYQ>)SE# gΩAfKX8Ë۵02Ky{t3R`Nq9 B;~\A v$v'mpN~Tz#[n0n w?X^AV(b]Q] =*筽f#~bSJz~*x .HU>1DNڣz፛[BUNAI wHd^*h2fꧽQri{ėOW=V)i\ݍCH{r]Y2jL$MM(kB™5e=8, q}}/" QJԓZ ݙ`Es]9(5Rgé&sGW{fO.mv6ml`sBAsE t ~ҶBSЩJO7_7 tg sC {jB6ԍ䞦ldn:\m ?|YԝvrUHl!G#/PN^L8õKE>t\)mzR +”i_?)hž{ÕoeH ;LBvA21&Yy08[Gh0-*r)+?׬nJ#zX i9s/ڰÿ p1ry[ L`60G9؞;^<=Kŭd5epJ7oZLqR$?$8]é9Fb@í~*:ih2>/k^#x^F糶^Q)xI;92|R? oexGS_ .RD7#ӃTG[$w:$Ci ^ctwI`~h!^YAL--G98ټ Q bq(֫ +Jb:җςc 9] XE%ac,Љ- HT!Q/2Yn (lgOf0B<)-2y,|ݺ\ĉiPz[#$`$׳2?\{LS?o<)&BW]ױv>+u88L );D 1"t q-t)Pz>r*\jrt݆Ŝ=v4x1泎=;VkS (wojm3#UZREewkӑds,Qtpn%ųsx% f+Ar?w۪O^"5V!tWz0q<f$D fBm]9㚧5WyZF122A.,}1waƠˤ1Y o<7M7.UQMmoj{L~DLPX5c'Yr+tmH+Z~u\8yM %a"jУՆotYTc@>@#R%e#_ #'=ٔ5>.2NOo[$t=[@RpD%F2X %&%VyKcC)Ol#";Yd wO({6 ӽ^q&ڐ_J`5V-]ad,_fRO^5bܒdK Vr7Ω:SA bf ltK ~Kܝ=kE9<O&n7TX^OW녈d_KL^@\?:kVƹf+?&jl7 :L<Yk [8a**nW.yRY0ېKG#it^~T2;gХEna0Oj׷,9.2U4tcꉠ4F0 _6Ho 4:*R^nWi7}iePkRɈyAWK#QP"r-%ëW@׹i?G[ Xa7ε8"W'&J& ,iǑ'hI +e^MO2`#R w2w~y( Nq!*ۯy5pQNGʪ HKRHI75'nq 3j3Q4tHx\Ij+zЁֺ'9nӌUb`X^p?wQ-S8[],(liB1u':L@sCf"tOF՚$Jx+%AO>M S.Aĺs\Bv=#$Dg8ad4>ב? jʧto %pJn6W)x( ~FFkR6d]$d=cx7;h&4aP%zf[5bUgmQ~kԣu+eo3M$ Jv?MbWB]OS*Lvg*ՃO|} ֤< @'6.yYTxVLx'NdTe*kM4SCe*l'aIlD:4u/X1ՓeK01*P`b {Y]"y#+^#{,\+@4ZZbʙ5g`t+ $݊!rޣo@oޓ֬Kdt]ye$UeY_BV?LhZP?5 JBB6" loB @gfGC 1!mÀ9SJlf?׫4t"jRQz ;@%Տw1~ Tf9 ^w࡝e{׸-eU2G%z3T~HN{ㄮمP>wGںH%ƖhIkSI]*EǏ ٲiˋ46SYQs bi4q¿cj ՂfSѳ7b]G4mBZK9ֆUu!Z2""pb1R3]ѶN`K\{f*10nxe?&P͆$7t4ZN~e@?+vssC DAJ`9B&fCLZ)qAa-CbK_k 8ft7WmPQ;lá}pYTc:c0ڱ' wFLwIÆ4V7 u&_cBl{s׌A/9f E_l`EfG/>^WY^f1my+^h S;b-o}s<'a{I)rqPI1erA~b缧pTG>pŚ%\><oYb3y좻okӹYǤyP.sfSH0JӺϵ) ;죤2S5(ǕFjTT [j[Q+SM:s8 Q`OoАlNHm[!8/9 lqE$#E \N("[o$H|MdOEPu(5 e(6y\WXfG}7d>Ɩ:cH*VK$%<ū,y('"g|īytqd^'3BUoR-esC\<FQJ r@KHy{7OOq]EEuE T3޳ ǜRZε#i@rkt`(נD;ܾhWK "[;sh5.G)= 7>23ڟƵW+[p'>B x.m7Y3 D^1("|ak 'T OnPT?Ԫ:4MJPJQȣ⛷੪ͦP؆'A ߝс@w.NBjD<jWi '^ l _$$:z>&|أioĴVDtVGHtחGᾖ[Sxy;=S#α13_!%AC7lܧέc9:1˓utտ%+"Ic {iq^%dWIM^E)I .+!Hf7uSJcKh9$5Y &x@1O\GaZ(C8յ Ƹ$YhZ~2L0 #Jgp+2}= Iz]wΌ=w;Q UDs5(ܕO6{Tcl9i޾r';U_م>u*%ׯ1X(=D8Q2۰/DƴmN'F1)5RE:2 +O - G:੕:ŇZ!uTƐ]ywZL6x q6EI%+r 9Y{sK8JYFQ]'m+ڮL&sToiXuTͿ:ZE.'J -hEP: Nxց:6Odcv~uI;7S c#<'1!O=zckm_sL?/eq"\Az2z7KO"SB䝉!2٢؞)a(iy[҅pLGRΤΗBvUˑRWyhYL&+uʏlGch^%C9K3|ByVJˮSp/UIyS_c |!ңó81t?\(d3/p{ M։lo z .X\F*or1DGuuW 4H5 TD][kq%ywbqS`TE+ d`5BOW֪8hVh&R3uPz..x9oY,.~0ƒMpi-1hFKzX_'3C؎mrƧ @ ӻHKк&Tn͟ŘYI--IWk;/.pT!v7uqq>,4I".ܶq UWz@ 2} UCS̾6f"g$KQΤVuGWj(F7޵]ؗBIxE o@<7Qr[Cg!).鑯&T;cyp׿ӲTe9ah6+*L?z.:qTً%MǐN坛D1=w=r:VW`|/nut}FəK7"IGF_Ůz k/e_@CZĀfbAHjnãEFXG2Ze~Fݒ|\c׏Z2fyOSWqUψGC2.4,4*½N20<sw/ $Q !cE槺׽G;:1n!3$ JTMbIOx|΀,m>a5K v o m '2[<˥K@w1+p0_U4H`|twDa%%yFˋ&Atu&O YNlu5mpWKE+ø5c™E^za:B#̵i쵯%vax6q\U#b,ݨH?9Jjt*Dcᎁ فQ[N'mI,lb NK۪|mg+>_,?<\Ev{CSzt_Fqqe$zqytA!eV9U3/9s=sՓm_ \OF@d{9 ddᛑZG+GtrB`TrTZ2`am[HE?]ZY)TSs]0CsN쿋 C,ڀWP$-*XȽ%fL|H!/Uܸʞem/Vo8gm(#3jK~2(/X{QDl:]!-[s>~#mwiG+)@ |:xA摺@4!|% ͅ.ҶCR\VPoyFz9fv Pg}pH$ ';o"1 Ȩs)H^.>/oY1e8kˉ`vVv9$V,HXwR+RTҕp+ktӗ <irOG37F "JRىDՕJ2eƔ3 ewp:"eR_m.Ri\E> v ~<2K&PL VTK=a`jװBXhu$K&<{^{W?zYA1E鷘qyڵ(Q:)kU%oiVUՂ0]{$病,H%lɅCC?2M>h7T~2y ݺpoMY@A j˖Q9]G++~گH5]3$ǖK`D0do-v;m{q]H>qO1=2+`920VF򖤷9Xxش M-->֖hMl,Q\QsC;phɲݑ:0Y oC}shkt)dĠw `d!5V[q3hфPNm+#-1ESv{xG-=vd]JGQ8Ť_\[T/EV0rz)YzX8F$g=YUJZ4>Ĥs!J+ؑ:cI}{8s3̱zLAC&/YXU!}Ho HK]22$Wm{AM39=x",S:o js$A q~@M\OD@Gm2YRKX2RrZnCm!BXuМO;: U?i5qԐ}p;n#ު.S9sQUƽ V]ɐ&050.]@GEb_5Omc'* n#$B9&)e}űC*օd!'8Wv7R9JKX8kwؘS!D6j35d "}Bᖒ>AE')Y:, yB<պ5ёyET ќ8n1߶dadx)af5A.T' O7y /qmTĿr!y*@\P>][}Շ9 j"Uttm\C39}ȐIĘ4Z_mN\zr_G񹥱5(٧$ۖSl7Wg5.Ïr@Pdoq2 qLm2OT+*l:h8IĬ;8`=%o|B߰+RO $.P B Ʈ(nnQ VJ,b}*"G9&D-1eJHWA XTa 1el;&b?f?% "N*vjh7s EOw:_:E w.0ֈʴJedqWK&70o NniER`#H|CwC-Q|pkPo(.C̴K /OYԶZ͂=E:E}S Hh"*7cL[u}Ջ{A_qFrM9 v+)F&&f5U |+׌%a< E:6Gvz~ۏ*{a/ώ1<[֖"[1ZwČ<7ۦŅi" SGrƂqNP#~H^d#SOwC#]Ud(9RHkF-_\Jqݹ(MLX6W|.Yz02+ ?-x+TD4?V*F.pn@?7Ml%wN&mdPfq &^PN\,!e#<&P?Vg48dVZGmO2=Wŗ"BJ׸iLFL' cγvUZL *K'[(X3ѝ%f> ^}"&N@ @{"tUmDqDyִTCfA] x1@LDI.\=.Q'lbn;p9&ݽzb B6NO/r}П8v٭+&IFa )xD=yT{&F &#/Hl \ܕ}4 c`|%-ϿNE>Q,|?Vw@]Џ|/lvǧXA>ӢL][ *iZ$k ݂ńCt)zO2GMڠdL'$(|)#Դ$Űŕ;8P9Q\2aST Vnen->)GUrJ7n~lzJֱWZiEEQ-J_s|2;8/ )+ݯf-S0'% )+5n($LH7wK:ϝy _UmGoN 4t*|,Zq,sj$ԁN25ۯy24 ԰WUTY!Huz=+Z5&_Uf'o 6ғW8uZBWWD9i'K"D s.VaW3,ʌ} mwy+ RFU#cjx^kO:(G8^~I 1 rλ _RPyeqY+0Sb]F-'J-°L2IxH@): ,6M.aWL ҽttVe\ / ©Z#JMX,3GM~<Óqe-}Fltx^28Y.@g{C[zk&&n؟wfX1/[uBy'vS@;r {aETF@hv fJA;ߐӌ8*~>;E_PK 0S}xW*@ )<ޕK~?кVx{~PfIaNg?%l9w p%2%-SG||WnXy x%tۘ/6mw)>A+ۂ餲joG**.)nS`sXA֢bg'D+yqa!IY38)Ї&AKڗ́A!O3kOoH<{ތܕkэט*EV?δPh`4Zve6׺ӥyB:EWڬT­vF"R.;eoQäZ2G^#1k<!4ÔʎU0+$1.!̅pxܔviJS=(f(n`% Kx|ٯkreQ=qX&Xf-wLdCWK,]G傷(kxdT!.B7$fyc}drFwVˠNv=;\D!z+Q"~c;KfIޞ& M$t*pA,[e~^_F>UJ&tx%a*Y_"hK@dVҸt:ljVȪ(~kzދv(UG?^GVīt;Q8D|(QF %zh]C`+&è.nI-Varl|RH*oD,)a7TWŀj^\V< O6.Ovl!uA"X.n"Se;*IF0Yҍ$رu+*#D!6˄MpUTuJiBız jں4)KHUJ?X;SoL-X#')g:՝@U݋s#e\᷼,S |= H\Kb|*f&դ(c* $35# ñ 76**.VrM\&W<68~&xqg-k0 E7H0O?RM h'B'"#m\d.`ЙTfW9GV _bpGG,s!ˉ΢?FH/)buO+=O2bTBS$4}nG>½(f74<" e^b(2hy2gyk1UeY a5zx@wsS0>T9/EH,~']E8«+4Ivppg8_=PjITux[=ڰX5'`A L-pUş2gKE} oZOuZH=yW\VO`fAg^٣sk^Ş&1X.$:5J393 4ɵ):xj3X)M*%]v@vuG^X6#l9}!$f<+BqDv2;!=7[P ~rdW*FzIlW"k`Ł7~]Q]=lQ91$| p&6m`Õux^Eon/{jjWݻ'+EkKƇ^}THtX^/lěИXnaA_jf'.[ft?֤; Ma}aVWNnF9v!Vat+>{eΜlU11}7۵A;Y߸N˫ 96\MOX[aU<sG2 (p(1T\6ߏ6Y=ABJDrrfchO4fR`{i898Jנr=RnrhY7n!*J/ R:T9)^ۯ+ ZHu8SynraYNME?:emj9"כD>Q v4y\4%F X orH9E؎-ЫdWﲣOAo`WG }2m9#Qn˒‡} !R:ڱ*2WjxLۊ 2HK-)Y* ]FEZk1+w߂^;H$ #(AfaB'r NX=ws@A(\Է´2.U)3u$κ9i+#btPd{"dW,NBDoьF.-6\eFiXz(Y \@;x x%h "ݤY)l b@ĝIuy|!Gꗹ)VX;#^=`JFyc.S7r|G[WhT>JmQtvNўN"DPGBx圦KTR%RBZ:7'݃V Y:jz+8'mR\xœa*9 Ar;!-Q!LiH\}}eڱ2ު&STF>R]Q[zs܎kKy;W^p][ir&Y[rZa|S-+"$Zx1G4Л O7#Qو4 2 n7Ji7D1 J9݄ @q ^X\꿥*I{\,B ޼AӟxpJkVރMU ؔS pRws5㯼 efO֯;0D<QsYl{[,FҖl:%[/'梏ʉ5ذ{I2tU*dH:yŋѷC1^Oz L/΋ fʈm~괥xϰh\ E{YqX"R\=f>KM/3 ǶJʩr-#xXXoYk=Vа;oK\Z#:,c&`]5տ-bK㧟LI7X|:37Gɕxqyh )[҉Sy@f)gT }'8ChIhy 3 ^k3"PH{d7L %X%m?J̶A쀇w_ 7$JRj ?#YB{GK[iX%bi a(Yw^v?W`4 WBs6jC!M/Vq<y<`"b¢+7Cv_`4>V]N ?{`w7O"4p@0t1HJ̮4mTGLXmguҊCdkas ~d|n8j?$ԇTp'?T))\)ui - &Oz;3~3}彣СB(ysAJ`7 b oV i,7$\ ]"odH(YoEjZXN4^"tGoq/~Cj\x'6 K(̠pSq>3Oky'IO ׋vvB؝*y Z`’H#ore1Al Ɛ3:̍࣋0,xvްqJz*֜ R^hn@tc99# 3 )6e-֌^7'"U#&çУs>+rڊT)G,>l4:*dW(\8v#kGh)\)]gW} _ 奔])N0<$jZR)ց]K<`>0`䑢,hL}|9e6L?.wndd1gK'f:ZaE1 t usY@g:-=h<9,zP;{Q_F䢶.1VW~y (oA?*%Bi|v;Qypb#B[ynOT JG0-Nj}|Z@#WS3pɨB;: ]XL$6ZӝcsS=Tl8r5%KX򀟘jɞ)Iz!pwXGtWNUhG$j΋E F *oT;_Q#MڊUAU(NΓ@FEp _WPrVZT#\\~ vQ6s@3yUE VE<J4"V'~'.__tF@؆чI%5B?6vHe䈔+AF1 54e,/P#蹜4)D߬y3;jo93ǁET)q1(R<OlV6UO-[z>Uh$^S\_R\:_.lk}w@Q`9ZoćZ{C,{J4kGikUdg`QqTcgA]W|w"h ƢT`:;Z߆:֐C 3~K ts/ }41=wOtƲgqu __01Ү] Rfhނ0K޷qk8: GKnyAћ$@5օZj)5E=J(-}=:ՕՂ@LVfRX(Q;v!KJo}Þa^J.'z%sIJ(N::x׾V U=ŁUJ<"7-xf3մ0ڨ@ qF2|=@hGcjhT 9G&!~Er9T=(d|ʔpx ,fņ ]΁LOuڠbB2O4|K.VK otu_&Yvձ/傖AC#%^zөQk"K7!u)&Yzl( ?*Q7W f<<tFuP Gc4Γb;~G|!:hS.|vA"#_Ut fyg,mMz5 N)s#R"Y߽|fHԴ*c ʤNqu c$v<鸂!8uo1y_#: _@_?b- ȤFoCĴwPۼ= ocمxźEdaa@#hR 8$E5ȶ=w€.udu8#쭓ÿ+ei=u]I)!06FS'Fr7|_&z(*?TL6RmJD%GϵDc4|uKqv)Z^XKSSPmY >( bޑ3ektsm#x_v( Gt𑞧ڝیY&-=9ț@$ZO$T=+4J-iOsa$:X(G궝Ĭrh݌-Ir[ܬN_].>@6/K7pp_ybrdlZ:}Z!N\xHѷ`8K1ɋ r:Z'"IqML8#^g'5K I`h㄁nLQ"|@D-,&IiZRjC;= btTýz5Q]SݟIRMq;<] MW0VO.Ok q8[FP\#,sB,Y1EY# o6X1O@?Dc1ْ+)`$4_`o=NoPȏ^o-x$ffi:R2^UWBg1ѳބ+-0K+Z 齭"Λa 3Y'5\5K{}P=9ڲT}ķ#:xؿ 8o,y8d7͞\ʆ~Vf? ޘ͋:RDo8z. 2i!+= ]I;?`?7PW:\9 Pj~ 8de+"c\y|6YM3wv+y0wݬEo M`B bjeW`zFŒHX;d˦:;\M8P=K\?ҖNqOl:_wWt6 ^Z}tlTxV<`Om{E6@8 5*BRb0l,'"<1OYsi{F^9J' Yi'\8P٥Ȁ\1ZFX 2 LP{%n0 .8S uG"GkK]a0 rܠ˧=rW/Ka4Bmt6|C@+#`SXÛUY!fΰ/ԓ$=rAX:cŊ`8&( !jPE~K#ݐ-H\]^VVW&ag[yڥ.LvmX6 u$:8RCY#hER`VwakFXwy@_/spu_ F77Yo/SwqP!Η |[w|od[V#"xؘ &.):|Y|! -L3VΟ|@ dŘl;$`+ V@1MPrg12E1.ơ>+h |qJGHо"p9f~9/Y؊f+ګ#3HMLze;f~su|󒙆ͣ2_y{7raAj^n;SX~d~4zē*EJ-skƛmĿ9yR2-5a?0ϻAq+ERE(bb4ŐSƼ*Y6ȳ*Hոf^nQbU~U&_p}+x Z΃FSZ|e@' 0PPŖ@Ͻ'c ʾ9,$C e(Zy4E\~Z޲ / =ͯ;a:+Nhj$}ٔs,b-#Q4샏h6j9y^fYV~ @r>QcgBDSX$`GڹD h̦TfvlatHXR?1mT6qvf#JjuXh/aG+tSIr47Ai.auR>e7-`b 0ٝ *G.R1ieAOvូ$"I>oRUnu{#`&Zj9b&mdH%#6hV%ҝB,&qzqS(WA]q+cF$BM_S#{+'!H7\*4](:7=jța:qE/M餃1YR "d(}>LR,-)QZań0=FndQ2b!;#pZ1/a)p|a6pty@Ж)0"A zE2nTZby*vm ș&? -m4g:RW|\{7ÚJڤc3PF_FsF,qfJi @2&G_ԶT: HH!vaB=*t)M !e+  陮J;R\Rok}P$$^GD- tJ/ @QOͼ9Q<|S yBV ynd"n,t >i@%<5&%bKlIYC"A ;3fMmM<6CG/iWJp«Zw|z!/)݁[Kq&32^b.^&~uJ >){Xh!,j}UqVwSj{29=Y'(|alt#2\! ʄ-j\W^ dG\i\cU=Vyvp8 xrc]" g +P%k4sފI'2Kѣ9zwn0qK'[ {|219+[֥(Afk3/ss4iɝ7}$FZa0x\i $l麆᩠d-y]Ooxɴxv$$7&w%q KZ)ONSATA'K 3M[s]dBLH03|sB^ŋ7(_fzxy0#36fUfm|!ȡ9 ( vH #*FPM U9yHi 'I=gHW>HDYhYƨ%q3r ,gB-;(*wg$9>[6; &,W#x͇ZpTF.LykD!4f1z#N^vPEЄu0h O@qDcd*?K4r Eq:XAAeWZ0⺲2lSƔ߳3sZ5(t]"FɨLnrļzO#^ R?n['47raSU. Mɳ,l.vÛ>FQPkQ|X@Xe <jF/GE%g^>bә Gnoܟ:| jҪK'L lGaH[9}S7tmpU`R'RKox(M@f۾dōrf x5g8&5;f*3k}B7Ajgś\9]f!_щ1B<( |J(U2.]ՖuapxBA ȓ~TjjUācfC$T@!a=~aHoZX@>a A s 3aNuj ~m)Us/H* u ru@]#R/cF: qh#E-mZYNw}bq<M(Mӷ%c&e0N'uc  &ʌ:!6R[25 CcfNNו_;?vOGmCSx`Iyd..v5#x/\Sْ(8!bf6f~ATjĴ=SﻢjoWr1K0:FMS6<.X9쯐كqo TEǠ|OcZQ̅o a+K,X.*eRcםQՑث{B]ۼL2+IJ 8Sx#JQR)ddNbgAh+ {">[E;R`IW Cpż36 ZBܙpOVp9#lM :[۰pIWd/)U4JET iv=c*j ja*+)WweX0Zׯ±ߜd QnrT 8q:Rql7S0$ٮ,)^@VIIatRD\J}gԘį M[]oB%Q(rͱXĆ@ֲF/\P۔RgX.0$l4jIw0V$#׍LʻaMW>R#AXfW3mQ#T[r%ٴ(@Kp^'Nmg6v?3,m]/NI;=㸤[<:nJRbw %*}'CʽM *aE8`n6̢,cH'XJ $s;,diΌ]cMDekw>;$GQ@$cZ({"yda逸>MWC ?j<2ߣ|%ȝG5ͱ#< ]&+ #X5e3CG:;82sp>{5U~1\MRv_ 8w11o ٟS-W QӕjjXժy!"rG$s7K:λu† !T/TlLt5 7/&ϋ*<(Sbc%&\cN;%evB&hPd;wZAaf OL)ut.(lfWOIoOHbV0S6*rƽ{s8(l^i,z>4\HҺTYl6ZH\VT:ȵ}3E7?8uVW_3Qrx$JZ$r{S+7ǡ:Q]r#Л%ᛐAR:!zN.D$˄~ƊS˸Uy@ns][Ŭ'1\/D?!t.ΰmun6 _swGv;a(ztijm/uw`~~mFF=UWv~,95}3gCߘMһLztgPV#Ԉ D M }VW:>h3ͫ@3 psޗ<엪VO9S?OLX&b$Ž@أ_̢LDž̜\,Ő5Vmkz!\"h<p_GJ/:Hђk5:E622Q6h:вq-K`Xu/ǸjFKvQxK@!5 r_qUbQp ĞdXdrEj@(jm>냨S MC_$ŅFLR+51>j R+9۰šeB0đÙއS@Y3&a(JByۃhc^> [f7ȴy]x6Lj b^eC% ar[R|2#OcUjP/NE@k Y!2;fÁi@cMX7#:B AJ߅:mkZ]MWeKMUHtĆ%QXܬ_4#a&t-)E J"INzga^PڒlOu8 5mzN9so f^QrSS]4b?' @Fޗ ZDGcOO-+7Ϩ>(4*hyx%D3 7l=~E}QᩬY4(Avr;0jҴ-cSfZ~ܹZaL' cGNY.^є0* tIBK3hru]j_ ZєEţk 1D|ӷ K/-H]\םm_zXY#@f:2lchh(f n0aPysm*3 rLOM[ #_tMdMX@{'EOm1qX7Cd;e5nbX{Efs<@& o9. ɷ \ D(gDbn$<ekd% 𰡈ώ!V;3lL~v3[Ǎ䙒:c%njOPu=q4SB95 L^AkBω(|sddL\C;}BGa"ee\dsxXcmfH!"l/)?Y`0# Z=D|$dnugڒɈ%(bͰ3rk͵yq"%ST8 ZGjB|: h&1C$³>a GDcW({V.~T@ض(n#/Gs^XhZ6׺IL@(=5FX8C^٦d2%q_6BWGQˋ6k_Ŏ@!Fl hN yZkoB߬.;^lCz:O2,+q Z=Z=-koO~AAo=n5 :."fyztAEԃCKS^ym/ὲtFA CF;0Pc~xM+~uK@; jp w}WU|sHmsgI|dOKn`\l3iwR0]Z곉_54.p6 Ea.~"0 @WVy3**kC8h =㵕{v;aRLSB_6/m&{ aValٌdv-[_g'j!eZP+Ss7航rϥKdP@ Y\.(kCexO Rz:>ՇR=ȓߋ˞1Ѹbj>~9ۙJ|,zY NJy0PǺvA,E]q<ne9l4l[RKjwކ8F`3Է|?(hfa=5_ wO3q`c&GM_A!<^нHfg$>DyZ'6v&, o{3 PyLxLuEAGZq-`6u4rQ'VrƚFY`\D,~L(f?pRW-Y m8l\vZ#858ML>ǔq3FŅE.OVt  ?'8CdkEפEz149~@3Si sc+ :#a- lD *-Z:* _p])E.[h}ZXT6N588U^7Ygpы%Auz~cx}a!Fh*ܬ1W9PҎq)( BUAeQ @6=YOThZёPLʟ+ !>RK_S`y/=C5I&V+\n DCߔˁ~'<:"Gur*ҥ Ƃ92Fd pUyǀ3) H_ yϥJp2P辢bZ  4 "ɋFΫhBQzF(^aڭnO,}x-3ZA5s42@ۑ6-P\RTA:V_)KA`.8o)j[l>&zS wUL%^n58ETN'Ǜ3uvGl7(_tl};_5|]F;jy# `ȝE )g Ml4w-;qb$s>YnC탘fMfqҦfn֓ЇwAi3!SJjb^L2=OGEQ[Bb0n,<=Q]u]XLDI@;,ˬj6)HøAގr]**~'hgq3 UaSBOH#Y@5<kbyvVP}rS+m0~b]~_I5HgcIe[^ʇ_#[ yTS>SrcP` MI]y%NV&oK;:d@ eqwcM.JTIN.v2!i> 65]A(Q%iqc99!bM~`sY<,A ?L}?5pbm["WČˋEDkJ䶫 MΡ<~=7DeP}R.f[ඤz+3Ql [}kʣ"f~Y[Օ.eQn;HTZKEfMj-[w/-NnE3E8u #jj}'b[|ǹl}o߮)\ XNI,Lz-h=kh,3ckr|'ݜk`}<Xڼ| 2vA,b(/U<3]Nι B/C]ӕ2CDؒ~KԐ|RG#~N-ymm mȣ>"~2VO!o.yюQ*UJg-~Snv!v@w#n2DFg'|ԩ96AxNlϣ[vn۔ckrqUj 8 駏Z7e)dT7aFFn[M.п88c󿠂gXGݚ훬F@13,#l׷耞oơ^b̍tD҂\|>awh 9xY#͛ZoF G 0/&`t`u:݇p~y8]MCJ60;_ PD<0'0 2CAת|֛=< 5̍T+Zrׁ#jh1$\#0U1a4|u7@B.5VM};;4kɁBh#\9v+b>u`#!7[9$U_"^y%Lu[(Ҳ"`ݷQw+qc͎ea"LNgϪa"5FLq=c|X)n73{PQP%ZF5^I H]&Usz"fy[nI,% -H̹.DD+q6 jb,һtm s ͆A/f(Rxm'I#q@uzrdۖS&, ,%HvN:RBgpƓ lDULw_Ɍ}fdhX-n΅7.E,^ ЈdC>s߽mL?UZ8ٿ?'}U ٖ5]@Xت#\ LR ]$cݻ ?B'qt6 ՜ f@- xKGx}撹tj'a$k G-_綾qa P27dtr{ĂM"ΆJ͞)>R7?U#rk 夹] 6^3T/@m?-Z=v<,i[N`>bL"; N:¿7Uw)wP~Rľc4wߡx E3'*!&1by9L\S9OH, }) b͑0c[`/x4H-zu4#gpPxU~1+thok ds%s/% x6Iy?Vy1+ ?E&$xWhɃ]Yz :Li`_  II /qޏ݁?hpVSݤR/NIlWt7neѴ(\J-'˳Y((RKW a֒Eב:.بyn6FJLHў:9E+(uyl,16 s1nSǣn/ξAjG*-1/<5b)skۍa\S㎏?4SRR$v;?_moO^|HbkB+X;?3*/L҅b3,o(V | ;U/16 CW8(9Z^Gngc1lC 3!kİ?Y{/ךyd FB_l,/ɖU`:vVyg <60 Z28Ço3UfWz [^A "PDݔ_,hBd>TZ|תEa ܏W*X/鯄ȃCP*|=OKe ȸ'U`m8gًP3on,gJi><:@U} q1J9|mp`qx:ګ2YaiD<}ra_\ޱ P==ZtkٞnuKoBvK5A;K0w[Edwsx؄)":qr\'{g" ?\(/7߅ @~6E_' :HJ<'] SϨsfٞ9rϻY=>wZu̲WpymMRa'Ƈ[ QJ+o`DPʹi|.~+.䅆BP]G 7f`W.1Tϙ.QOΠTѼ="ئGN*p]8ܔ7ӊ(h-b%"T; 6xL(D}ecb^[O$h'$i3H/W1ǑVZ䠐܍ӑڷcBX"s@b(:A}IL&[5腚Bʯb\+Q*Cf=78@l *GDV3i)N`>ܾj/*oB@$s%UNQ# dQ/FFvmKYeCTTE=ዠ&arn|j(&һUPwp6Tsؖg#r`Ym\ _gn.%H(k>~R('( ̃Uޛ&pL_hA#ڞEm )U5\v3nr:A?gEG &X!:@ei)1JVU(q{=Jx R*e0L=(K/q-/׹eK.v$OAdk~a 5LTͲ|펮z)h7gew: 1 | >͵+i*ek/ =%$:4 J,MܚJD:yzԞ4#Qq8wԔ.!mpN}X]nc{ ڊYi,ж Ip%Q:12 /2G|XNHL=+*_3PZM4r4ZKFP.:=Lhd~4wl$FESHB6'f@ T)kl(fg!.-L|5Hv). j1Xa[ !3*~auJ!xj~j h_bY2e=i4;c2d^6vը|EV{S 5{6 -s'=V[c7_v'E=*~Kϸn~0>G_U.w|Q",A:s })d.,sP;''&atʚG…KF]-;D^3x͆:__WDH1gSG4SGOׂ<$j鏓2FF~ݬ{hZP 7t[.kmt9&؉w*}<] _-ֽEW*{)Am_. |,mv4i4Ri*hfTÄBC4:mbePJ}=0޶djXK I՛ T˦[!ڰLojYhG $RGkC cEe.l@޿^qXXtf9#MCJ05>e-cWXQMLqѦ`!ҙ\ZuL">ALUP!&,>-` Pkl{*jajHP1x 򩈦DOf4e|8*f 8sCV,9<([Ò>SyK>-yCe_5Jieat"oQmJ7RTCSӧu?Dr2+P|BQg={LJO8Rּܼfk8jpUlBJ+|\k!`j#4‰$|1'Jn44sGLXࡈ#HL vce);xhAܶ4"z;\Xю,h`/H>Ê%SX}=P *W# cJ.RQlgǁ^Zz9!5HQ>;x4I6_HAZVS{+=3P0w]bu5nmuqSܜ狵O .转jO[(i(AG0;Wo||nZ@TGq.%&*¯Tg}nOdkTĤP13pxHW_o/+A YzpfiΓ$U@pO)`ɽ}>-ҹC|!\<W_er<άk<} PO}[xBH]zrL+_EHuIId=(S0⮇N=pTË{hθzELrkx> L0օ$!8"v~%_g؝!XҾ9098r$gߑƙ x:d VQ䃆Q揅 P X H1ބ<3 8q~ _Ds)mwd+9_8jTBmm~^8j:a?2u%RrfK2=[yk!C?يw\2,F|zyz%޺Y#-%@SK!~faqHFBOf(/klь=dWV}]g'/خx{' ˆSH]fSņ )-mcQ}zNNm6"4vp-?Ysx \47#PS0gB(#g0ͩ9&QX$GK 6 ߇oVXsi˜2|7ӼL ^qnQ&&v'$ džƿK~LQ)gA'o;blF_{z)D9s.jN#tr5,2;uW[϶,eoj]=j[uA%o9u7k`=PQx7)qďo,xQiDqVWTʠs(v."|C},^c?\EyڎiDъ@{RG'S7Y7/Й]bg1 v *{>Z`ϟ"\8~\Gvyr7$?@oj~;%sqHԴ<9{Y8=~4jvW0@Y1Z8jQՄz $pGH vdޣ#6 g x4M x-iLXS{)gm+dO6^>`}2V!Mjl/>?U Zv߲B(?ԉa@rR07}Qt3/ o dU q=ñp!rj5(7<8BG[H_L/( uNL/ N{9*)KibDGϪqg.s眾UTOk'+Ч]($BR6#2yZR595Qǘ|;Aړ1}`TbE]JݐXTN^m:=F YŊ7֑IzJ\^\-,v$ͯY=MA*4Oԕ)f pvZJ|l mnE#QgܛܷGi]XgVV*X:EX=SfqRP[#H2]D356Ydǝ, N#+Q+ wi}|`E {"pقBkV_Ћ^?Fr]F&uqw-9wGA&@!9y2N~BXwSd%Haup(4wr 7c\Wz~Vaf&<8Bh:sBC{~c#Mn4@¤ӝsRx;:>Z`8N=2qn!}m['K"FJW]۹d|gj㉖c[oew] %lʵQ` cua:[}Ї>aP|% #R85$QHubSTi=I' #-@73a-;rc;}hEtQ|yf㒻ddj\̬RnKRmAk54%:n}2L/ Iv=䟾mqblO d<CLm]Db#"1OJ2/e!C]TF+Ym=CvoELD8o;sfTWpdU9Q4]ial]Z? ![|.bثšʚv-bjˮQ@Q?%K]!;<{9̲ׯ\A<-WA3rF?ǿxT-^Z.VY= WI9CJRP!4/a3V̮/Dr9 jUCgom'5ߎ1a`EMk/D) C:ƚp*" !Sy @ Ȟm?a =ث"yo<^7U'l+;@OSoWygႜN7ZG'A hdFĞ":r;EIkb%Z^|meH?oL)~(obIX"+V1};[:kg J J6C b+=r@ǘW!d͈F`Kn^2"^?hCl-X<l'٧nmR0\sp5㼇,RBP*ΖU^y̽#SoBKK qd6D9r> %Ifw; RPM4h8g7EEZ\ޏneĪ[W;nYrAμQץ !ݸtcW>{u@gjMoxb-gDJmȄ[Tfd3YsGڴo+k0E |q[{ژ!幇D8>d'ﲢFϖpܙ5二Z9,8r\[JO//K ^^d"XX|9 En8:qg$>:tc@—IRozErKMR֒amğnRXѝ)z=JEc݋f8bڦcA`lIn ,ѧjf6X]:jl,ޮQOgVR.xRm>zPp-̳ DV֗)2zL/K!Ba)#>#|9K9,`e՚A jm< '4SpZ`3\˽OI'NNS,߫60'/ȥS%IVI J514f$ vWO,ŢqLjVl_|̈t5)Y%V4=8P S_c%v"vjwrW;<󃂚7ynG%`3벜|[&vQm=v|Ą5^kCd'Z`:6Wԩc ewX_:n0zR82jb6%@HͶ_5,3AP-=뷜,H<]]~iV18=Ǜ!ܘh*pK)&ndLh ޷ -; ڌ{]v~ e@RFl),*@l *tfZQɋGZLqv*]8,Xc+lky`#LMsa3-AuL0o|20̋[Y0s+)g Ww6M٬A4ʏJBD=669~x`nsJ+W&f̙}iLgtAic t& 70&a$NH+LD[ L'5qS=_.eDQB/E<>3`]ED~$蹂u(@E*[_vVxZ[eecFdFeSUpQNkB"jEWs1aM.0W8TbA ){ uh h 7ٳPR| ”a8esZ,Wbu݋VRb8a@N#(5ղyP7:JX :m](@c]kv"lDTԁy&aOr?mx?E95Cku;VDPR*T;{4ٳ|9-fwpp]T2P8'f4oG?,~w hl疿 I\RIMF&_~ G{`JC]ji ?'^iwt_H#*d8|:xa[ t/@.cSAF߫ҹTIS:@`u!ÈϿ= ;Bmru"?D7dLlD(M5  R@$Pkҹ$4RstCH^T941r0DiI D5ڿ^ 9]Mɲ?-i"2ތr#6ZuuK:3+[n$ČIߤWC1deEw'w[~O 2hbXBtoEN\'c V6DŽ2Uv*O5:LͅS3nTߔ,,#/lj:i{u߼SR4é$:} H ߗaU1 [uvGs-yT_\+!YO\SIWf}_OW7b.6ǯ) +D :KZ|iR덬dR\;׬2F10}j]i)hM8~}E]k&Bjm,K˖AM_ohlm8jGGS~L ͢;WЕMRf 3 7/2R0LV_(g!UÀ ;`3 S-s7TKj`>UCi oK8s`P Oً ׾n=6cIDkEU d4s|ήׇ^Wl束ڂ3aTS3lRP+yXrU"9dGW&1 -t؁ѭ08q(Vڥ!\"C.-uьF)uLh`-{VZ(h@|N eEu,DCoU-e$, ^cYtjaPo~E"[ ÀHĆBwk\PE<9kuvi7A>0K0hcB CpDŐc'f.NIXJm2D?e,Z+!=52g%qᰒE4V $px L]r$ee+yg]}uDs}['gۑHeUKiB&쾤Tqr"v]ᵚ<,-lEBPe$lt[0C\tT:Hqybl_BNqn}C3ܿ5cXm|1)7QhVܮː~%A]3΁ja K-`%nlE`,ޅq?O[KmsJ+\967!I ,(3OΤhCpD'@)omX]D:I]Ȳ\ |k,!FP|0W'[UH^w=pl y+4R'$4A?bB-(󮛊o2E@fCaW1NF3WR[RgmߺF7-|:kÝUZT=ϐG6T"sQ: &Ot}Ws;pl$6a,ccG|h`Gob{FdH|1k:^C/n,K183+p81Mn `( jayV-fk3Ri:C1F s +9dH@p'0MP%y@rn!7|G' ؟$̲PF:eۢH9?V\> yKzM߾y4+9VV]*N}Ò\an;؊ipYX2)72 ~Y&bJt&[> =!1c  Lz r{@Ǔ}9[ޫY_:msZ{=H".9PbabiɯBw;t* ܞs nl:+@&BU3,I'ǖO IT&)tv "yFN ~|O܄$ţ)Kе,q)JHQ^O$6uE 'Lr2@!1m7kg3g%ݐu•tZt"N/)Ig1QTKݖkXٛu7a 0]EAlqyGGOD';^uZ~ C1߰յY6ѽd#F:? c褃 &-A 5QaGJ^Abyh_~.-L1OXI[3N\)Y|;$Hb4fTqK@. S@ؼ372A£_ ȳ[,I,DpǸ]+SBV$iFt #5vؼ@'!: ƙ* MΕ:\9Q@";;~ӉNbӽ4VS飳;;~Jgy6B-}hL$r9b}wgU*N7.Uh6V:ןՌ9rN Ɔ*eRNN< `;kn41PGOz>Uz{HK~I3w,^FkLsIƒdK).xɛ\H߰LFwhQZ*uT|)HL&DIGh( 2ȠL;lFfJR!J^L)xl5.1k]ϡ(nJsPS+&;Xbqt%;X:+?:Lb?m`T}HȆG+hm@M3)`?+i(Ua2 /e\Q=[IwX‘|nx(\ t!GS;+y9k!W>Xjʯuhwl>ui~Kgٓ DXl*RN} Ý=:,~~rfOjLI+`Ma^pk$ 5L3f$Z6S9zr2HDJ)zGܿ/z#,ra^ Ue2h)ʎ-V`yBf nZ+oZ@+K9??DV#/HlpRAY鷛<}OZCkX5إk. T}s z{eS 1[hxY$U90fp="m?$TGz?gK],0C. E.JSv©ݳf5T f|=sGN$ogaazBLR{n 81M51+XG6ODmpX:lKFӯJtw-b]Jv Wh^E/*eM{n82o=FNyHe@О)F'NSX>îmyr vmXL>7,4Ӆ4 ><`Vw ~x L5}aH3I9mw_3 qAtvAQ*L~U(Zޙhh2n]@AWZoR')y6Զ@]t[VP{}Jaq/yӜ;<}0 ?A ҫXIWQ˲WoQ~|C^=aT^6Z`9pOxe!V Uj8:Hwo?LT,F5IB_w+HX;snzRW1=njV3Jt%y>|8їCDSF}uFN#>2sǏ)Бp'֢8؈6.Ttem"0 RCV\-s[TQljo.%Vh;ɻ3tH x7[O9XofSGIcĴʅᆑ&zj@;Nx H,%'ak-? q['BDP/ ێ/^j6]fk]MxJʑvdIFC} ~ wvr7tkpEBRF1 Y~J^R_msfrt`R6Իot' °Dᮛ&:~K+ [nS jI͏YuI5@Q T.%S8sǢ'l>P+\BH ƌQb5u/>l}p}qJYY#9Ɨ /du2$f@ʂ~QdL1Yj sb bjfYUp*87EcZkRaJ^ML[OVtu ڞwHZLrFg UZ dGj,wE "YMpc?2;+_.uSO/W'0x/Uc@%[.-?48njBa/PMG\0$(y2ߜOUؘGCZe7q+sCKXk&^\A"@d E2wXtfQFwa|;ZTJLo۟C(4X<ѾY9ٹ: 3&l6kt9V,"NzUnUN,DY= !l}x.ɃBHk n9^3֮T;I1 .ASo^f.Un&,Mu;?sWR-h$uT<ڗf)wU U;bX-U.i% jaA'շ㥪..i\p!(AlmPcԹOkSO V`d- h. b2H[Z uR? $ n`($&!Gn:خ-5e%~giB"c| ݟ,!AghZx~hiTA1=31o_8O*C穚8e& ^Zo9Yh?꿃Gx"E7:ZGՒ0oz5I,^|)}AAc^^T,2z'kE"ii^ݫjYd|wً 3B-$M#$$/ҋݟAv^ؾSلY>@t~x-Zm3π{ %D]gI9Hy嵸pm!aF&FU~ m I+~L Mmg7| %J^Ṭ(h3cIzDvF[rFDwa@ x HH QY"r1kyE@e5ڴ$38UErY]m 6E)\lO}J9ߦB}%(G[u `RWVwGgUR0ٰm;>@!igO9>93-dB7F"ng[L 239%W/#=i5#DLmn*9\QoW֙wUيX:w+a7 rӨ'ؿtD+l <jF aM1vnԼE"t (c8Cuʶ s2b0"&ʋ*\vn bwc0/E.ؓōߵC6 Vk@0 >5=쒽u)9 N@o=jOfSk1Q\0%|-/WGz:ruwDڢg<$$&{$z>&fIEd-;!UJ@ WIJeZ0IGr-.tr<\UtM~bXѻ7?vzY9=Nx(t*?1iLb&Q12!i><ާ!jq2|Ӽ:h$i=C:Gɑ0B8ɤ#O:jgsi |Ɋȿ>7/c73p+ 1!aANH1M]ى¨^w:Yʜj:U+|azCN5 !GYVlIi$vBj~ÌMH 5V}d x57}74@OalZ jK-9It(S5\Kj0Na%D8܉q'eKآ{[6x"uF0wvlRC/^s/Jh |[Kr-k>d!A뚌7VF1qqEPZcEhƂx tA l۽+K_b#<,w,W%/,8, E(ƮEe#.iM^ȳU9b3]=f%ē㒔t۵.'z Y+w)vӤV/}_3oS*VI֋ps$9jVUͨ˄$×؂r9qoc9"XL*&xplIhSΌ{d㍰h@ @W B51!iP(Ѱy;ն~ յn~=j;Ug/35f}CÂ`C#ZI!JeJV=/>KLIQ+ܬ٩kĚvUieEjpf7vbTp׹SyDwlz|bcDk; &w6PH$ٮ=Qn%$Q44Cӱz\Ш?R7ƩKe|/ԉA ~`BXy,YZUXo+pxߓ#gi9Vta%<єv_k`x_$H-&jl'?Aob*g1%(J#8jk7[[v]gCAӝb+«4nlj`4kWw)k dqO$Qo܌j4ܵ-쁓CYe&'/Eúぞ1(H&͖J:BZˆ6 #`dr%3a$6 2&6By%' C-Mqgee˜=*^B5DcswAzO a_'`]nUžpI*8~?CROPvb'zLO+[,sHhCKɅkr Y6XIMw_x6x @"!ř 2|Pzer&pһ֟p6h J$r^<`].9 'Ŕ-#`DBaz7N#z}9,Vk&rGcpm'^7c"5jk7ל'S{:Zso5b|޲ucԷilwRo9"cC?WkZKYk3~7:3S'NT|kk7Kq5>܂+ ?ޓ~qfӔ} M $@E.܅.(H W6lՃG= { ;,MV!#t>bDVh%\ITEE5[2fZ&Q3eAeruTN6}!.l[' @kNtڼ g.5ڕ2^\mPO ۲QcsN#B^^Om!HmN۶^Ixpaja#"O{FR̷!e nTo^ʎ̙];q/؀~_>_ Q&%,1enJ>ַק}ג(T*RnTNSFuB.%hˀl0:Z'DfV@oCR_ݻn%٠wa9imz'NS\_ɒsN>|o)[IJ5Pz\ ߨo} 1m%>m\H|sJR2B\V`jV#[WhPI)CmLҨO3J.f)]o_m 6(@q1E]]8Y|CW>^g&M[p D7ẃ]%M~h-zϺHbd=&GYB #`+XC/,NqpmD2z#6Ps b`_(qȬ.Bt/.aݿ4G0ΘӻwEAًgX 8{Q#b͍*#/CmVs[>;֡q9I6KP\nwI4-| kA)=GPN$ңo' =gM }9eucyn%H{mڠ;opDFTr:1^SUgNi5@+t"-T>֧rf"fMBnh"qt{VlΖl͆J|A|5XsGeM!da"Ij>ȳy,;jZ:B776GOc20EJWBH5y?M.hz6֕!e)ܾ%Jt@{+4xCk+Ē]A}puu;G; 'ebnhgdoI@;Hq9ZluL@)BAԮ9瞣16AeTCNn6՗CZO]P59R[2`|%(QcukgVCWc8bKGUM=xHU,\h|׭NWv,/v8e}!eҡ+saduߐq7 z R /m{]JW*nȦq>F]s.r@ ѤXM ).UPhqNF`` nr5%lQ|wx!Bɿftel@vCqfHY[qs)J^%7/ ~Dw%ԡP]tcb$_}AjX+n5(ծ7 M =Xk<`-v)2(Y q2&7_7}k#Ι_O~Y7[h`8J:p;5Shb{Qf \6 w8Y~o(L'kđ^Y2\TlCfxdA":ՉAҩg5WejMàՍ߅fplruYiA ܖŊ6M%雓ɽnBr@ " zr!,# sljlr!S_a,'rpMX= \OΚ~낥y"I8KL iF)2kyR%\Pp؁}].B,W#l4<+\z҇-w1J2 -mzx/6%}&w ]Ua0.hW|:IA3 ^m}5BmKr+o.zXС/%3;ftR fnX=Q-'į BKUĖ07P}oWXrg |RI3h}Սٯ:싕WQrڤ%mşsZ83L&uw^ɲKnl$CdG t a=jϣ9[4QGbbyd@.Ba9Yv̓ܥH*,埗l{d!5F"eD8P4:{E|Sڼaգpy|Xä2 g9"\'yZv#J/*LƾƧWK"4FZ`` BY/d?LC)W˯'A2Q/CO:k"W/*r91\fڟYbL$Xw屦3ѫ Ow^8sI뛏qt"kبO8 H)⦆*tw*Ֆ_O񦐃WFQFqlDʑ Xn Kk\ɤ+$q+!VحIߋwD5Ϲ'*P5Nz.9e NV~ezӁ ywGY@]Rv$18fEÊmk H!ocp=z^zؖPSݪJbkE&xPXOHP;y/1JN[۱+`!K3ܼ ḓ^8=Eˬi3FYs+ Y`W(f>!DB&лcQL  NW}&xQ E%_IJZH/ɘU,P])>\ýAJ)ϗL*:FY(}V[R8Fs[6ۑéMŻTi玫U3x1kpB\ķnmɿUNkH9s#MJp(5V%#gs@Tbx/Jw'cX6Oȕ2&tx/w#F_=&)\N4_>.hjx`an6LWdO8|"ٌZ/%ІyStmK*BxG'I+xuz>Aۊ#sk/-[wnjZ# EuBWNbAua'&d#TdID4YIQ$5? Pw]l1Ko$k[4M"z*xA%W~,mz>z,#1jFvAL%f@XObIQD [p#RnW\@ RȚ9 G(A HRcݮ.2+Sra ="i3BCԡSt xz213 ڡDd8aFRb|D˪e+%AdM8,Zd7ʀuJD%fN'[gXi1k; ɦ>Io/4#vBޫEKnUi|M ʙk!P րexzy3]l3ŮT\cg5eM)[Td*E3\ĔG K5ãʿ?#B>ržb O³PzQ>0-cpWm"W>2 Y?J+u\l L.[L ;0v ?^|=u_M TInU)>mD;Xw \@⡁4 "vݢ7(.8&$Nyv?F&w|==Ρl\ǘ=)H ~LnækmbMj?gK #ɮ" -r]b8k ^|xEoVnI7DUфD' J,5dpk-(6T4cE;!j|Pp&5%]cEN0"iak qeZ U t)9_<Щ!Mrl_<+?br~ŘH{]# %H'B/TPRP\qm:9ุwndD &obȞ*P]ϑOmM%$\!ہQpHVIzaob1lrL?`o;hE )*|Ŗ/.)ygXIQl&H_yi k̚x@ߩ"rZ]mkLߚ- 2o+A oimrc. sl$ \ Rnlf嶖@wNh]G}>y>yuC{@>+C}x9R,[ƖRv!x,05[|`rmEiHѩ"`!X@1ܭ \p( Xr<LY,Xx9!Tkrha/ p9Vtę)I@0zUy(,$lQj~ɮUp&,«AT }G;{ x ^_Z'MV~ߍHg qm4%BΈ=j,Hȍ32qScJ=lbvedG 2uJ`ΕXd`vi?IW:X`\l=}˫q(WcDEX''%b N>ԢKՎ'$pzJ߹GkGkiG "\yis*V7fZPY_BUM>qs~_;wՌ M,f٤։y]%$_j'š,s^R$}z=L*GRmR:"cmk0#l7-T]jj<[`?l+3tS1t 4 ~A hq(pM)aIR>mlYX \W|˙ VL433_̍P ϶ *m?&Nj}; =(֜Nظ'O{a%qn O4>Z{Ĉ#F-2z[q_,-,h|r?6M- wе'tan/D.nN[@ز|u"4 :W0cCrΰex?JO0g4[#:J2݈F] 0bf^6è8/_XlEONN s3_|a")ֻnr ^xw^=QN:p1aާԓ+kMD)PձE5og@QcifMD% Pʠo/ 50vAuФzE#}>14ƒ~[֥/ctKdڋyߏARXGlpܩ^4,AeZQ<reuHhL <'~.mI0PQϪBҀno8G)1ES?AAwM|ٙvDM BYQ]l<>Hu!^zNRaz u:P;+Hm:'䔇 X>ylnˤm %I3V#E"Ѝ&2vAu䶧/& !_{Eq=Bh7`:#,XТӤݞS0j;<~:8Nj'Z@VjIօ9T7LdI1'CmV#ߺi믩Gmf2?mBLL"V&g_SQ[ ߻̞D4,ڒ77AX=nc1rV@w/YέacpT5EoIhijULzE`d t]n]P@Rr`ݑ^tA~-G5iIy̅V2KSU\3X7@ :d @3@RĒvM\ F[hL ?HHM͹Yz1O->dp͕6⊈Qz697 0OڽI &=lނW6nEtgǜLkCj]{[k颋l,# <(WѴt~WsXPRCML~v#@RW ("S.ufh&Os^-Ypn?}3p!$APzC| WE rO6&tiEVG 7IS[!˂qPw82RFcU[ x98Xd*v4*1p";y4^-'gZu$Jַ$j_0|wbxExEױfUy@p7gj,~}'?^$L5:3 ?7Kv>a{&Xr̛c]0-pkvt}hB*%y:|i${tPJz}LT¦7_5%@rP=-/>54*KӠL (#A]]o<Z).xֆ?8Z;*EP>CT4(F {'X~1q!`Q\̐QEhbR_r%iF橶sM̛TIﵔUxnm).k"A}|>1¼& ռfu]g S<Xy_I)xGa(8L=iR&ٲ#Ff'a5]0C ^$nigT/rU9@}tiV+΂r{{ v˔zG ($Oi#s|\jGš Mw+ǶI>(Imb87^; :9,):D]=cUhȀRF IIkW*fuiwƑ˲q_"̋~K׾8] ʔ?ORE>< z08^ԉ=`s>&68 h0VB9yg- (Pi˪OgVxuqN8@kc+{DQ{!.8e$;F٘5:|@T!ʌqxcC9?#-O uލc*Y^tӸ\xx~E=+jJxqN}*oY}MY @Ԥ47CZ"J,)ĒRܧ[V6>]Eꡌl~-c89`ȣ TH tD9wzsN_2{PKdBP/Ox Cl!Y6o5gGV|<5Y6qz7ǎ{:1I0] (*n,l%\<>5(prKly{9KSw4""U%,%yI\Ό+Wo%W}E&N,7^P"+F@ =]Q\aNHY|y3K^%dZ+=l!Hsb2<3\ ZT@ʠW]FFDJ7NFMIg+PϜh`a5GxKo -Nbp¯EmDep{ QDK I2V۾۱(8By2S%'.LҫSN:nF87\lmEӉGPn{Op_59.(UY>O)t ڃR4۫ȫۂ}2^QG.۲R|O!U jRWV!:fel?c*J3W̃QL֯)]džsq cRCVS{>C(mnn3^Іp7.me?GUbYuY̰#`| T#dE2>6H=P>PRuHBӤ2BIslc TmMZdEG< V@?{L٤kiˋo54i$*sr6] |Gk`rhx? "U e{^Otu_}I`s@#HfZ\SA͉N ٓ.^W?xύNF[;s"7l9*DI2@Nv!T5&aM)+C6bWYKma=rîU7*2%8}$ys:^#)9$ʊT_Anr)bAKI38\) dr P6S*1xHk6jDzMX=*n;ʲO#, 1O̪2r8JwWQ]T{]__K"$dӭMIH0|=#5H >k4ܖ֌kERVf҄  W={xShF:0$xP}Qi)ObTi1FLe(κlؖ O:Y~0BA)A.!Dw꬞Ɏ)Ё5Q20}/$]miUS耶[hhY 5^Owت&z 339'ҫXB10o_=m1A`2dDg~#J(o.`+\D=rۄeyJm>R(Wuo,#Ld] pI &̎]7| it /V1͗6]`G_qxM+o{'#x+Ł+*= rUl;(yJh 1k1bjnKk!,0v%p ,=hKXJ=l ڇ:nz-{8}60^C59=r6[/r`9W}AqS{~Y CfAύnԸ X<U"\za=[)1mI:L:GFz!#vHÜ(VsV.I*.F~?p^@ktmø }3Q S߽n!^|hwdy(K$ P8l̩%lzTDS>7@I`/o:&Gg:j:a2jGOڜC/E]^XHOEzAۚ-B4T2frEhP']`o?x`Ԏuv?2u{hUE ]DY"TXY0JG!|2OftiCf;Dӈ̸Dv,Cf-Jpq̘ڄ6BsgTwT8] WfK>>\TJ+@V%{iY9SETq38%?_7f9ۀnJub mvoD;c~"4Ieڠ+-p[udS19$D:R~"̭"U{^5/$9n/PDhTy Ӎ `yVꮂm,SH'K-+9 A]&R eP~9gZ#|]bwZXx,AI}+e.T\]W: LnI~7zvc=(/:b!Y&a$u=PIak)lTIMB>Ҡ7h=̿Z?yb2B?Hhsi@wQ_jU}ʛfqpITY:FW,PR(f ۺaLwuh쩚m }EOM:HU?Oôɧvz^~Rbv_6WPݏfgNu|PUf^.`J";VcYjax)M1l'oS{U{k!0q-ֱ:e С*aC((ۺ)TvK{24JG!q94cL(.QELeMwJe/??dfU/K]uR$%=ZƾU|b@؟◈H@#=*DH6zXcpU\JT};Ήn=3LR7Tu1Q> =ꉯG7^fd=6bL*Z!YdʧY4B@hi1.:AUR=ir1 @۸ Ÿ7Rvȵg!}!J'ğTW@Gqn5{i' cPZח[{6MFC/ł]#A0".{2'듻m'cD=P&1j]l/_j@#o]fE2ːFŭ#'õDa_S"`%xdG\2;{rF~P U~B͝P y mafn<_fC_ {٪/Qez9UYkWsQ5r9Þj#y,4;s~Rt_hF5ΦХv׼9J:5ْ"$K/2vL (|ꛓ-C}ղmF` {e9^COUL L#[?Y ?9Oc-YeK@Ꝍ Ei"~쉗5bISzUW&}?*p6 {25v`5n(E v7e ټ |6`etZ)T짉7Z ^N=z)8fVUo$H7Ě{ p@1y3C8:LW6ѳlOW^8ĩ R,eB񀹖X#5#+7æG{)N*nFw%g4F#~$LpeuM22W3 i|ܲun eNϹSij)>_qt1\`>l? 'r.W<鵼R<튑$ag$q+ZBbE xݰy\{EÐܼ2@7qG=3Չ-M&OcVCdn2 l=' ˯PhwXp} m8$+}or#u85C@/NV X7 8qvĔ}Pe6I`k"G-@::Pyr1x>=TeƟYL)m6G~By\-^ܷu<. eGi$;F־ /$8 EJWbDK 'GΤN37llvn1uyC~oxqbK0X|G u$M0T !G$b2SXM"ɟy?gVB*栳DM BZXu # rCzPr5BdѶVjd"[r}j2Č+o^@莩U UҷLlY[Tȴ q<(zMpâm;Oi,$|zտ\I*`gU< Zt>8m` .rS-;35oh[͗_0eHCȍ+#4*xi+d/$3],@iU"JJݤ$i0Llg孞Y|Jā .aS{%}̪ͫ# ۹r2AeѢє&iέļdq0E@ҾȺGhD/K^g1A3+F0kG, =%˔P$ws $Yry"]j@\zvs8Lyr+Zc_᾵wV9l y?f|veGSE! j( !RvR,@kDŽ}&lBP{QqFY;7!NR˻ر!5+z"x$A5qNxZTh<a*&~'a׾]=?3}wFPiHYOFvr{/C]SčNBGwC7Y r^;3y I`JbNX߬ u o!Wc>(e5QUY^[έZO[QK^pO:+XC9>< 0fUkXv ɸ%fxr%+-~R΄?(sFt9j#W_kCI)HP\F_(^AzR|jF@ya%-&pyVw*@H;zWNwގ-#ioL?~^jĔ KH;@}w_Ȏc][!rOU %GB .#H VI6[` 'v b6S?񃹔ه'y:i@Lgv VAjΣ NEm$t@!OrOTTN7J& D;[>Ы ⒠)~akq=*1`7G dy"oCYĊZ#KOiH ^˅Ln, y2bi!>xD֒ rTM*ä ^0jFu͙̖;+l;moSC|exbQe7syc2q9Apo9,M$1`Y -vռ*@=߉%*Vן9уuG iEtک+yluzM,'|¹vxIB#AۓNѝSZsOrw's[A' p첌C6'`lJLyh& A""ʿxq"`\V8zi+~ZdE`NT0MQKRW@~:+(7 f͓LE!b^h3Xԩ?VdҔݴ+l%66>2 НX}R=+b p<F8Tw vΛhjlB_[^ YVk v~\Y̯]dJ@H1xP;ה#ۋ MW¦q&; "( ZAI^yT(hu3BtpDگq K̡x/o/{ *8u:LҨQ2F;>؅9P1yd{-"N--s_^Mu;).;#ULŀ֍DK _ݎV ۪AUƥA>E]-@;2̢qk7J넄/Mս=hedf<q='9;]غVzwpyq~PZDD=b1b; Q&2ѣ*%oa8NJɎ#*~Շs /,RW EdW03qSwL fajJFZة~9Ny ehv0$ a3.0tRax崔mHJ`Q"W,X ?n?\ҡ sSoԨ9ONPL;Њ3=fÍȄQ{UP6(ɉV˹tR !pw;b ܼl=ixk™^y RT !Nd6a^1Ba2ւWӁ9 Av6!AR6\YdӅe6Cb|Ѫ"ɰβ?,^Na&z`J$e='3 V>G\òEஂxٚsgLקM?`Ds'ݩeH%I4so=A93mDB?P+d~'ªB.8ih8zʏ:B̞6k[vT3 ]CE< ?*_hnC1nQe0Pb47~vw =CRöpA-T-msjאL?=:cp=#e7ňYxUJfw!)=˄U:> 9nTia#ռXPU#E9 <-NY̜fod,<ΒKz,!4n8KuOl@OInRדo](b*f H"kdZrI0/E!0*I}v}ѽ:ޅ#0c Q xLCuŀ-GA*Q^u9t@͝n .&Rv&F=aT#-2dz#{ERwiZ $cX R/1 ?irwNOZ`H vd Ju})'^ًUa'm,i9ʞ@̈́+QNaix=GƼU o8`}$x;BSzVϭx ow qAy 7 v:wj#UDu]@LuA-`5HgG9M~vsNK214om5UGe> -뛭HomEC1>s"ISwo'9R tNˤ[3z5'0%37*$ }tR5ЪdPK?p DY 3dmBnZ }bBMQ7%YZT1N0KN :-da81nq[08ETFtvc4tFI|5uLo`;\oͬ[g:ҥ|ESS7/GsB N ذgHo4&5C?<'-xJ@GW%TlM+rЗ|LA>?+eΓPF{-S>>H`3!N` ÊsF->oa)#H\?'$o_HMEM?7{՗oxj?i~mͩN>W>oƒ1 qy@޽}O0 $Y#Ԛ$^V/GǐA v|=HXߐ9wZZ[ċv_eO r2/ .;s6 / bF#j r)ݛrn,i7k=ٽvfhEzf]H|/]nkeI% AEB;*7Wp{s;'jwvift:L/9?]汲Gf Ts0#_g7LR}/J'ǧ BY9nmf8bY:ɆzzCGIKaM m X0 *OQk5uwjz`AV.,@ hhp!Zc{u(!^a3%> @#yePNiI1bYe/YPlp?_>kI}w ;XIO{Xv*  Mx$WM>0*9g+pJ0oQ`|/st[EF&3Ww痓~M³~$,.ZwvIgVSut;ٻ?, dJMK\)KaRE4qu>_OֺxٛI~3,7F.tPam vts.)[tQ(/FTus&Xgȁ7j$]=q/:wBhYF\`F7Y:@FG"b+9Y%+fb4 Uz;vaz3hf_m rx<"P)CTԳ@B98]J w:k)~ '%zHo:iJSK2ԏSSuN'/ƵɧL_^+>j;w{wx]cuV9ks1+h9>+9nkW'P_ qpwk0K8@7s”vYYGxvؒ25$G*mD"~}T\7ST UT_!ĢѿaӣOPㆵ(^O1ɟTf# \ݴwS/bs= 5;WU'!oFFV+v I8?D_q'I XR1D우eao#lUߐVhc/!}Y8[@p}]]e,uGTrNX.&ވ߹~/[9;) &ũ+?@ؼµGS?,sGD?*йȨ;7M bE4{JH&0*E3ôOw4;9V-s\ewR$w RPgu.D t f)䆥i1b6r8&3{zbKKWvlvju{7a<B7p)_BzO<3!! ̕n-~muFOc/jF!u?M*<96]v+)F%'^NԂF㖱H2cpdnT8^6$91i 1B0.UUJD(Bt{; K9[aJ1&7;ͿdFR,LmNCkv2mcքLQ0ߎ)7\4{ ]!!fI s e[ V;fZEpI{3Z4 seEZXS,q#s#4.t!yAԘlGJYP|pῷ;6-7̙nz[vONmn6,pG2R7j3k嬵Ggj0:7ҡ}\Yo>w7J x-$<(_OXe_A.2{pHH?췷E6y]vg=j 9u(17fB\2X5V5d.<ؓqG;5vLLf bĚv] tah\OSEځku,(n3!2ͨpB2UJRTw>/ٷ:wpYnVeG ;LWN;,^|o[D'tꘇaF_fTQFk΃!'+Ly<,#F,1c 4`GYp*,߼$dŻŵWc j*,;uK~wg٥#Z|.-33_Eo ~ Q=⁄OSW&dgӾ$8a=/aOSy"5?y¼yk.Et0\jd_+S2<33evaK c\1RoİGq ]@h(o,<ŝ (GR3tz/G)3;R㺕͗n>1ㄯ`2U\ <_xLg& UF iaH +zP%,yWDqDyRJ!G<:8NPLgRYwnֹ 0+RRKhjإs0P8ƈY[,yX0fDVʚ k1;;2VVlNH6>0¢iӪZZ6hUQ -b1 o&:az@ (`ӷ]Yx178*Um{:3%ha>5[pD[A+pp;'a K3qV'.P< k"h3ZꜺ"jaP&kl7it4yhMVeMgXX5ɪ-ŋϲ]TS!^H4+'oiPLB9˹ɃRwG~;s2pYl5ԢU2y%bD&*(,\@$ö:g/ʳ4)Wq`CCz"AB*AD=@q7A=-cs Ps8m.+"QvE'qO yJ#*~ٿG%ߴ X7~"&G֓}O1jM"A>#E*%p%zؕAG0Ak/yvH-V`ᝉf( :4yFtE=USTZYsMݘЉJ5 NSg#_ *jq+=ϴP9o$`ܵY]:RbT?M D:QSk^M1d K ~:ZaB47r¡YfmSug yŴ=u\9y/1ؑdY\=?vpܯ+y< )1gˤPjه Zݥ! 3J}mR^њ\KE*=Ŷ]Q`ރp9Wi8(_$E+BRG3xMF"Mm"t!㓲Oi|wKp'1c PnbX]dJ8 OߍK 0. Nlaln!MΩu]o@Rj1{;*y$Az2*B uƿN&n•EuD+}piiFm`}}-"PHOJEB XAQ8ROy^EPo$4-OA,=[Cxyx_'20#F&yx~o(ӘHpY,qiU%6RcK&YY4[[?Lf[;9=@zUF@/VU\\>Va ŏV+-8zoDС[I7,9O >Sڱ#\RQh=sÑqM)R{]ї4 5lxon`ܦi[V &+zpi+Mi_ rP^T Sp71?9Kfh우@tVvJD+$~b!~>]՚AǶ4S#I&5FV+UticA]>iNn\[n6j0L  .Mf -erspta961LU&ʀ5_SU2pg2 ]TKhqkw,dfO)8ZC9!#֦&u , NU˗YCkv^o=Z4ȴ ,.0``ya^Mg19 I1Dlg;o~=`"G.qYW@߼lL!CP̡0W1BxTEP^A:׊"$e)a[Yl(кg; wSzSaQXbD^!X_)rn=#Fx ǣpKv| Ewiauɠz eF}7YMeÍT.41۽:VwO:MED{ iQ;X\p )Mt2xҎe A~:%*t@r5ʅ=.fs`lgIu".Ɉ\ Oʔ0HY%~Z>B<3ЛNJ}+5 bO7%3W5 .m/=WqZ$57'+ l8BU6A">,^QvdP HINV%ɃP-3X+r$,(mwT:Hgrݽ;\ONrI?ٳ$ז_7!ؓTHͺVZtY7Εή {F'nX[ C7QQ(">t\Ț~6[g׺P 6?N3o<q|b/jG 2?:(U"AIDRkiȰf ԛ_9gP*溬__r '5\Q$J)t$/nKQR(dɣ}oR~ڬfʤǀ8"惧e 0'6cbvb2[p\=CnVVM;:CbԴV3OQX^Қ_S[~|sL9nW [?Փ[?˻E_yӵ8Bz6kz>[ gaPBտ("P%<沵clf?Q_)r@*)s\YBz|:҈oC h6fd`bxDʵwU(FFJ)[K|Rm*;5_ͧOw4Èz94|hzf#6CW(") brUoڈs&n†us]֎ h \C'a0! 1CF- t5T'$ ~^ iH2I툖/y_]zVdk1 6ݣ:E$5CPp\|<裵<j ;>aH$MC]`hE#n;T~ut:|A|erp8iy|ﱹA7"C1EGFlmA  ot{rkcl@;]},.JltQNpIFO3w^f Gog8TsA݈"_Ոo!жt8&Ķɩ_!':W0Pu@`>̡wf<E,"b7~#RZ!y$K@e"qs,K%I]h|[Q+ANؙ\0Ƴ"|.)UO/Pyeu(_b+D=p&d+َnKwzRgZҪ@C;NV,tgBUa}! A~=#Ed$c#YP-!k3YǨ|uib-WnR&ݗwWgQN(Q~xښt"6Zچn \Ly&*,x"nY WꝽ\I*p'I`ӛ55(dXe{tSyj.|10'XZi Iv1 EWq{+s[#5u򙓺) <f[E?S m?noȽҷxj~vzd[lI#F02C #96Vং%p۴V JzT]htd<' c5Ҟs-J^S4zP>emPxzvݿIm|mz@4@$8i^N\@>nvRp|vvU.>g틲PF`5EOKᵤ٤p5h)iB/Bv)lqI;4 mB ĿT̚, qJĜz 8BT~`Y)ylTz1*-G^Pl\D}=q% /tJx9|7(R?VwRK&WFbWy-;+y'O|i + ߙV7="@2ɘ UvBH% #|_pz@>[~hێʅyNa|s$FEyt@5n&p$З锕Y9%OJA*IQpoDuߑM;\Dvɘ6{U3ڋ_DT?؛sכ"ĠZ4Oŗ-)uZ#z e4MIZsoG[E\2ՏgXr' -:F"&cSh@~V*Xt~"ķSH{+^=hnAnQb$~PL.آ ZDiɧ!<_,/֢|`g (dMZWt*Q1(IoǢhpČhrc@ b SQe˂|/h[rUE+b!ؾm^b4QMI< ۑL·BHLP3yj1PM@_/{:MG6c_X0;:, Ze ~fݛ<b5H;j%TP}!rH`G?S$%xڷˆx|"&/G,)GbV:*upܖwܷvn(MrADUFNPWz+IjC:$\DTqU F,LJ Oq ljҸ*٨D$2->B=ٝ3PKuFՊP4_n$kØ ?I펺ƳD|8:{KI܄նnS0T3JlԻ5ݣ"p. 8ɤd3BbȂ빷@TMY?nwp%`!U3C=z1)jƤ_%b*{i:,G]/" |*%G>k ?41iV-FoEDڝٳ UU1lA\`Au"+ fyrkԬJ/Mnʂޥ4 e%r)s=P/0bwaBٳm"vBk2||! w{hRTn3Ws㬵CLsJhL:[;xf o <ѓiDv H|Z;XŇ$I6lfieI?U~HYUQjLZZ>,(ۅ3y 1]cv7좎&YNx{C4y1e0)Dy#VsiP/!DEfnQ_H{HY okd CoPct5nQ,5԰0àV}#U1vѶ?h+sY;02 |L߇ٖemߐ+缭W y؜%49ex<1;mR1$DC/r w qX$D=\b:󼇡Thqw2d>ç l=9H\$goEB^OJ 4&/kϻ- 6tV[Ȕꊠ?0*_{iwQ$7Cb@Ӵ x"c:i V%ڄJ;Uo4j]5Fh4@u=gJFmG5!Dzƫp21T{(|do'hлLE?(87_njmTr.M}`%(HĢow/y֣.^r;QV<͞˓,5 9B%%(eJK .cpt`ieq^ y)1WGD &m!qA .R'^$&ɾNtz)5,:/Ŝ4KlY!^in~nduj+j Lg"X kbH-I Hxm*B$ʏ>`"N bWTFJ݉tuML*D7XGѝAEt62jt)D >qh+KkBPQX"Yh0pm.mo_.lz=[PhceZBL iKV {j+ +k Z؊,Af.}n ڵKjW0{a2Z%c-Al5#_!e'({J wqmV՞5 cO_p#cT𒂬}['8Q2<(sk o:bw@^v8fMzdfѥ.^q3_ :.p}0~bZw{(`\qC%utN}h-rǺ+P 8L6`: rI{QA) ݵ&&bч|CFxY. U>+InXc+lyAY,d7@p`Q 'u">q9CJ i@r(vp5re$3'm? }*Ƅۮ> ඹ**v?j8x:+uG$Qޟ8cU q`1( rnO_tGrSNڦ 1 MdFx1{՗Ip'r];Q"yp7 ?NǣK[eQyV%KUpV.X6ي걮E @q lɪ+_$<ΎiA -7n_G(d,gI/!/nx9g vŽD8al^Gar3m[JSI-6wY$?cb؅c  N-_'@'  QQhD0r7~i /yj<lIA8_# `4>Ζr<zQԯ R5{] D&dSzFzoV F(jlR a֖*:7dP? $72 XH&3gO׏m)%V¶UO&t_B[_m)]a];F bq'Î0mq̐(2u[Vݫ<;n~{#zT?%8籜R$ ,eA6ɒ11m[JHzJj~StnKjzQt # p""ئh%ji!_$pG[[&/Z1ɜZ&#Br6HSZgKZ.#8 ź{xjCD}ݩM;@om h/襊7o`v;ڈwX?xe,)&%% M XP6J<7y°@0zB.\.h!nx=WF.F FQ]EG~]c.˔ÀÞg?bQy"P m$3K)N,P6Ulr 62jH- jrʉ0tR( X׺knm粨fCF@.J ۢ$sHULdn@πkobLF}(sFC]Ia}qvu BqHR) $.B85M WGoLrǬ4^%=?:P.N;7'WDk%p"  ӻuH "*N%4`C|7єᬓdԍ Jή#hDS P/: *!1CrbE#hݻ1(GW.fYcD 0LpMي[VccY[T\"$JSnbo$~9솄&8P!r)OvݒU6 ZEU4uYԫ{Nh?bd 0mh|:/CO)'M/^ ږ_*qg,}c<_*wG/4}Q¤`v9#ng6}5|4tj7e$NqPڄ q~+Z:a[>C!czMT`WH.A g#DVyi]6+ӱT!`2tqKᙺ0yY-ywBX3ɛCUfCwP  QPA~炅[ ߣ{/k&G\T(G +"+538Uh=1 *˖ -QiB~`8ɭ Yd`TV{ii7 =]cw*VL;X80j>5`zg;R-?@z-Zb8 'sr6m/ [L+3~u-k)*&v~ޮQ(q>/Uv+IŒ.H҈d܃)@̘P]mkwzN.jaդ['aouck2_O PI4]!?9b>5#_hj}2bDr+f},;!<{n(6:*tP,URǶW> Uk{pZEU-U7~jfNQ7ʻ21N@]hWSklwWM,`Tْ꺞59PBgf%ݜ~CGlE4'GTc`>?+gKT1:41@&2gXgK!]d0&*VWmbM iid64=A}< v[RqfEb~C^`w<<"=+L@0Gz_8]IwoJ/ouxin[ <  mP|H _EKxE|6VeK:aKUKȁ6"=Cb)vUBTqJ68=]s2* LgZ<[i[\22ٜK@hQ{ ϵvJ#3`%"~AV2Z <`R=Pn6 jvY^m022B?ly}VX1w!c? 6'kuX{d-˃+5Ү}ޭ*U4f%} G'*r6:*' dW 4'U ʮ'l8"EvsthѿI$Bt ~Xt3$YS5:/ ǐAY_b{Sa(@+mY}קZ#Ŭ|م)\h=PiUHПnB}Ms[yN%( ^4oюDTS1?w7]-Eຕ!5"%Oϝ]-01ZoQهEVnv6%Sl 1}jO/T>(v;ofD!^s˨'Ci=L:{chh/w[B[K]L9ɌB>oHKmiogWJ̚ x.qg,'ҲEiKɕ=Gvp)o8@ap Cܾ1#И__:hcMQ})q%r&w뫽OXKFm Ei0󮇃)y>.za2w]"4A>(gݩހah籕ϓ~Ge\gh]˴x - =ظXx|KSUBz“-)li~w\5h;j0iOO5N,`Ґ툞@%[Mp'FgsR+Ca8EBFK+ TֶfJe\k!j>[ﺨU"EGqUows|p8%n6( K=܍ / '$?3$g4Le郠vY/u'V3EM<ZS+#8ʜ+~cȅqgkN+^sL&e^;_.ޯwE jd()y͇q9/nh;Zv)@EYd.jKoP_ްpZ:Ox&Zk+M?`E;SD]S'u8202j8IŇu`:\,⡖.5zsd{cS=L嵞QfKnd URyX>!J=]} ay^e.2tF0 rOK >x2w@kcСHX JR"sN~ QӘЭ,`|6x!# X-JVa0{D;f2U)#68F56;Y75 bXw9wl!?bFKqBq+ QqCP]f3$8pBEņJ^'B%~7~,g[m '?)N\zL *'>L׋Rc<д>ߚ],@cFs=5h#"FG3Us7: 4|'=a1u)*'}$Q\Jaj92!+xӊZ*m6>,kDHP.*n:x~e)Zu>0c+U)!vġ+Pi7[71RbBYGEqb2W5})q}S 7UWyC9a4Z:rD,;zvԴ&M$|QSh`19]$b$VǔD]B#"u/&vTAo|À4n  ok?a\2BJY(Bt'y%klx t0Wz FHbJ|ÐNӗ\Ѯ,\ϖ6A9g})ێߵ&=7lB̘tW/"nF a5zÉi6p͕.TujzXhMQ($TDeLB7&(Jm1ͮ4>F%0/NgA}O(62i <6&~Fc.eH*TT3Um5c;;yJEܒԏATz HR.*.u^ r=$*v +K+O[$iBZx^_Ӂ6r2n2fuW]w o_q{ !ɛ)O78- d\h5q4^!q\ラDϔ\KZ$O!MXyߵJ=b2Z!^\K렵Rz (=v: oA%tppL/J/ cW4Ҩ iN:m4PUUEmr0r’1QO>l蜍bRNze5f^FV*u}9Cey6܃;㐎XX0 bm;8ul-yE\/<2~%sbEX8=eU\N?D8}Hn-oLbVN|[fhª(YZ!g;ts@b  g fN eHui)܆] j+mnn6|X fB 2rӂHϝ˒\v{h@1`(-xZz:"nؔCeNQY #c[*U~'q񗉓rjOpWnd M24}IbT91>5|%XBZe+F"pow=9@aav(.,y7"opjhfndJ?Gt1FJ[pᲰ`ܖCԬaPK zTa(2z ySIbR1i ٍ*dUgqt{tB}GDjIa+!>!MtxH $ynVɑ=iT,p%Uh)LTϿ:h3o5>)`G%{%F6uM|O3k;7)= ;2z$'-}>PILWpOaqmM(Y}ExfUl)"y1 km LL)L-9.V9#XoC*bG88"+xgtrbSV\ /Ӄ A: M)_|wkJ,'Ǩ|-d$YiU{B~m< "#W4vW)*Gng6͂\ZnEQl)cm5,y}fGJGIrhrl.L?,H7 {Z ewqyb0cuPAuQߗGRcF-%hw### vE"}HS .CD&4,j_( g(LMO*v:[)^mBpΩ2`=ߋ|%d5dI!?{p+4ZY,^ݘGz5d1 ."1(2Rwc@ |/jchm? fx@FZFQ⨱qౡ`65-]&橰4蹶HDhRI_#]ȓJdjCf(˷&݈bBTte8ƅ 9T3hvn&@ԴEʼ4L},F<ٗλBxJa?f簉cܰRBQ·^WCm,ȵR;l|Ғ<nd'A]}//@_=4PIںJE{ NsI |bjV+腤r+޸ZɔගN-Aq]om2-/W^VVh.`M~* ?ktԉI¼StQb,}lt.iO{R$bmճkzu7É3y̘jw @CMdy 8"[>ltQT[LS)^_E 3NBuV}~Ɩ%Ca)64!bj nkW$;;Lr,0%6KB+I 6^C.ĤFgk,bW&EaAxoum v&d}\ݔ'S ixw)9r #̮tᐎMܒ^)M Xކi, 0?t4|WYXS[[(^晻Ta`j!)L]c.I:e讴΃ C(NN!17=?hz慄w#?tr3!%!8b=|xT7 c`#1} oPrшܶr gZQ=ǹh$y9ܶwp?h;w>Ǫ$v*yE -aRԈYE|g35\P1]O0 ~>^[ L?u683+&;A^Ҁ[vT)ѕ DqE4nXXhU˳)=Ar8-Y*;udcZ8(bL4"[[ـX# 77(3Jo;{?||Prq"~FXRc=3\M Csn**BءG9̮-ZuN}/m~h 5fnx&x-2!#ẑъh꧊ 1Fxڶn6T\52M#2b& 8UJL2QdfG.}(f]恚/ 0'r%-N-Xd}Mizߞ~:#q-[c ̭w%X藍虶V|%^\blE2QO{+%;*cxr!~i}#֧v=1lCI{hAjv"U۲g)XԧTmwˣ:Ʉ{M C3uip9nCY\<K Y0r#o{vK[q袽Ny :\%[];p`@?_9{2uA KiN^9#Yjо+$zLz;z'+]WQ̀S=NOZk#I GYE^COua h jᄏgR ~PD2aD$33̲lc\G0 \*!/ׂ3}Lfv)CJ>v%]v :[Rvg,y#,=uǬB]ȷS܅g5|Ŭ9aKa]7)#8ZDx&1 kKlBpR,7!_*~P_ 7*wsiavIAPjSRFb֖ke?LJg_(_hSj+3mb%Jَ6c!,T4#ty#XٰYQvc.)'^7>(E0ߋiQtmi}>fP@ed!|36B!\߸w8z X91M{Y~"4{ULbg1u_/Eߙe 22lUME2#տLQ:agfiGQ>݉кz2= l3qgA+ytRXo`S?HD&Nx2\Ka 6y~!*6ӾfB-..re'{@ ,ʗz!k&l(ϴ#\S- %f12o"ڵӆRPo* Q^S49F^ K. VљR(Ȇg]ZgM}C8sYqXnr?)Z"UxU:[[^h{ȕ,L< yv$E1p90M-m[Qkx;DMxO݀|f6 bNz}T(lP: ,xχ쵠!9;_\9 ՜ ZӼATXЍ4\DdrPIqYd6[cm}>Rʾ03:\ڽߡ(Nҭ"B*L9¢{Jk d_ JO#6!0KMW@lZ/01g.0z,ҖpZNJsEg9݇F218&s^BU xމ5}^="njTmp̛wMǝ Po")Q;ň*@ yiA]宍WJ@l-Db!˭=/T-$|D|=h덿|~И5ytvN5s^2fF7bCNxc 0kZ Ok/#*}NU9%U,.߄3bx{ϱ]4 rv}9W1^~˅FTe_,>eAph @b6.lsCYݡpY)]CX־u ^jt5i-Ey/a-鬌fxʹO<[e굉2N;,hOQ{\}*Ox:ҕ3^#/0<_IZ|1IiiV0b}kd4`GP}2J_KŪۅB]V2c8cp(YX`MQ "RSN,pXMHQa% ޞf(:NyC:΍iuzO4 [1JtB~{ڬdiH)LFFL|D tժcJ.F M}7Bh,uhWCB|Wj2HB$!03?,,ab ƥ a<7tN]N"hYBOO-/ji~3H_: 2F&hAءRh|Րb Zݚgoֳz@ ;  {k/fXcV)TgqD^%7 bɬ趹ϾW]l`c@䆒 §?C8K(6wl ?Sf௹ t{1/Hr'8)J]ZS\\%xlg p8'_w T .p.&*F{ 0}6z!O,o0T+N~D;cFHh eȇ% ut2'utS p3y7,)D^xcGX hԐ1x,f7;[l]n`:s#fC,{8:cW~\hQu `&3~cnwbO۸Rht@,z~ebU^ ezȏRdde[BL1dy]v})zMm .v5%pM$r@ˈN,LԕU\FT?0Z #_+ji ͖6Ko\G_㱿N(wEp׫MFmNLx(5x?Nݑ oDh$UnSbbQ l92ܘ}̘UH^+ꃨJӦ4Bw [I8Fje̛A/m|`P{ދN(@vɦͥ@.yBSiFH3[_L,&>ׁQWta^ Z= 9*k ( ?++4.eGDCg9:UbXSbxTo'w]K׹ ~]E3c`YxUKbQE>&]h{kQ[­>~3[34slQ'<4`2tlo(2E0D'N6&~3B"AՃ^3?_z*U2m3ҷM;I0?}WpJ8B-9mԤQdKh*zЁ' ^҈\DB1k~Lb[#܉@6!}etv6k0P:kcBsDeNHl I|ӟ5rl@#A3oW珏;rbNg؊Z\=+rN|$9) )lKuCE䏖aD?_3YwB1szZu5t;Os%lѣjrnS@>и'vo }Fפ+t2baZ^en`l jpD/9ꙶ^Pu-X5+U^ы==F.yCC.Xɲ?%N`iYYuhwLoUtUV%*8g̅?I tmKAw.(DJNX _Qe7c]@C؂SI|@uDB pJ+ByڨYK s{2QM[8 ͨ3 勣pYK s2DW.Vf{Q^a2 3@CڎgUǗ 7ffXg3՞w1/HU4}?S@ҥʗ/Tf{^J۰ȌLJ\84P27$3lݴr/}f ۈFBت 05G`>jnhC߷J'pHŖT(gj>Պ`R"K->}I~skPb^lY<\rQyUUٸsn|Ǫvm &GUN.]Qaeg쥅jIL8EAC߉ L ŸWhD 1;|ٮcDv ExߚI.AnN22}X\,X5Uuu/xlqS[l ;V cb_̃e4^&Pr+emSȽ`'H/aBC2Ͽ> Dw_Kk|@Һ|P/K6 *`;&9~8i zХ@cWپZr3, !%aɒ J'f  .Y9(`ڼKFH1< %*WX*)z=WAɪ<4 xl$ m~5*v&"kq=Xrg;9Et32J^t''eA% #x _G/D3sdushMvGJ$RijULm𺐢oGoC..?n[ kٹ@Whӎpk+: -]B|&!m?߃f*HR_T@voO11.T/ B~H륵Wl6#+=mEh /*]g,l\#yv[]7q)%DKA d}t \q5]O yv6'wX|aop=D W|ʼn:4FZ R-a˘hʹH+,RkvӧBgE*I&Pa \Ȱd96>gø*>rbDN"(su RQk+]"P4>1 uo@::iKw 86%-iyD6aO7@C@L&A[z3?:e4Ĥ"_wj/_;T4^"o^M]x_7 9D%v8Lyk8mȂF5x&VM 6W>](*07TX(ԧIL.:rzQaA`&*Wy4 ܆2uczvM-/0@Wf>ro;0Upi|úc;ܢfC߼!y{W/R5kEO l"c EUf ee] NwT/!NY{p^IO F@zK2@s LC|-v-tö-q̈ _DhOv_JtO\HV Sr26icBS^MBwoW=bf_U8: u36_^PX(uoB,ϴ;yL4u)+QfRM2ZtPA9{)Nsjއ^qBiT[)dh>Ljx-g!:J*O~Ii 'rN5땟Ar۬#x3MySV&t8~@|zX-6MT?xt`~ I쉆]r+̽0' |^ڧVD'\э^ƅwJkݶUF_TDtDdE W!r4k t/`F&X0꼵#d#/6yۜz׀_t,?l]4[-_.jnU(p `%O&{<#!t;]4I,9N*iZtTUSiڕ700wMx *vdhDZebQW½Pjl-Z+l08#Eޒ^XuQ: >7dz z,pwysMcoTˌZI6f\Þc,8S/|X|ӯ cO{PEaK3?p0*BN1#~QO9&m5~, uLŠ 3U> |!.xYك qA1ZZg.29]hqrim}Hi0ybpHL)uZ3΋J丷NFyۚː=h(\ϛ@X !Rz &mS`(&U4e[jӁޛRf\g8~Ȫ)1O0֡Q~PBuݲ+H =/3C: qvr' ٫~Vou>Nx毄h`&yϦ1x ׺ٮT 8!>Sj9 T\V-x_څD/D{J Yt;}B ``b.[HLtq|tTWzh+G/e:Ys^?W1}@ZYgk(YU79CMrEIH_ӛiG@_D\[VN, j A>$ vHӌr < 8l0c<0]Ĥc-w}%cDjFgA=~֌hu睋TFɎ'Ϩ%ZTi0&ރ0G]U'PSW>j>F߈W{6 #k1.!ܻCi 7jc$)4#XPH vvr/!؏%Q1@~s@wc;τ_z @Rm+o @s4ݎV#*$&W9J 0fdF$IWV#_9e" ɓƊN`C* յkbY=\dg+"gbUsHs3nA_>)&cNM^kI_%aREm)]TU;&gZ0)8eYs1ȐQOA *`R=vP|`4 /RcQB(m\bC""LgGx61WGl~T;JW4AQYo/lIWlS!x i`ǃ&Q+1PY5v>Q Ợ\6%݄~Aq#Z$St|U%'T',}Lp zܡ"; ƃ+Cedov8K]('ѶQM(f,pt0 yqdCySLGCts|/I8la: ޞI86Dhz / GsO!j?4%Y_5]Y1;%f&P6K$Kp\\Gϯ-9FɆh_]omhw|Oj+FK x /r`L"\Ϋk!ϡWBӲj`P/WfsF|%A%'+}56; c7mBgP0LT$SY9&+t|u0h^8TJ8[{)Pk 6}u4: Ne\ḓ^n(͋? (%:DF{ݟmMO~sPsޣu ?T;#IycjqIIǦAm.gj=kRXxVv]C  rt?CS̿,<d'+RW0ܘ.٬>r`ߟû1u{ǂ, .^Bͩ_G;˂0'[/aTm#ܹ]< 6 =#C3ƝBi2><})j2\}fU[v#G05j)_|"ea :Ii:ׄ$CD_fU'6V -~ +0>Ng~qadqb,}G@-7Lz&,ߛ5pKg#!s{D(ljxlxN V48 BXHޭ8xJ^xD~s>yih A2qiV59JɌK?X]\a?I];Q2i(6(1?#mz PNO1*wz!ЌA\д\_UKCV? RRF*#ɕhPrWJΣr`zqjC)S3Odk|ׁ)\<=e'O yZ<ôȠ`ϕ ·d>OH6B81)N*2s +Q yhM +A+ã=)RN6"8czj LK:Yiq]jI vgॏAOeydocٰ`R+1}U)ț=\]EAq8f)ؚl%F BzR-5Jm]2NCiPglNB>rI<5zd{&T6цwR*Ԁ 4F*l}o&w;І 0 gÚtGRȇ+e: js)gFWu JePd{{Ý{iSOE^&x!ϙ#YMT<+JT[(U܌½L[J<4fx02nmv/jݦjF -e]^D5NSgu=t<7&_z1Ko%-?`h)e望@5MJ hC%MA-ZUn=lQ6Y_~W!xi~ )T<fcDg783D<AgWau0a=?)ԑ(a5k-ĨA eHcqXjD6AhGAԯw@Vc,uODfj_gBOIy3eN/+߉#NxCbJɒ]Vt97Խ] =)?؀أezc&:I/e[bL8CY"jZEB;I})YC-ymގ2~F2X0.3ͭj۲RN>nЇdx/!B%Wz0Eګg <fYw-RN,% {!c4:e*_e_'WUGpnE1 EގpI`b[n#18(- /~mB[/BKgoua#yhθnv CO:`@.i`!) d {=2x7`eՁ>sZH_5zEFfA(sNb J~p_E|k/A prbGsdz,k8EJ(U*‡q#K-y5yliZ|]6g=T)E^Ahr;TU&2~^@:Lj. t y Mҥ)s,1{1s3 J$`@sy8|y3YN&#hݹW%vU*xpjpHHZPPءȿM `f::f~M}- 4u7g1[^g(( ,"n6mKNn$*/A 7WR_.yjh|һی9^DY7H66|OWl^Z2p+J6rIi^mm$)O@[\zF7\װ%fLgP]Bt.@Fg҆SIKg=hwMȧ~ȑ0:KDNX (%%WTa)O'2~o,+ؗ%tPBR2#GphMɠciHƖ7u U'2`@$"{fdd SMRYw] =uAc7 Y_n q&JjՙMiEIr4ջ@hDO+'FMa_O.3d[|oֿj, ȓSi^K˜,znyrD_k E-rNGiF:m|憣veRf1: h2"|8ڠSW//T Y͈&up&n0"$Sm Q al<6w5ca"|X Vda͇C#D:uIGBu#Qlw0s>"OZ#5|7R)Fpp6=ya]$k`[ c*g@N̾gG{0Og 8Q{\T71` iS[hh:d{sM/^ /| L^Nn[[0cd9#L.ФFyr5rꃆA>myi)s2_Yl9qy3<%3R\٢cA^[CRW߹9Y.2wx`ެ>γhB ~c:RXJ|e E)[^8H̍Oyi-R/[# =*;|E,AfX'_5:#M~|⹋6T_PtaN:&{Ŕc,G:4kZKC5g ;Gu: dS'+ԧ~@jhZx6Ԉ,8יH'-gʅaήC?U YNg]ǎN[y$VE]pS)~+j^ma ;H#E`( |l ]&ZhYml.Ƿ2 Dpї<|aCQjx5yl[;׮!؉wn5N]YPkDaŎGwq $vcQMԾ[Z> h䖻PqeD>S1zZvD 5Dˣesv D Lхn/|5Ϳ );؂,ѥ]Mv&`ؤBF X1.T&RG,ҤgODYЮweYoW]̪(HIijq<5A&ޞ@vy)\:>R\B8Zs#u?GcwOY+9BQdJ9sy׆qrOsWz܎շɕ/!@/?? ̎EFa}(6/IrǦ~ sb/M\*Ry|9VuLmb~ - (nhȈ0~rE@lzu}\r`t;85i{`sJ˦S-rq?0R 3Tu˿`dj_[ )۪6 N Nhafx`B-utiwzǗڷ 0D06 A5ݦ?m:Sdޣ*!dojįU;, Y#2o@FB5ZUkjzщs{rx{i^q,'nI)Īø|`/~9ȐAK-mp1tD6r jP܇@a"ʧzjMzKY1lvWnn uFX2b$*(@‡P[fL`wٕl;\I{<:6 L)6ڀ `E<-<2y r]ٞpgj}顫-&R1`Z&|i lnLRehx;.c ìeͶVH}>T\gX% 7DE4873;&^ffP4bݽX=I?=+←7?{ڃ 01ŇB̦x)(Q'8ԗ<MXSJD ?l9@֥{B{F1^4imF#vm[I,NX[+*}Evied`e bA~[km*ӜZ"KM"]vWaV| }][9!r)C`iLz9q>1_Mٖ(Q\oF/ʂ%Yș%$+AԎ\b 2ҵ#s 0]/'NC[7OуhomLʟ9*[$IkMa%]{JijE2ndƕRbH!0ֳ%9>$V G勁G09VǞΰxfۊW$OTyo;28oo@ g$J(QUElBeKcz3? Mf zfȖR@d=L&#B֊[Bqh&)RչXi4ܹ=- S$?W?t6W+kpm2lq!ZA'9EJ}#řO&gk<{s3S,htr#PnB,P j{Crs08gU C^&=[Z$/bJma@jP5ƀ~~>^'\1g,xLDLWķ,m ]6GۉъcN@hS5i; Ezpz`v8+p]9wuU29} ;M4.VaG#q}\fb:Ǻj&"[%!JL[o5dʿݦ 槖˟]/rWc:6<(I%q]B&q^:An4`.2˺Hr {M}tl8 ^#dFkڈ%_ ,CO`?f|AS}5*ވsD m$W&$޶,2o#+97ebJ,Rz>Tж#h$$ҞK+U'*uN<`4pH4m?]V9.襲ZEї}F,ʆ' "| $WРT""e =Wu*؆TX-q"|@jmb$\<GaKJB}"y7Ui څCmfK5#ZF_zLY0O@& 飆uMNp$=1@1_(؄l.X4ŝ:`|<%(RyY6ZĐ,IɴޘەTPQJ ~}w5S&[QXwi4[8O˰?m|Rb46ƨ,NrSy91D^Ԇ Dm1\ȋLۥ|ФR3"~Oaw8&sEVLGgyz"8Ꮔ:;fG!k۩2(ՠPŒ|~ tECq3NDO>$%Fϵ~ce@N?jIXrܣXˮ$T Qፎ" FnL_Չe|//ON6q[޼'b8l^ dͯgxE>rAGJ%'JQ56IJh#޲ycfU |٤16 N>JAʢݰQK͘1!d"f&051!LW$yY?fZc}cz&quw(u;xSO@{E"UOV"_v\4Pz[As˻HM Rx1+x_I1 ѕ {b DH0C՞SDb[>FxT;eGM.5)jrg P}w~K$R\dqj~虢 zOYWk ^1MYoL[e,P`aF5ɞnMr`MdG ~(HAS1jP3XiDlm͛nVHx$r^}nZXHhsxEjGiຳ?|U!Gp5]i0۳m)G{0t]dRk=CbByAj*/=~*B+0Jsf),˱A!ʋ]L&Y>hWvX3.݊,AFmd;f9ӌ&pyr,[ X{u>MUFgֈrGρ)A%LTHzN۠% m̦_ B )޺0@bNcKu̘uaY!@Vw(+nSN'~FWyj!L ڶ&ʨdC.m*1WO*Wm_HG,U־%3Lt (,>0Y)|tpOMsb%ঐ ڙĭǞw"8ȁѲz`"}7o5@Mx30~ )if<\+Q8i[ػDq&.V|ǍeU1Ì1mYe{I݂(ra%kKO4DyN90>/hyb.Y.#dieY9!⎩e.ˌe{0%ˍH UeDWfqoy[/EqBLY( {y]Lٽ ~>XE@^Q6' :B|+֪=ɩ!oS9u*P>?>` n|ލW~`N)V[=,p +N-EkBeS<+z<_v G19+K] (E/'u0I>Cz{%,C Pe@`U߃ɗep ;}q.8>=A >_i}b#Mft8-JJnc(?P^KNj>4w`R=j}vsgfE& NZ.IS2G{IӢd=z}pn[+;F<(?(C&aټVi?GC`bךx˄V/E9Dns )tҊ6-}rW"Ok6gcZ'-C .$u쒜rS Q:  DE(\2J.c܎H!g &29Wc$UbKwAtHh]:rŖ؞V"R }0wO܉3u+!}O@j«þX_Ͱ߽op";[({]M6PQ@?W8w鲄|IӏBn 8?e nf"{Jԩm=R#JMwb&]Y}:n]_ i3 j]ICؐ_y!gU<rI#m謵~M0諺o: Pɴͷ:pF*7aw]"zC5kcA!bb ^?V9LCize5cP Ce|OVځLGU/2Rg_c֥̩R}xGYߵ(K KJB,ä&cd6%n'oALRK2ef /c:)Eq˽tmav@ ןߺeWGU>vh4qsj=qIe6؛@.P ūɂ bOnl?#9 p*y("W2gl!B LDAЗdjdI[F{ B_Sl0!ήd̷0" ILsY `'S]W@!@ ~D?:3ةToF47U{EӾM9RڡTqJϽqՁԉ Ks9uxF  ;)ω,5Z"#\X?qLޚioɲ^FG36&89 BWŗd5k3kʦ 󩻷+,Eeˇ,]J?pbEwo.a&&MRԗCV_մ#K5Kva(ٙ`|z\8y)oumWYx}{`7 n{B(_%mG% Gzd-Hzx Vc0ͬHsAI6DF?[dW;-*)xab6Dc5m=JR t@NK#Q^@`Rw}ܞ79]n]8/05F'2.)L[9[n2}~€4y^5U#gA(l%MnY1m[5 #\I93m.BfScDS~:( @ed͌|2db_50WQVɧ7ٗBGl0ֈ Jrc&+C`&͵{:Ѕרd(|Hu).E`d%vڶ̕uk];ϮD̀ ,!rA*bGyPPFiV5Sz"obQ>mgS%iNڞ.DIEZt~Y{TVhb9(*P[)d,'uW.Lȥ`q@z# dgx /q}\3Dkztu,k,x[|_y~'k“('Wgt˦!q nﬧƓEQvntKY%ʤLQ3bsfBmĿW ~pE8GXO)j ʾJPrޚ2,+ꇅk| -F"WwRބ-kwFVa` 5PZM ;+itlz8&xs_^5N*[1]#"Zqmpf)Kۣ:y~0K%XJmXư+ -&B@I: M0ADF!|2 f1dhD*av<V ^R$O /%#n h KE7 YIw- YZ8!٥~,] SH\Xݓ4*֝_ht k8z=2gGrѫ5དL͗s[MfOyB%`t$tvW :Q~])FϪwHGh47y;^2\p.W֖&#k-p 49!ZuLÇ$L{-:lփ%g^no> W.2oHF[RGA;W9B1`ʐ&2"a@tk.L4GS3E|@Cny{ wʺvn~r+aЉ=.=i|D0'\v82(R_0OvVyDh8_.2зԄhBU]1HKD"~ѳ`XE0ޱZ@u$bC,>5씪{Ŷ2+aF $tc]xa_3'73CE#]8Nceosvvn6w|d4L.ŏEK%Ǘک5 {f%Q9 ɲo;Z3.gZcdF}:=s`yǶ ''$<A!4%pAo%2a \4F_7ϣ-޺ & n*Vxm>,CHrw*BTЖ0q^VW"Aa0߹'T3a]SuzPV % COjwy$L o~\EV-O>lYNS)+1/ۋrEߥ ׺c⿼FNu/Ul>8okiQXr4ɭ'1Xg0yN?,p^x z|7D׽FM'/kk޳Wo!Fi@\1#cI4)p<>;,*GO[1qjY(c]r(* Ohsxq\gb׻_~HE.f]ۆXتK &g[ D9&ZTR #. ?P[6ư6 ">|.3Iio)Dkd"@[N9ZsoaJ-|c\<|PȞR(iV++b60Ź4.8PvDT/Ч8ff~NvGTtцW;4u!|QC9plMѵSM~ wv՝D}VF?|=E53akqvƍp2dמ%'#ޢʣv!FeX1:68!kQ-lVLZ,fG]-tH3A"3J"QB-7^mlߕī #WnrppW9IfƉʡGf$Y՝mv+hW1qs2 Zf_ȼT;%K-wFMtVbA1Ū^3~*)1w+Ԛ4(;R&loy947[_Y1BIK1*RAkUFmF0_MΌڕf 3 w33ze 0H}&oO@Q nÍ2 #q)T_&i׃ǟ6T߶zFlO6!:UrXB@nf*~u<+y&f}$*Ґ9K&P&Q:C=Փq'! n=t+$GaV,Dj&;[.&Vbq,J/סYҲzl(䈈D$F̒z-S!T+cRj[1b׽"dL v/bDnГv%hm<X83)FXFe)o v:{HܹvaOjIpL]Ep7iyݮ?R:X[C?8m/6GVHpk#e_i}YiiD yn\<:Ĥs'U)_&1Kjmvy(1a6SF{͍|9; ]T1C* D 1@bϢԱs3zyycۍ;~]`/5gd^:(} d;a*?E~HwnxSՂ7}n7;(kzYi[Y+2pjPXMgFDH]/y'%1n.i0=܃,"%\H X' ǻPrnv;ܔ$!"d ?WU} S8kEQN9pֲŭ0HYJڨ=r$4bvT F`MC^Dk8JW߶bq1*6l[)}Z})E!q>d1ȲZ耏_f{v36uτ>o[3mR֠kKѢLKTy w g'YK~ľs􇷰5O;Cf"]pmN!ɟ4Y)s}ehW7oRr1 Ɛnr; dl͕@A-P5R4"C4:!xܓ'` @'}cF`K)@D߷SM7?隍'M`b|iOǒ 6}֤zH n(H_.r TK̝gx _<hzZJ.SՇr>`Lf^w1Y[p@?P^RH k:1@ . Cd0FrDž "x׉рؼ6 ϫmR3OҁߥAu@![>>Agh[72 %Px:,k8 NrQe|0TbVNxH[ͽ,m$>cih4Nfu:7ν}3 QȮW&0suXR5>" @@:Oimq.2M94}662X*$iNeKN`*koEOAW#}dˢBK.~ɕ؇)BYFl-ya +'OO9ءǰ5 Ѣ1Dg8{wJ cN. =۬1ީ$W΋a}MGf siaDsYrAxGJ @?yC;Hy<9pNOL3݄1vm1iy V-ĻIw+E4ܶ5y!ﵷm 9f\QikTQO~\iUVېV[9k4ϕQm~ nӛL/:zd9 >w.2N$KȖVHZF$$|/֟(|,Dozx@`O1U^G.I\%$Y:ΚxuCu x]`]*e&9҅ٔn ar O7üRT:!sh8 =Uج@ 4iqVъ笿J8n]3Q>ȳ? bIW@f6Ð\g ҇Q jQo؜ tP+IQN/Ϛ&$d< Fy4{pH&ozsWQ̇ ,ڎgtr͑ûRkeѢgl@'A{ff{34PX6Q(g=lFm}o|8x#q\Th D<#TθMFqQ)C3+ڀav|o*e_xJjǧ4nnFN1z=I @oUCcb\ȄRy16xwЃi1-/pj)Ͽ8Z!G"&H 9DǦ; ,Du~lķ5 '[h煙{N a)*9tkoWbӮ|"p~&ZW'05OG(E> Pw㬡FTߒ/3S[-KnZhex%²wGF&q\JS޵kETS/RIakyIHFƖ6P,[?灒lYDH&]/o*Z_;pLNPAN?`#C[M naU9wiw7u;1aKM$_ HZ5 X ɷ(Rf/oE\\8bd'%eUBV\7пVjF[rzsPr贡;#]n wa:6_ܤvׁV=cӟjLEITvw_XBՋ8ȄԽչUpӲp[S !3ND|SI13G$ˆ+'f! {mh:M! XwVnе>]l~g*H 5Ёgs8sӱ?&m[=>ۙMyy0R!Ş*Zoɾv(X7fO\lÉ=U%BO{=?H:87D ©NvzԼK#,6%PrTp06ݰݻlB)rOu|Lu{sok)y!90iW~D^MH|מ.I+f&P/nY;@(bXVI xeK^#Bed^:UpRu ~8mv3D5 fGw6M{(~Ҁ^Kh 1CXF K H(cp1BK+wHt{._RSK:Sby_نv8h=\`4쏬XM|ti~ZtB0Ќ,}g*`E(A~3%%>n[(jguv}b ۺt-hqPC01Ű.ǧL#]Y9B|{Ha=RuBm^$yP1ۢ +ty{.垵CXsjк@ 61j04V p2d(֦!L$m (SC0|sԮs V@-~_\@{Ö́A7 @/(ƿ2~:=_cQmr]䕨~Xxl7оtClMR3k '1? ~oe;ܚEBLdc>B账إ`>,m ,77ep VڥHgc $59 hʖo(gEGkM mUH!X2L{ A0e9A<|\o\͈`/ - %h05ql0/=Hb~f2 ;%c\wpX]6㚃4t+u 4\O*mR2Q>k`13P?SmCc<9[Gcl??\f(2̓n1nϲ/ȸ,̔"=7x|E3tB[܀O8G0&;O8oYL(00,] ~6Gh|nR@ ZMkgms0%?3lyTZt:gu\h4S}6hOϾ${bj{?PO[{V8 .LC6wc>Lbk8Ms NWȻ,L\SYm?P2B2gk6P7+3 Yx-ÚoY w7EWp(]~ZEܲ^6û72>lC 1 W?U+'2 sFKcq1rurp˨ usa{G_,Ec1|wnSm;̜?)&%d-Y"! e)Gz(Y1T ح! Ԡ=JsHK/HJ?iI9^lT0P̓4rF 5Q^dxe{cXX프 g ^unZC=ߕOd3(,_0nb7A\J )7(TD]h4x?soT+Dwٌ+oJG>5q4̟l0-lROӒXM7$ڧsPu=3u@!"fi[="|]@Y0?c$t)}T͢)Blk2)J]}dh wl [8޿g!=95+nLjf`c3NZI7yi#)fZ]l$FSFk7 5?j$-vf"-4w~.COo䒱6%OA r>NN+=XwG ݱ0Ƅr%OB$tCo0z C &<>_@R B#&gąCgSGj-_"[eRvH^r[x\ZHhOfmc&V*L`^Yb(Z#l4#@OՄ.U19gk 5%o&„5^34?))Y}v m~.+zDۥxK @!d-X{5hYK(AKIϝ.?h,ƭƄ,395'>faMnul12TE1A7qmO Lj΂25m8QAojcO0zj9>35`ERG Jų2ER75q6HN9Є!,e6ͥJ"`>DaN7# h8" JaUWOHvu(9Fe$gO :P Tƻ 3x _D?CS'25e##J:jyXZADP5l:wކ\b۱( Nۛ,;tPۑxikd&U\><֮+},zwKY%1[-to&49xlMY.˯ે&:)vp -X4*1?Qʶ:Ä[K+h+_)W,"E`KzGLz9VhJHq(t[%[ [Ю߹y|HH~~+4t":;jmNs#olVɠRyuaPljH)UT q*ϽWl.&b:&̀2=LK.qRѐj@͸Gd ͖:ŷc86Ͽ (gҡFNn!>pi5FO )K;N #w+i;kp+3Wvl$LXk- `j{ sOCvp?P*3 Mj0VѾy{^HLU`.Q_Iէ;]k,ɣ`7WkE5oFo'ubD0b"ѻ,%SveO"K؉"fFGБ^CK0(`0(B-xpziQyu.zX3[kSe<,ĒCߛ1K|𸽻\-\^ɱ,u > T`'ԉ깖<=H7HH3C{+ٱT: [;;Wf'v S|ۍߑXDaR - Y=BKd^nyύ P ?[]RC[O79O k"]k=DT"G J?CVV9Uɘff6Uvϋ;Sl*4ؕ'xJ*2܎ ,K:_C*& rDb#FUדi\"1xdLV]d{}J|8!vҞ/iـ7ȆxK5H Z:Z̷;蓊Kcksh)J{pDBPj8PȒ<aNj (VsLX|WNDP´6f)qmhræm- _*f>U;s~D7Q.:FsCƩΤ"=(甩'<-)?CbkHo7^㴕$:2.qbO i9&lsk 2a $jDgn._r}4QQe?C. {KG,py: (%R ڃ"&Y}+S .Z=HL{SG?p-Z)ւ-Z Yr>ª[XvE 6WG ZcnIMuJ2 \$v0N_Cij8cTB{b3N?9뙂=#6SMq0Gvd0/\Zphyc ug.2Gͬc& .6*v&aˆ]ϟVE#P;Dp}J37x,Ʒ4ZZ2$?a>A&Kˏq6i,Zuڗ(8&7(vƈu7LPZ-f@& ZAi}2&ng# &ՠ(n_Yp2L= 0xPXgo4#L74SЄ[: x l^YoQ0vW8=N;?SWޥqqZNPX9HӍQԵ[e $B}.Dπe }K`FpOɳbPj$·@A[Zc ]AYÑr| S0sz}@a隩eo~0x?|btSl'O {Hkce)t:K^&K$UJ CKij%1}ǐ['zx#xǩ.K6ߑ>5 " YJ@xUUgabܪ'.nrՏRKIa1G1ʵU"W8?׈uu3fLB!_:ŗJ}Kzf'FlUUA Uߡ#3,O~|*gyv3kDpesV&d)C*1Zg'~V[[c 89#0&.&0CP 5Pa}{˜Ҵ[9-İ8h q~4"%,w/Q|fe4}^tyy$ m?5LDe{'k؉rdoʌUi^5E[FžZLN}7 ֏ @ 4yO>!---v 9veF}_t(;hWw8.,]j), '40kK6@ݨrxLGJIV7iNOӹ^{ETGț*դ NߌEm /~pgg<G8'p(]s.]4.i_!CvfwX"w}B:&  sJuEnWSp w7*U&>5d[I50 r[S[E O%=a5j |Ln%Gg6^Fݓ r>_5ӹw ˪YLᶘQ`;e؜#f1 /pXGߢ|u&p!"n+]A#Fdrj y`ڭ#wKr.k$6 q o?LL婳; r$7 \sG "'z꬚Wz>6!qiB2bCvT'J{;h}"6)шzt' GeȂmOy!@ЌqT-vt qk[ԸO kk!nD]Q%-";%[NQqIPĮZIo[J|ĄIJB)uGy]gVelSzwM-=+:-p=)Jb/m8pm'#ᦻP3-i$xgh y~j\]nC^uu}2۔G :z5hIjeݶKz}-5g=fGҚOSK[9SK(M_,F9lP=e͂!qv%gvV\qy -[""V;zHG33^_vjo|ͫN&Z9l~LDS<& Ӂa/,HD`@$U_4`1vV&j&],fg%]?-pV#4x4{q d8-`IeE-$O7U ; HY8@fhw_^E$*gp{>zn%Wh]7]AE 5xA +Y $ҏ[BD5d:IzvZ5@J=ug(n.--\d- /EpHMhC=`PnSLZĮ55IJG5+ MTsʝѲh?v?9ܢiyD*[kK-M|dMhw|<@+P&,62J>Nc.IsX7\A~v;Lp޵gHCܷϜ$Jg{>Hvj}D`M΃m(A>{w0C:ܡ0? S,Aw2رn2$,{Eu>>Z4Ќ+f/{uE,hY6VY5Q`EpC MCB݄"X_^Gh/U0+j>7W%L&{/]^6[_Y?D29>g% ob+@h[^1^|kU:59ǝ,jy!p"z1E]`Hq?( t0oDeiW(']pQۘc }uEK%Ɨڶ!nF};q7a$CIK射M|l םDY6cVKmDmNJ#&eQ"n/*{d1l!Khzdl3"[M2t@LT@^f #1v"ilN8F[[9JK$6 6d ~dfmdɺX+=!GO{?ݚcgɤo̲["gn ^[ $mQw00|ޤn&=Fs(;߂vNXz2sbP;Ias$H_Ϙt0@"V n%t75Bdž%O{%bSJ+l|# =.^.]lA7v^:>[ G!, ~N ' ʌz]nDx}NˆݓiUܺp}YlRmαaEl`d$d/Jb$VklxF-2ֿ]tu4рdE@󜟩%~4:f0}L}^_nI`7;-(Jrv[dŮo56R}M(E{m F0~ERɩ6L:%0鱲-ItUc QՃhbepA;k}S%U/"^xPfu3Ez\d/%ǁD6sy4Đb?]Jmt@Z~H36A7ao8:7?:D6RayM/6F[\_;pER:BVJg|i*2"HM\06hxC~uQ&mȎhb|VYdE.]į1" MvZ;Og 0Z]\.p/"G6=2U$jvLİdL q25/Wv]\ِ]_9Y),;DCNk)'[c>1rXXVˌ,v+*K+XAfbE>%%/ 2e@fIg"72BeF9ls3MDf)흯% |$,ħ7d7nG2s28e-3ʛ&QCQlq QG@)=Œ˕{hjȮ$Y<Q$'_gQ8<`уԢ@z@DZc!/J/I% OyK$.~9ai!=]\*ҿgm{?ߵv$=ރ{ߕ$\TeZԁjV_M[dqew@Ku߽Rdj2hK0sD˜wQ*-pЉg3LNnC 9#_^DA692S/)醽au`8Z1v:l<'#^RkAv=e%3c. DžC[K )|0z!6>45[?Q>!z$W4Gĝ=iJUtvck]i a&Em,kZkAgwd՞ŵ_Uþ;X8T뼇%!N5 vh`zk]8,rK0i0G?WEmWn SO?GVBh,垅\,_. >'նu Rb'lYZZ\ښпtkAOp,lVO_Ɲ@wߐgd*FJҸciQ]^'g+xrx $CnE_I>F *cmjӪ_LM:R Br:@E9_RHC7%hބuB C++G*`<#lICK0?(>/5_{a_EbLC!E0ei`P`V\Fm!WaLxs#Ueҍr4wY@`{39[C=g6n;AF`ʞ]=BbNeGw7p|[oY(:i *i@cŵ$ 'G[* 7G{Ӛ (rs,Sv@S ͚. [  p3v)-G,yF h6b6%w?ijT-wJQ>,9o毦; V 0ݝZ`1T x_Z?ܧ\?D07Z9 K≹oڂFOL|q$̫M:wԺyoBPv!LZ3Ta( {~Ԩkym?7ݭ .ޡj.@n^wbj+kG2vQXp}dabĐӋaN'z obB;ˆN4,L=ei;-W߄Z4$룪 ^2 2,)s2\pINThK+# Vv9-x؝2v}:,qh;g+ pY*mo|'{C"rQ*F@+ZWO^o\=}#5%<88D$ws4O*L6lp*t48Ltnzyלa_W x&e}/){8fwhUYmI$oqAÿi;,UR*`\!-':aV}DYŠ׶*P6wO897&NPBB7&M_a1ݭ5 'f˝J2^hz.1Kʑv?f sv)7=HēSS1٪j?}̲!/TDq;ՀJ獂I>蚤U Z3ZXjoju+G`eQ5{wr>"7:̕h1e Z ”(//5o^ u2XA~Kՙe{߉'p2Fx ;uYom 2Yt?_IUZc<(B #L>žc}W3ar/\ )T k5O3\t]S-  =J ,"I&:[{g[ ,Ȁ­ 6J2ca%hkL)c}TzZsI]} M"eyQu>NE-:O{r  $bzH~pqO)8ZXz܈XjH;K=J}46q جvj?_LǗIYMex- Ə2ZNۃq<8OF`'s4+9f )v~'֒咳ɷ\s.=G=XNo.pT<7A:4GConf3B,EfI7 uQ`xpt ۀ3]  ~*T'k+nIjcNd nCpp|z0}wTGz` QGNl5`cr$0x# ɫ=(|F![@00)U~ ![GDm_M{A`sO0 `OԄkydP8`;xI(UzWk YaycHBYMkE$~)g!MoCGiM(LO8B1?rD"QqnM^LxKRfpD#RTTB9t"M7vTZ7ς?cxCT^.c~#ZA*Sr%V˰[oe ҄ވTHp#8W.DXj+XmlT QR8}e'VyqP*e[ה+gZIiA^s"(k\ ߈ є`8 |g]H' S15JAEDO?;6Ȓ1S©rg'i!rߠi'(!ʓ_5淤8cdUo\9yd31a+goR糍GCfltu^^WT5'k)eK]M=f~f.2rZBÍx0) +py. T&Pi42y{s)zz1{E(헭Ȅe㱡|9Rj$zOH⿽p4s=)YtQkǫ%P`(/LꪍнNG-%_E,˴%&ŨKX*Ea+PK^nzI\rWg홌@6TvC~t\с>9yuв5y<\}JH/Y#Zdol.'kJ辺d6 1iBh3S#h7~;` E*B2lqYϟs"K^ٌgUwa38pYo$YS.$,OGcNQ݉:/ClJY\O|;߶%drO3|+Nc558p"e総XڥFq3c:B͕jDD$ ]/{Q ށCJa=RqD-60;抦*S=tX#B>Rɶ*]^Y횫!~Z/vt d(΋X5?(/)3w]g^jZM$Z dog.~py0RK٦dCL/Wwޛ줱WYA6>5&7~ߕ_ +7ηv,sc`Bk"k.֬{7T]FQ\穣b(+Emc`AJ=(Q|Vm{mf/lL:%*$ʘskw<Fc|nH-O* Ƽ9V4!}۶ijyO⡺VmGu{'ґ( BH:5ۻu7!TnJp"\pٚe4-r$eD|p.'ȔyD|ea'Dlș)cMPGɍ r+yx1r!2HB"JhMd]j:&7>f7c+gol)Jgu]YɎőDzYJ*Vz+:+ Mv? !yX|ڰ$6P|/ǝTPm/-+#Cs_9 b,=|cm6ʣS&>YջdlZ+9c yJֻ2)ML+b@Cgь7bxD!5.P¡>~T˰;i))WkBԌZÛ%e#CY7I\zUA{4s2p+&{6pϛDՏzUs^_'\!Isb6B:ځ[ueŀs'8*I/lw'^D/R)D@ UE[vIhEbu`6yi_GzWKw LDФ^7N3ؠf>/53 -e:@U9O0#ߛ‚Yœ:t,#f \8E ղ=f"r`N@Bˡ/BaSd*KĠyUKۦw{Vl֮ng,*M!~#]ܾry(7/7$]!;"[ph,1]<^y6O5 IG!{&bAPO:+x 6_+ל4s>Q,oh0iW/,C%tB(gn<B\ #י葖8'uQyjk@M!ꍂ?ݰ\.=wT>:ܦW[&4~p`e{t!kɶ&Z^͈YWDܥOA\اot(A'|e-yǜj>n ԡhnP:F+ktgH&& AMKdx5v\g3K4YX( +E=',LѾ #Ȧ<6A.򰺘DjZn:2hZ!8.tvw8뀳8I=Lhamny1df&-]/Uz@EMkDVSripz$Yka$aY 9ԙUv r0, b:2Lsz#EVDT$3O3mKGyKT6;,6V>Ibcx1Tsp$ N%emWp' K:b6ԉN/p\?M;B┋@. U7׻́{?lXTP&ԎfDqEڏ;)3"!3oɦ_.{-4f=L$x t E[A |'iAfs$7DZ1ۮ ?ZgӢ[x(.ɕ߇J_s h{hh"4w6go_Eẍ">u4dIHŪS|P&m'F+XAO2 6AuguE1bqJM>1FHtud$ly(4d; j;[`QۭK!aNŭkYdݿ⓵LC-_) >v^qST>.GHN oi󈧏X̾J;gL> 7d`ʱP婢 \]Y Sd(;JH [$IdWPvkn'" n ۢ~Twp扵ѥUh=Zs)yj8=MӬk(^ ֔2 K3yg.Q:R4noy5 w6j>Jfr :_0*Ct=trlD[h>gNMR5E^-ƻϔ0䞎"kUTWT8!;KjEW3(.NT/ _ :1jU@QYrQ sE7jCݼLhz^Fn_P̈́r~z(Z[۟>CDT.)G8ot͔L%g[soHZcH;ߵ!h,XT_Z}z90sf9Gx]:4N}+=ژLZS>;p(bu d{,Ly9½o4"7 M Ys[kld୦>X)(w?B>:4ce+|d_0|eXYuF=np?Q!Kb >Ϧq %_HkLI @-N&8,b5DZ%lTFdviZNy/cyjCX{֊]ikʱ@eGP'aoBv"y/‚U% T| #9f(K/i"3rI.PBHD\yZ:7ǩW[aYx+p%Io'yY ǩWS㘀BMyEBI.~ 7gRCjsodGbKHF}LH;9}!0ljRІs<ۍf)!9o7ha!ܨBǵO$g0a? 4+{=yk\횉LTDj{l=dڧ*L)7{jESxlĚӌ=2Lq(vMHy9Sl+ZMZC`)L EY+{bU+ny1D# 02Vk-5[P)ݞ &_RR%',PpM]lH_ KzPcLxlsn:Ib[v0`эL+kN$|7 (mjiWOd,2O{kg4T# ժ;i@52քSov4Ƈt.2U3:U*gy)I^=} Bu> xJ4kI%c7QP|YkЛO9 =ۭ3pcQ\ p d㱜h'{g1jUUT XU, gf_Ld" 0kss.y1]q3$ O$rR Սr?jv5}+<ibkZųo/6[A(ɧ@ve|k3%ɖ< ev**y>&,du,zcӈJrL+r{˓b̥xAoFkF Xfov6hY1:8($YCpHhd=gL}(HjShdGe:+n#9=hoA.+b\:bw&J Qȩܺm( ] ̰exE$]VRmxV)'Z rw>*I]R{[#ղ0#QsǷԓ1<–]32 8 ]Ih9f"k0pٽ |nIrYpJit7q BHE8&v-ھŰȈԄ_{Q!ZC+ X5]g9>wJɋ׼8+?SG:cr~Ii;fWBOD's.j γ;OD.y ≝)5!`ԛ@N^2TGP^xMO)WpS"yB w6@Rx23Okq…O&2g$vÎ)}t|OySBu) eJ zA{vĽPN&jb3Oե_sH,?y꺒v姤]^?2pt嚻0Fq.*ťғv zVk±ؼ&IV e[,.[/-yaxܸ D])\A$& ~"%ӄ׷vTF*z}(a7DId1mP^@oNQWʐ'dCxV8 y_җdad qcf6q5]G\ vxDOSǸ}$e nbuq>_ -5G)eDh y#0h|q@CB)ct{&ބ(뤘o;I`Q|l=ώƒ%y$/p0x9*N15dVsP4%j$I1V딶-Z2apR\/6O({FDC{$iF\Z>븠dYƊs éu9]B{ocPR<̠]GzӴnJ'2zɵA v qu56cNsب̨lƬ&aBb2|9|[HHh< ( %C S9g:N:N YR^5T$R7PqP@;k{׊rFhx2ٔr#;t֚Ԅ(6]sh>vv}܀ O43DMz71ZTuG*Ψ)do{ _P JE=+oxz $[Wq~S gHkI{*=7Dh8vW,{[ 2X..3܌W}YxH N (9{<78 Z@v L{k9.zq?DB8 )jge l擎1N\x LUNR@Z6aM/"Gm>13a;yH*=#H5sA}_b~%=S;<_ ZT= ahЌfcɑ@O JТ;ٹވR^qCVeӴ+fz 0 AЭ\Gݵghc# 4wkH[NsWFZZa߸Rx:(N`6}{`k;țwHiMGSφԊY[{YhꝨJ'WMx9zn=p%-r OfWa2K.YCp$ۓVy@4Vd9\Rqxq ez*9Ӫq B^@시gm~$.H\ȯ@"IKC( ɺq+P _.i'C+ToQ,áUzŏ!b >YSc-P}E6p&p4fٳUtJ!rhdT~%u P)BRYžw ot\E+CM|:ǘ"a׬n#R^emS_ ~2C;-}[>ٙ;־$X`"xP13p=7vv6M|uUQ_=X#2pF {۬$urA|/;sZohm?IV2( H0'8( >wqmvOf'5K!CM(r#:ǪNrTIFJ7rγi-z]>zPq΢i<:3@$^3>*Ho3Y mnWaf-s>T#S,3 !\&Ks{2 DCxG²blb`*Hcvtp:hrK '(&X6+3K'd&keI'W'<,pAAQmm$kgt Rsb˝#/sy_O~85'g qclcU-󥥍2zoH`dMP.0 i hhKJ/B_n0ft_,|/4E UkG%~=% v.z\0|*-~L #| A'[FdN|76xب|A^R828qa]NJb/~/#ڗ8DUd)}mq̅s†lԹ͗b=QfW:^S''f -(bN'd.KtJ4x 95]aV:3̅Rv3?%F <qjpdv8ac'&e}Oo}>9F􍚽V.늑Luε8(q Puk ˼[ jTyz'Q\`YF+u^W@}&|7盼,^9bRëJit=$h<``A.modΞ_TcoIGH=% %U;vGӴb,7>GIT .0 K=nmN,c :!aЌxfԟ7cNR2)2*#ԑKn|NȲ7bhe;>7훁 S~o`_ ͽCTyl ':-^Lw5%{yF6 Y‡1YUǾM!0C' a*v%U w/\rύXpZddssFO%-:ÞM.4ɝ7P3yыrS{ ݻӫ!S#KaS <7;ʧHJbhEv>&DEuiA`; އ”Y8י*OzrQ_M箍?;b|0R _Rh̢ҲoO~, \4^ж8 zrw(QAVA#g&:"mk*s,_<s+I֙[)K,e&L-qA@/6G_=)4Wd۞EKϮxMUSV_.1w8XҔATոSI%?QWI $UNnĹA]K44ul/@EJUٲ(7u%N-[+.Ոݑ w;ڸvRzzԄ "hOszaS]Pbت_HDݔf30=PT"f]߃C)p/ÜzVob)5@i"]G Ǘ_ ==VP7Jf45[g1pEG Vtk_rtuIK40%CKK,R۩ A z`/- o-s̋))XrU`;]!L3􀕅뜮?Y;iBYo/j `Tlz"V30bk ]u$3;(lL1 u8 7%e7gBCN=؏d!P.WrXEzyh|5w]Rnop9c2JO7Z*o9,c&oJ"3->Q* \Kσ24Į1'k>aO``TX M=gUy uf!_€)՞ԌܭxSNcg llD8ߪwɁhg1I˫ !i n?(_(uWzwWoHMh: YOWЏ ?iщqeᲡ1 g7昙yv`[jiFҗ៴ɜM.K[KLAiky6++5!`fEs6h|a6x !_/Q~o{I10T&`7]~fجOћu.?\0 sw|?C E01'l/~Έdh'U5eFWŮPcyo8Qڣf(t!?Jͽ @ea1U1},5`GM"+_ l0m?g7wk'W(sg XdyþU|t]>.'eF@-8oE!"aI%7zo=a:hCخ16B4כ95gz~Oi2E7"lePtw yZ97 Xj*.HisAӨov#{ 6K.GOrM%2.lx_n/E/\-̸$쓾I0\e<Ʀ~6ʭA]w^P(vJwnߠ^$nS0SV~n4Kv@kAt㇅sH@ I^Ӊ_V/!5T3 :G%S|wY\+}S Tr8?}f9;wPq#Aɳ3١8tFx=-魺286-ԭm[v4;NKװ~ u$;)vm?6KiLLw(ݞڶ|h?ўK޾ G P 4j'+ Y?bɛAENq= le*Pa%Y ,d j.5+NK9O,#XMXB)4Dۺ!m)nu9eB1;d&C⍗`1-Rp M2d΀(&uRWApg53Ԡ޳_8Dmn[!Ƹd:'錪d.g:\~L_rTK+DU0gʒX).sLyL9%pe;^`*Bz/PHN!FFAQ2^{}(CWlM$+[ņ렟1*hjI>=ٽejOQV?S0!=rQi=}6/b5(!s OMW rreo}A J -ߣ\lHS,Q{ q1ȖUFD<ъgzuNnɩ}deK|n ㄏ0BW1Ïj1%p+T=8c"7O֞K/t2Q*\2u2=?qZ*!/ѦPx 6"u)x*(<)/O&`1a%069P&"OvBX !jX#RfdmPYQ Oy2&kde]5!Q.ŇV5c Gb4C@x:B$o…Zx dj{QeQY,,K!frt{]А%{HH) ^xo-g ;%I;9ȣZ%id`0Xs ;/SiH% @R/}󋊹*s۬My3*l BS&(1VP 3wvA :]ŕ*DFu^Aؗ3j<ǩ1sV(t?DH|巂ڶUiHIH!Όfj,rNoikH0/Pm&2)xTm .> q^1Y_Ч.}D*%jxJmAJSk:Cn$/Dw' 4mZ$ i6))g׀"Bt;96-JF=_;Q li-kh~6|xL~?8U7Xs /qT:tɵ[ }l[24uM bB=< ++SiJv9𙬄(X8L 8Y0$;?| 2 o,]aט+i|5]Kۍ6D즲>) 2I=לG"'AJ+V!Ɋn* eEBY')59?}GA5!킹 D6϶@*X̝r!~[@Ao+i @nwndbHt 3jZ-rɳ9-ψy2A ӶYuaVZO1EoKR% /8/z𗇾UE36@EQVâ3y`j6-#A>u|WjBY7_zbh59sQ`H f R"H=Q\46m01_ ݻǷZv$_l{AԢ$|^7{xk(rலBܹJH9moAYV,9/9dOWӌbZ30w샲nUqb9A@8AaZs9##7Vyc\zއՑ~O