ruby2.5-rubygem-passenger-doc-6.0.17-bp155.1.5 >  A dkPI%z 6*;>f\]; Qsf'9b{ox_bcJ}c^St6SE>.B PүH!u}ɒ5JUWV#q\F kŏaa]WE-Ġ'u?BPvʰL ғ&BJhVkz]]ȧf҉ә$^4 `@i4A'p.VTZ&\ Q  +wrڲ%: OFrAE3㰉f=ϑݵOAeV8br])n4vS8~;:>m`|"8Ȭs)\6/lɝmo%a30R ,x ߿2;zd،4ۜvcG^V) .7Jr 09GzGκ cADs)L`32TJkO'(Uphk|b/op>L2 i`s(W2".u D{V-Yַ!8o*d>6N%l꽲%喡qS`KGe]o'D֟g*q캁'2ɁYyXNiDZ[o:p$3SsFSk|"jtCH{DEoh>LzM~q7jQb22z?=?P:ɊP?b\,eziga3޸t6 =S ZO{#sl? >p;?d ' 1 R ,NT\oo -o <o Zo o po,o Wo00oNlNNOE(Oh8OpE9PE:V=EFGoH|oI8oXY\o]o^$bcFdefluovzCruby2.5-rubygem-passenger-doc6.0.17bp155.1.5RDoc documentation for passengerDocumentation generated at gem installation time. Usually in RDoc and RI formats.dkPjobs-power8-04SUSE Linux Enterprise 15 SP5openSUSEGPL-2.0-only AND MIThttps://bugs.opensuse.orgDevelopment/Languages/Rubyhttps://www.phusionpassenger.com/linuxppc64le ,BI xsPzNQ63]?4HE)Q0-$C6qB?>;SS_MDQY<97;I]8X>4KUVVaPFT\?<:>L`;[C7N@:1+37fDKk%il1IKiycGX?MG7`~CO=c\AG><_:8|]IDT66NT6B3BNNXK]X4DF@dT\ky!USZ]_]_ye]Ie?eQNOcn.>%XJY= B )&GC5$$yYI52LNWhJhJPDH`%`dvX@V9^p[rJ'7FsKgH[^z[nvN`bKnlvn|NjK^dda}^qwQsSKgH[SpmlRIDmy?vN`mczK_a{kuygs]ycWsmcczuBiyjmEW[_[BgwlKWST-3oigIpltzqkrucy|n~Y[ZlyghdQ\a^h` c$<4N`DNM?00S I FUOt_P^cGl[ WVWKOQN|QTcIR:[Y5NN00004..98122F77..aoS"woL^cU;EX^`ywifctvxk`_ACj8k)?g*4g6J/=C`>R/=$9A;_FM[]A]9EYQSsgHHn?_6Af<eMNK`SXKMLKXa\PRMS[[ue_YDhTerSaQ]emw]_GMSQSek L@FMUT2iV481,P@<Jept|`h$YQ}cL<86H.>RB>Lrv~bjxv<>occOSSOSS;QPEM.8@BFJF_!`MDa-IC0W[OQRrFHqLp19:pJ/yIL+hxbesJ32/P860/Y)$&1opMf,602ta]\Egvt wNphadehhllb?Mk`J7PT>FVbdH*" EFYdFWAX3CJRf/?wnsv`HZRPpydqJ[Kgjyzuwgcyevgq|uq{cYGrSSSa{S[[:g}k{YMmY}Yo'ZhTRVd^=TbNLP^X7f@U%@Zl)6FC;8IPB@:U^<:<YH>8<[<>Dc__4UKINg]PKDbSbXK67555EIM59I95\[UHDXMSKh@mQBAAFDDA@0  3!,O11O!8)1//5M-3O3E(v0&92;*+&=+EkiLbUGVO[NTX]LddfXZG^c_^V]T}>PT@JLDD>B>CCUFQCK]CI[Pg^DEDF_L[h81=N9D5*{-6QJh&ER'1<C,c?,}9, ->8U5A9*"  &sAAA큤AA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤A큤AAA큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤A큤AAA큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkNdkN92f7b4d50ba4eaa051f515a960a97e7496e2cf4ebcc76aa0bdb9e1802761013a3804d8014631f0c8bf70491b00e4c35457bcfe945af3018bad9d00f3721fe50ce3f1409d8bf219e9550c8a7d10bdf47a7c40dbf3d2477dd7615e178a233ba56681ac6f3abff45372444fe63cd5aa39c9abaf8497ef4546fd093a17313b6af1f3b1e1c560f5f6d4ecbf7c6d872929ed0f59319b8f6e56e013fcd1a95103ed95d0cde2ffb2f656878110b08b150fc954a109bb8f5d37aeeb9d21e1fdd4e86723e701240bc73eebd9004b53ace91c36ef21eac2bfefa33b344a7596e81f923942786f36256071d03a4330b7261ebfb5a873fbf1bba3dedefbde35bfc0864bd754f5846c1b8dd250388729951e0c6ccaadcd2cb60dcb0a883bec683eb27daaf72104e7a1fb6e7cb5f33ec990919f5a120f4f76712ad552731e6d5c3416131037d440d689e0f104c03205aac5e232d15f56d7866dc95158738cfa440a2855f89e58e724398483d1f808efac936f03cc7aec2e39221e8ddb2d893a62f8c1267928c309bab52162ca3e92eb3867dc1ff9bcc3fb82b32bdf3145e9693b4f81d5085aad39be07fd1f3cb589cc07a186bc2065bd46d7d19a77dd9e2f74a0280205c7e6d76973668b21a749d635fdaf1c5d08edafbdc400bfc3d28ed8168259ff13dd1d53dea982e5a6b7d2bd0ff2b7e5d4a81f38b8da697b82affb0fc39f066ae511989952bcbb2f7fee81da5fdb835a0b163d4dd6a68952730b48a7954f1656e3eff57a02e7777be967d734cb6531ebeb5c7a8f47d6810c4e9c923c1e2a2b017f3a7f17f438dfee83bf6d3063e892540b1d431a8daeb54f4032533a83e396db9edba50c3692d464421a9d9cef392e2e7b1e21566fabd02659a7e4b0758a38b3af2a2b8b699caf7737e71744d7a25721c61182f220faff36accffe3a3f460d1fe15651f3655bc1e02cab5132e1a0d0af0df3d5815a35c148b62b3ee12fa9ec467d1cbc5e83cbc814d98c4f4213f791315964dda0ad8f8fe810d8895bc9340953f4364cf449fd1e903ec31ebfb69c4d00025520ceaf2a6e5465201035441a1d4aa1368a7f62a8d70ed51b5895f8a3266932a4c693e9f6e08b7af61032f6d7acad19d4b5e87c6bc311f47132a8bc0fe8edb021b07c22bc4c2f065f8bec00889d0ff46a4fa517c1e31c395b36b4d08b4749448acc81c6cb10b20ad3a97db0ab6c16949d83e9aa830f8ea64a1f8f7102bc2eaadc82dd48eb55bed8882a0380c8b96bcafe89acc0abef6f44a97332061a489f2679fc4b2e8e4fddc7365646bc3bf426468f837b95935f40524ed71c6507894c7fdb62fb3d984dfff13f579be16c06723379b31e6d2ec6fe67edf554c72592751f24f65db769ab439242e390a40c5f9d5f49e909a1f1a406573aa7640f03375650989e4ff45a35f3860c73fb858c6835c90ba1ede9f05bb1a410b6b0393538b15f626b06955366b9e2ac74ca103f8d553aaf0f86cb95b7ce2275033e46354ff0d37db98f529fcb21a27607fe75917b0363437c42b43515bde404118e7d2f740c3f03fe516bf86b889250e6ba866efbe451ac4c44fa1ade525c748da7bde579810b194e0ed162f14da37283db9344cbcef58e0b9f17d8879b23b8458fb52b4a7566e7fed60029e16180ae8458bc5c42fe1e31409a256c7e4ad440c2ff74031afb443eda4d889495ca16be72febc4f4b310784b79dba144a0dc002bfe06a04394e47191b8dcf4a27ee3f3d9543737a48c26cb59038f494edda9cac24b25125f7ef0a1ebaf96063bfd7cccce6169000359cd2952c85301a24d68316f44d24f08826701ebfddea8c86f5e4c2154013af2969be04d636c5ce90fb6dd1467afb9408bbeba8ca86abb509f980459f5a429f76fa6ed7993e1a03dc978c7d2dfd0f99c320f991f06822d191a8912a4d388a5896dd472e1ddd7aabaa3f21ecad0b3a72d39de0d7125bf340161762a7703a99b9ca8aa6b1412517127dadc4a233699850c7f48839d1670a898ef529b8b858944928242fd428f561e24f3a28cf7d93522eec11d46e46eeeefd0c4a27c7bb10f72c4366636858482d708d102912743d07191a8f5dda1c6d2f079e05cf43973c898c7ff5e4551ba61bd2ec420c4f85df11589f896cb13f7da74b65e32ba9da7d421235ca3f218d371c987abd27d35d6d1617ac08b6ee56a71eedffd17fb31233de14ac251994eb72cfdb0225f6f72f0cd5a41733c4f9a160c89a72b67be4b6fd13e05503ecb75f0bc659f8b72eee124cb13cde873d509d4d14413b33873f90909e145f32afd9d8e17e7c8060686a313042c027c1d3c0309852876d3d82a2b44240fbaac628e30c238de96adb49b54a06664cd7253efaf88ac0026e4b9ad2bf877f3832dac6f1fe31e549bf27858e18ece767579d178db4bff32b087c5ec81b3ca33cd6a3b1bb49cdc2cddccc4c120197cbfe3a4531d1afb5f900e40f7045f9d98ff98ceb7114de68ba821223c677c3f0e4b719ff3fadbb98dcd36c3ab077ae539dda89c745db5f7836f6b1a7f701738751c7448ce14028bbfa2a5e7ef997e53901bdbb026897957c7168885199ab010fb819dddbbc054cb91d450acab0fba145fb3733d6bee413315abb39d77ae258a7ce8b7f6168ebc4113f1a3c9d722ea0b4ea38e4374f8cf72c1a1e88343003bcd31d8bfc4a03972172ea91bf059fdc28d69c8b1bd0ea4b3ebb7c4dbd81c379ff34cd64494ed6159a0a555eb9fe64b5cc4b76513e1fdf1b34c6ffa6227e7d377813a0602b7e35f37001845607d141ab46d9126146fdff640992aa62d4b256b88280624964fbd0ded55e36584cb4d78ecb01bfa6c98c03c2379bea152a6234792be4477645e2830b51b9a4eccc79903e46ae58d8f00f5cae660864a1f80eb7dd327d0aa3f283a04b11e9c607b33c5892422bd24b0c9ca3e3f1289775d1087ed38fdb0cff72df51223f2e51c8a39fd641b0cda2c78adeeb5d1457be8a81fa127ee0e318477da410d67c72f46a40ef26c80fd5c38139137020a5974880a5200714f945905a77509001ea1d6e3c09bcc55438af688446e266eb2200f9b6aa639e5a0d32d66f5f054e2c30e818ea306b5857e06676ae317542ccea4e67399687a6ccba370a689d5dda85bdc84cdb213bc06ef1f22ca3f56e34479b69b13724b8854f9d9d3d7980876dd5c01026c82b617793390d49caeb080dd9dd5df8752e1447618760c9ad81c096d1a61658fef17e42c5d87392fec9d8fac35d328e15b478dadb2f23f0aab87f2b8beb82913dfa316b2fb7582a426defb907ffab1a70e98b86190d45def6caa1d0a98a121aba0ca88248df8f3c60dfa4a1e29369fb071c58940b93955758157a45cd740ec9ffaeb87806bda4c686f99c39072ef55cc4e1cf952456a254e43226ee5e7c3ee060d610139250342fd4b9ff8d37254ae0d0b279bad79ad4a76f968bc6571d5c1e7bfbf85c43f8922ec854f36060b92462413453f8127b01f7a8f7be307e41526bdb759d896326853c06af967daa130a24db7193c1ef9c2c4b0bdbb788033716e2b6d871a97d106a3fff2be50e5e3cbc532c3df52fc848f494f7be73e69bba6803d56b33c1f4edb04471f73a064259fe29b614a01f19bca4c456c486ca8b71920a8ecab1eb87a509ba2e7bbba321132ad4a3f92669ca2893e2defe2eb18053d18d8eee8cd95988680e74a9116efbadbcf9331f0f9b95dfca352cf96dd254a4445b64e8794e7cf1ffcf5462c7cf6aed6ecdae4df40829c7a4ea8a00740a376ce9b6f0b833dff51c6d5715ec1cf0d7c2360527acedbaa8aba280c24403da5bd64678c80a935a8f168ce24a49aa95e3a96b021b373f85f64b87b8f39014e2972f3f8d7098eb2feb5f939507fa1b363a775c2cd29eb9ff711ec72e22a64d2f08b896efd0fe94122af3b1aefa83b80a9e24bf4e34216b11bbd57e67e9d730d08452931e024900f36571810e6a1177846a6b53c2854d0d6e2e4b324ac64c593d7203d3e9fe889cf1ba40a5242a7f5d7b0e1d947dd82bcc9d11f3329c6a0412ab9fe9c133640f9b544907ddbcc3f555f8f200e75d207754c4b36c80a78148f6820adf1609b4fd5850a008cd6ec8f655401b58673ec5d844ffd8fa538a224c4777c23d4703652f8c29b357d9dd62010a56383f5bc4db29c112da4c6d7a644794aa921e0920960ac8ce0714fac1e730f7b4b3736f6cc343cc01742d3a57e478e166546516ccd084690dd38f40cd65acb25d9eb0d92213596f9c1ddb688ff3142eb88a41866cb28584289982b04374826f0182035741d9a9037fa7b9d52a987544d0ccea8590a7d268d1d99ccc3e8bd9db39c8d49f86472c508ce4ffc04486ec58423d40f27dee919201cef657f937ba8f9e96eb16a80fc90a7ae26d64d456fbedba3784952aff4c976caebeebc3f386df3d7f75ef86d39636368d39f5ec9dc3075b3ea7d38713ef2e5599a31883b4d11eb254d5f29a3b3c0a3f398b299e0a8e281acb5825838d9e02b456f9fdf8170515d18d423249df133fc79638e5ce4369d0bd47aa470eb049f4496d9d05de32d30f2e6d49671688a7d584f833bd9ed7ba98681af0be5df85de6403f089e5862c969d2e9022e23213c58506931bcdb405150f2435a69761c0c8967a9cfdae1f7a4e8edc79403ad69d1fe0f5d32c3f080bef24cc96e6757b2d4cc039ce3bb9caa87ee7712c01920a70e9e2adddb2643606ab4e3e02411b97b955ff9c07cfc4f0807f51496809f8051452ed51e8f78477c484b3299ba8494d3b2112c19ea9ef5bf992646a8994c50999c4e0aabea4b1f3fc4bc8cc37fa9cd87b5bb4017c8222a927948bd45c6380f522759bdd2d35270d4d2711e75bb2c3dbbc5b44996a8cafad99449564d9063d0bbf0dc40f5722faec5b454a098c59cffca654087640d26af49984f7ea56aeecd356582abfdb84306aca98c361220267df5e871d49513bfd2d85a530ce1df8bedeecbba9683f0f2f2901e75733427bd092c61571b96bb66b2ee82b5d1d2c8dc4cddab7db13ab4457b9f2ee6b6dd694124a86f84088e738aa03c73fdd257eeddfb25bda9688e58244a74cf12e15ad564709a262d29ead983db6d43de897cc0c8156bb30893399f528b792cc4c0701aef877b71028727610636d216e72ba7983c466993e431284e912e1680a90813d9ea986f9bf28bc969bef68097cdd9acdd721842a28396b85c23e2c87a7cf1427147c66ac83fcf35541894cad5bbe190763f1ec3affdc7a4617cd3df8b2cba4c20a1a3e3c95d445bb6363616fd5050c9d424cf9eddcf3c82b9a278ecf02488a3e64e2fd6ce28a628a270ec2af88d59c25414ffe014c51e9667954d7f4ea1c83b62e733029546a9bf6e80c277288a76fb60f47e5664236e901b37b4d00f8ad9a8c1cc7cdc9a2f39ff99f0d4c4a7c76b498c0037c45316293fdb07ea65672c849b27ea5f8f8ebd7aae0509838fb080adc3eff90b5c21e074ab0231e03d9d83bec1d5149e098d131e851bf705255df85c7b36522fb333287375ffab25b125e4078452d87b04ea3a50e61f4c6e5d46c018e5ace2ce7c31c01fe5280da76511fac242896e69232ed76b01f0c56c0cb7f5e87dbcd32fa8f442e31a649ba35fd74de0c16a23a75d78dc3694e65a8ce61ac46e6b3d1edec7e7d9eb6b27740efbad140b1c1efd1db342fd04960dc189f1f7c7332355e3068a412cbaffa0e2d41427c35b4e92a65e4f83bcce68d376b68bc98efad85ed70967cdb3ecdcba0ce1f3073772976c422ccd4767f0bb626b484e255707e8bda16990126d671827b0ae4990982427cad6dd1858079de298bc10fb6f008116a2f3ed23ad2f0277395a7db9c5c6679c8316ca20d7e61356802e7f1cfe36e360babab8c43994517ae1184c57c0caf341bc4942f7b27cb26148728b1ea8e0b81cf29023931f0117fd6bed1e7e5e1aa72d829277e4d984607ab449aa05211ef5bfed541eeb2ba71a4de0fa80b3c6970194148733fbec330468b1ab7b741bddbd5cdf6e8b49b6ee8244f923a1b02371b265ca39889f6651e821fa7ade94c8d900af38a8fa2f57a506502248fbcd84bf076887a97c7dfe4bde47c7fb7e61dce9bc0bc91b1bbcb97c396b0c995d8877e00453c59bfcc4da54bda8984cb7d6a447e2756ea3c8e3355ccb4fc034c3ab5fa0c4b89db3b21f4c0fead16d79738d35600f42445e9dd035b0a881a7aabbc53f78c58366a1ae8f595fce684783f1902e4974ecf98f2efaf37dcb30ae0cd5c7d33df5e154b2a68576420bdafd2bd4a8ec1239fdc06c682aa1ef6cdfd521f047d106b1ac7643666a4a5f10adcadaa3aadf006e6e2bf280d4c256208809bcd097a4c2d8c1fbf62350c06fea3d0456c53714f2bd2a59c1feccd7140916cda4983229d70d7b101e600d2c7263b8ddcac686c3209df319773afbdee57a12267c37eb24c88005a6ed9bfe46d070e3f573b3cf338fd8a7bc4bd8fd231c55c4f090ac0b70cb7a686571eb8bba16aea9150f0b06b0e9b08b7d0ead4ce66888d5e6a29c5f3ea974c1f6fc3f0ed026cf79dfb0bf35e9d5d8e947e230d84663c84d8ffd2588d8500a85194887e2c0c419964c73598e5d7df810a7789d06b8224cee2ac5c52d7692c1060ebd16ec2dcf1b337912a104e3c34aed1c368072c095783f40fd63d0671846974294a15821b5c2ac43ce277ea8e2fdd17f4226068fa2b72e960c66577cf0f06db7e6b38fef238264b19ddd26fc8f2c4fe50cea63dd7e82ccfa591afb817790ec692d837b38cca9864653c1d0d5b10efae600057647592d3ee6e0e577b5be659667f89a4054242e187e98fe09369995990f06199bbd0da10e97529a4090246407e1b2b89b071996df950596377315d907a342733991cc836be419c5abb34d21814d5a1c3589210d70bea21d5e8217c17de72bf63a8a6ca3a922b744f98557b8170006e4d069b2563335ceb92aa3fa6253714519edb96685de671cfffce97d922f005fac0f4d9d50ab4cc8ba04f4007d24e5f9ff10a2184e91d95954c0122d0f242bd51b73a9c26b4f85409b1a909c4c7daaac4a34822125b2ab60785762e65e5a269aa0be41e669303f106902a0baaadb6d01e382f5bd66d39149540156078deedcf60eaf42d122bccb296f6be7cb5efa2358e33f942ebb65f7a9e3fbfa94a7c99bf96b073a96cc9ee9c2115defed2cf5732fded082c7a5ed64eca78ab48650a01f77dc91aefedf489b1292cd6f2e27282c2fd5d6ffc6311e2176e0f9cd0804b3b3e1554c9954f501253fc50afdbe8dc43815115405f62f9d26feefe7c14e9964ef350262a8ef5f23d5053e7a9d32ffd7fe6088e0436b1c53e44576c6508da9bc1c9f42ce3cdbbc57bb9d24fb14256b2eb7e21133d1a33d15d12f1d03ead33990ee62ddae3b2f8b60d599d3775fc1ac464122e97e16012c8a66166bd210ff51d8aa5d4c31dbf070aa60f0c3fd431ec95605aa410f5d738922465c9442e9623d84a5469d5d1be418f2a790bccd862cf8f60cf3a5ba35a21c1bf55420dea308d79592819ee633eba3a0b258fe98c1b39d6490314c48c0ce2de7cf8a7812d39d954e383c5045afd988c9dcae955856fac44bc3624f4a1139aec54e34bdcc62b46e4ca4ecb1aad5c83b5c148bfefa8fece79e95d5c673a44741e8a8bf3dceace8ace9617649d6c4ae1fe2aaf592e51309241a2a85f6ec09ba375aacc6c807445aca99d013a1697b876454466f1a2069ecf6363e7e35da383ba71b3f229b36e295cf8c61270ee79f2eb68a032681cf4d54c541b34384af56bd7bca23009c4b25295c3ab1ed8f445dc20de20aabf9331ec319fab03771d55ee235b715dab5448653baa2b33a339987e224cf7586a9423ab4e413c914387494eb1ef43326599173ddb2f4bfe83b7aeb279c81027a54a570883e582009dcd3a240032285e4cc923e5b5dfbd6b52146e1ed93c8b87013617f337b536817613ab551efae44865346a6512fd08a5c838a11096df32b55fc9b1099528c0b936a4cfeedd5413d9b1a480e2159516f64abfddf291ef22ab529f1947142316ca03fc00b6835a96ab6bae00dd73c3d38f036fb61f7b3c97b7dbd3e8d2c3f23a6fa988cc2c240d0fdfe5a3480e753be5b1f2b5cdcf1cf6f56418e120cdc218f9a1447d73d9a6f4ab1e5dfa76dbd00c545963aceea8b79483cc1ac85aa0ddf212e21945f3bd41344772b83c03a6d4597db5f6d0f3075b9ba1bde029c7588bce7ab7fcfdaf5eb765d53260a75e19945efd97e5b44bc098b1c11444776d1440a7586c350ad0cff9a170ed41b57f31f73e8f70856c613b0074275bccd721c015092796c50bff9220d6e5c72fc2867710ad63f07d33205994ffb8346e9e76099801a4354ff34f5574afff995cbb00082ca40ba7f2c67f56cee2cb72b3189e25aa9bf5c07709110797c1fdc090aa175514a2c57d8ed7c8ddf218dcfd71f1ef3b447e5f929c32bf3800d30a66110b4e92b425f0269ce849ab7f4d2e2b0027e0f789eb8bba9bfa052aa0af2808a0ca6b8d50fc47e4454498bac338925d7abe90b6598ad4b03221638feecf8f3473863f1175e7bdc94bfb47839aff5930f9ea91fc2314dc9984d3490a278690f1a6dbb44b48496848956eaf2b40561681eb1913f66df41133d6096e1f9df13ab15327813d214bab6e3081b142e7d85cbd230e5b2b25ced97380a8a57977cdf3c2bddeaf37f1ed2d2e8a95c9ca7046093fd91d1c96fbb0167fe222a87755644e41201dded9e416e8f2986f54e6b7bf1ac3f60dad67b7afd419106b6f1bd2196b5b56d024c80c9adddedeb71613a4d7401a00e655cd55a3742fc6774b83c487d0bc999e69308dac9b1fd0c0b174cd5681ef55600a43ec524ae631462d34c4053777551f4d8c77d08ab6f6c755c43f375b5bed46a41551f8a35f972ecbf69ac40755fc92348bd22a82ec2f78ce145b6c0081cdeedae060eeda0129665c1f2604dba891fc41b56ba92bcff91f9d7f868498406f85ad7ea59d0c92f0afc96b5faeeb97c32e2264f56de5475f49832e73fa5026409484a8cbd2af535ac6c35857027a4847db57f1e9bb68f9092802d782c81f0e5eeaf72effed0103a8e18741d45f58ea38aaeca11847195e66f92f10a69c34f18e3be655e6307a21af8c811e9979eebe4d63f9f7be1bbd47709dbecb6647c2d5bc0a488b980ce798b31cffd4ccb70c5b3f61e95f6f8d3e4e42f26ca1de21dee80d32214c460f2a11e872d094a25cbcb0efa5ce4b24ef468a13416f56a796e9e52c2e05ec7d4cd91425a3731af0ecf3f3ecbed601cf4681cf5ddaaca0c70330a9cb67e521e220ae5ae61ef6da44a49c72e779364c839be6f7f11455cef572e521bfad1d0b2dc819ae9b6842fa3f29fd45128d0a72ea67e9c35ead6f26afd9bb07bc02db447bbfbe400d520fc1ef17c0d36ab944d0fde3d56c28544672bba4c1e950a94521f06963ae8341f62a8b21a8b192a8b7d34285ca8b0a9e0555f055e03910e22f7482ebb5262075c87050742927cf9ac7d5bdf069c715b7938ab663b62e2f4f91abaf0b723652703759ba4453c65f3535a2ec65bf1118d8e38160bd26aedf36a379cb9266223749e1db06a35a498290e3fec2050ad77ce12f4b36c101cae9ea2082bbca775bac2179efbab450c23a9c47cba231ae696ed090c2da99580210568d314d75b076d44b5a58d7687151d7ff2f98ba2dbe9c01f0dd782e88b47b9b34843a249fa83138378221b658d9ea34b4eda3a9f9ff45f7a6d83f6336bd0a8e0967c0fdbc9bedc50a61a37cf217cb74ed555ae2480d38766042cbdf46bd5f5d207b2e7d74d707b52f34536dddfe3b0c94cb808d330a31d18bace989415401588b42b29034899907ddd176c54a2e7b25afe22d49a03690d6ab8166d5d14a75d61469862fc7f041130dcafd104440f87b3af4098f3d4a5b7e758fbe2fb94c749d19e3a07ae8a5aa6c8dac3a21be6a19c88858294291ac2fa04a75f21142554ad39e921c349e047fbfdf1f050e3c34b7ebaab0aa83c386fb187526095c44871400c733713238e1551b6ba1167ede3cac15d61d79fb5d809cc0f45e425b2d7750bd88faec00391d4131a4b7476cfa338053cdd07074d105cfce2be78d1e889b94aeffb66832d64d4e4e3837dca7fa30cfbee51d27f5910f383029accfdc75a3c12aa5e5018370d3ab041fe9d4be5bc4e38b7ed2fd5e30909a12bff13b8bc965ad899f3d1c4bd62718ee2898c063855586f0c2b48ac89c1cb1eed39c0b43996511e0c8415aff69b10fd4d0ff1516527e3a7d66cfe089a63b046c1b909eafa5e2ce0dd591e04ccb8daa834e43b4c76aa6cd06e7ae77705e0ed24f05ffcd8dc6c80767b5b056e4564cc8f2c5311ce077805b1d0cc14758ec81874662a4d7f581aa2fade0219990b2124ed96b3529049c06323bd9f5f1dd664eaa5d24d739d3159bdaaeec65e9ef134d4b8e4b99ad9a772a177a8948578656cd1309ccc51158f7ce4f65ef066250d03b505e7ce94db5fe87943bcf57956467fcb41fe6799d3157f804a83bec22b2446d0b3341264f323bd32aaf5b7402db987591535df4d3439c373e1afeb4d4a28da55db192871b9dc4d078d04121d06831a79d7f9c17ebcbf763a58ce5b2d28fd917e4a110ba8adcd23df102fd89910344bad22022579658008435cc10e18c95418cefc68c00f2dfa69fa6dcfd350ecb9df9fadf08b49b1e829b719881ff169c5c10888ef641c2962accc4e51c86a2a4063eeac11339430eaf69e9fd5d99222be09e44e70601e5d72ec657a32f27739b586f3977bf7534b16a4cf4d9b1bbe68de304781b81274202e09c4fc1299398c52a1f5353b057bc93532b8b78fd9f2afb8e9d5a0dd0262877e129bdb5ded736fcd201b81cf74e21997148200c12d90ba866b43b7b021808ab5a53f071cdd303b6205cab5fd2033920c7ea790379b14ef704c116b0648c8a5219f383fef537e811b792d1b8a713677fe23b428671119c6dee064a988de27509cb62f4c9e67b9c300f7c8d986a52b5588c29f9f66452ff4af6fcfff04040964836ccdf5b2c5de24085994333134b8464a8e89c02a1c72e27306e78a87f2225e04be5d07ffcb5602ec3f227b1d1d94b51894f911a4b3a3357f1e3d451686a8269f3124f74b7b45038f48601d10982a99291df87b22dbaa9096e4182924ef5361649ee6e0532083f80ddc8ffb72cd6503a30ea332a01f1ccb2cedae32ade9ac617bab7ab9935dd2ca3be8093185142832fb86a0bdbe6e10860853c1d8ac749b3bde719c035ae4521df7fb4dd36db712030d3999e45e23f946379d96bee255b5e48e6f246bc2a2fbf6860a80dfde1dc7f4f677602a48283d6c6db5bb3e9badc3998b27e262f470f000e91a98b9437c968fceb0a6909b6438166b2778623feb68346f391074036d664f2aa10ea60b33a29efc5fd30616586ce77a908077c7a6e14f96d914cca10a5c5d4f1a7b12a59ffac51c155e3ca7d59134613ee31aedf409834c9b285161fed68451677dcbd32dc4e6c64069056ac238b5963254643668d7c73f0a9ac1701931602b770475317bd92c23bca793d5906135ee5be15ec875a98a500cca85a2c72c5acd198fa396132044b936a5c5f2bb644bfc373405719fb5dce63a80f433eb571720b3618b644d3bdd17005125cdc4ddfd1f4276e2bf3787bf95336a08a76c2b8da1eee8a46ec8f3c3e7643cfc60102c5dacd5e8be134c15e93ede8b7b8e42f6d1a1f9e1f27e7d2b8b989bee738fad44863e8f3e91ec6bfcf1411c9f9b759f705395f636072af78406853c175f0045123f2e219a813fda7bdc488aa3e38990f04a2fcc5a64150b79bc8f1f63d9cc5fc6de1c28ff8efbb9da0450bc837452aa966d9bc5084b35e5358ec33853f2cfb16c09f0962d6c08119a39bc8041ef8948389e9bd60755e83dcf4d492341e963cbe75ea97e9b9568044b9a79853bf8821c30527f96e22e5a25e561432777f10984776c2fe2758bc40771da8be691d0483bc4e2231e596bcf8669ed96133276dc59923eaec12238db222aae8bbddf0d6994d395497291952dfb04f811bca31ab937d9fb314714c4787eeb49cc8b92f9028114dac8fe06331ac982c29f0c7fbda26b69490058d50d72daaf98e19a0ca02e9ffd3c87986e447c0e2b018e7cdaafd2541dc54e81787bb9118ac78475a51f9bacc4178a8a64bc70dd77eef345badc766a258e5b023438b236e64283fadceb748a624cdf399920dd2237367fae634dbe035bebd45de507223fe8d6c8adc341c7244604bd32f1a9f5e8cfd11ae934a79ddda495c2429c83c2a3bbd6c6e7d2ad7251a2a3193eadeddf9c6e304713decac5b2ff72f857fe670be844e6ee937e393188177f821de7fca29775a64011ae0d9ccb21ea3585c936df1d435c07a71e5e1234173e2379bccfd98941af35261f3176586bb525b03fb18813d33856afef537302232aec136a93600240d4a4fce9b6f71ee332d06125c9e120df51a726d4264af16f586cd3c02586d188705b21e30ded7c95614ba7a77497c327ad6e9815274d2f4e7dc99cc5482ef027cd0c131aa6672ebc73c0ad7b8eee02914d12fb74be4b93270e49344f0cef3cd136249543d06b15c9ea54b5ab9f86a60a3c31c18d0e52edd84c30ee5f87057fde54196beb68daa459d176dfb7764c7b0193415bc2d04ed176644ec149345f21dfbee5e06e7a0adf75efd180593bb39448cec038bfb5e2f174e96a6c12d8681fb074175a4e46e75c43266b427de52d7c8d008f9671790e041edb027772e2a1a9c121dedee6d9125c0015df4081f6ca4079993539e0b316db3c98796e85c60a6f5858f245089c949816e5f61c3dc4a799c2d4ff6838089c29552558967c1bffa523bfcaf77c894fd982ab7931515238f691a1e5a346ce8c863c66df4c47d0fd53dab4eb739ca3f69c8aeb9cad463c0eaf83feb564fc40c8c3898254bc86a4e0754305f37fe9b44fe95bef40b64aa4be77ec44b44bd5663035a4e3a643fbfd4e704778593eb6a21288a88bb298ecd0de8c8614f8e812d5cdd7e652ea044c322c9072e0cfc85c6adc9c1068bcbaad996edffb3fd2904e2cde28366d0aa5e6db87ab8ad0b4a4d54a214bc33709927d27473f2540a2b363cee1adeb304328986ec257c2bc9863c85408c633b3ceae44e53a7b5bb48ee787ed15067976402b0b8354ce2500d896d14bc30b7dfb9ac0f4bea19e42d80c8be0e7fbb9e37f8dbc9c82c2366373dd54e5cb5f2ca24901ee9e9a5ea025fdc248979a3cf5e2afed9d4cd585a1367a55dcd3607236c31c5f11a456a6cf15f1c05a0e0b19729d61eaf98eb01d2deb7c59f1c0a79cc73b77848d3a61e1bc480386b1e8603c2b7f25b91e59b21d8fa392c09f02d498312aab2958226a0ae8bb791043e926aabe08804d784df398caf67da10ba4e0c29413555c378ca72e9438267db124b91b85d794b8b91dbd0ba5114ba780c89eb4e6f3fa726d9e8b557791bc7c078b66883bd66dc0e05531d2bfee6de9837e4f0c89f85544ba41de71c25e45096872bf3d3a509b46396e2252a2ab4c50669e06c7634604989472ee80796b3b0afe80171c8719b064b33626f2e5228b70fa9e8935cb111cb3c10398e4d56f7873fb7cafd46842f08fbb2528ccbe3f63db99ddf3da8cac66ae4659b57a0c31536908bcda904940b4828026fb440cdbe6a14b2a880235eb3087ae96f6a9d4c4413185c9ce07f7bcfbba0da457e6f4b8b2b764de159662156f4cacf8a2ea51aa029f2a49f6ec3b744ff78b6c073cee144f64d1f10022821d43c9d1de9e0b828a58d0b27c5235e847668807309b80f94ab4e74cda4376fba54b56617c3daefe64b6dd5411aaa84af9f41e5b123313ff9bea878ceb435166b09c59bd4406aed72aca580afe1651655060a76acf2c88e57916ff1ed588f0472c2bd587878c9b1a8ed4391d86cc03df30faa0bf92adb7fa54fab71fb547b0beac042c27b6121206ccace1346ba28fa9d0b7fbe86a5180ab159cf1e94ea71f116097058b82158af775b0fa01edd8fe898368416ede0697b34a69ef52fc6adbeb212413ab963b70772c3dba98e977f161a656a04b60bf1f57acbc2c2010262f02fb464f03022614a113798a03221bcfea97dda5c0ba1f55b5ec710ec10033dfea36b2a67615152827d11517caeac223bde40e781c8bf0458827eecdb59b0681f33bde1b0dc5c9ce87a883344af8408ac4f2c2e5d56b907dcb483ba45ce7f9beb1fa25f86beb1fabe67d53c286fa90f035c3ed11f576d9cf3653036532959d14f6ab485a6cfb432aa3705dad7f9b6af01083df7bce729df1a4e6f26eadbe6a2d479338591347f0b9c6611aa6c543fa56eebb5206530475a48b7a66d376f8c9dc3ef01501433f30b1d4a5f05c0b591a4c18a9496ccfaf7fc6ff95ed785e86925b8318a92cc27cb06d2efd491121a4926b2e312ced004b47d689c37f47125cf14d645c2dab0edc1bd4c15372bc6a7eb86e22c8de2e46aa021c57241c25138372f1b7995944bdf58e8163dab9f96412e11ff0736df1e3887fbd954c5240e6504970f96307f6adb2ca524614e4c6538870ca6c303afbc9618152330e4f2a4dd0d5eac28fe3f1e66df784350f5b3b1d02ea429f39c1fac01aae8df428b60e1157dc555a46067d24bf518f7e4e61638ace0684cf4c6d5b26ec589c439e72240d96b715a1945b3fba65b0776a6cffc5dff35b4e441e24ffab1c330747821f720e791838105dc2e51ee9ccd00b4cd489579da918665187e00adfe772abc972e53206fbf6121873b43fd9f32be1e7556f41bec5d07cb4e6de87d42c7c70a247afc75b86f2b6549439868f5b7417c627dcfed9f8394322eaf3c69dfd33a8a16eea0582c82e823b4f89fc0494bbf59991d898948af81dfebdeab1a6d797f132f6e908d30180ee1f3c70f57e8b4747fed4cd8112a124170ca10605799ff4bc1944efbf12aad74e4ce2e893ae94b214de23f8e24b298b1897d8ffa5973a2c83a135256345fc5c5bbeae7ef0b63dfa683879896db7693a37ca666da825b983d87e50346e29092fccc066b25e13ba4df4f68fe5e6c03a964f4486409e792f10307da11aea70290dbb58c487ba266d45e75553d1897507e3ef5075ac764aa90fe449587b70a01d9913be5375c1b8b9c53852a146b581a0815e9fe4ea696da67267db3ad632e8e96503c0f885a052bded7cc14901d9379e6dcf07e471d52543049f0ea30a59a9cec6118c78bafd3cf416e7b265fccf0dd26ee66aa1acd1e05118785a6d4c983c99e68a7ce64bb2fcb726f03dbfc3ba68a6e4f0400b3447fdce74abbf28266eeaf982ad3e5c37ee133793185d0505a4ae74cc5760c00fb7d9be4ec154c65bd3e001d7ad296cb18574eb29837a29be8c51ba1256598c832c55fa16c499043d911bfff786db3db65a91a3abb17f36f9fe8a336639506a33cf45d8ea43ababb635eca0b2e0aa660f823e01aa14e1e5ebf161664f58c619ed681c21a38ddb4069216f5dcadd6e5cdf0120f6730cd13aa21de61dbd26ba23aa287a60b68c8a007bea33e9d87b15e15f67bf9a5ffd2150a8a8f7857573f929ad5e2d40f3d97177f2187733ef69186313d965f9d80b2d274ca42b1718a11d8eb15fc487610db3fa20e24e12e581a17c805fcc3e510f9ac8a49da0147be23af80123cfd9faa8754195087d01047600df5012b650e53a22e5c354cad342b4c528f4d9ceeed54494b97cedf144273a21ed90cbfdca8ad80ac0fc1be83c409d481ffbdce1f08d683e89288c7ac36a9b80e85dfd2bb99dda814d7b9d6e47aab1853c019142633e3da3a47ca9e665c49e7bafe18ca5bc7c46aec6390d2f46ab61c50771e91795934a298ccbcdc287cc4f3321bb4ff4996d29956cd37914ff7bd217bd877a59e79d21ae12aadbed6bbfecc755fdfa5432d253181a9ea28b9543f3aa6c5d0992756353af9f79cf7f1f837993a17fcd86470921251a4d2e34d003f43a93facd0e7e3b0ba8e2ba0f8856f4cf5628c1faa2554b9c2b9a5af7f8c3b79e40dae86304d8e59f3465496f81fbdc00c5a434f6deafd0062bfd3df22b7384bf7a74cbe71115992c28b3fcfacd593f1ea9c6671fcd37c86b40ef0cc1abb0f0b22e0b5bed58392dcccb8436e389b0c954fe33281e6c3dd7baee51ad4392002991f845569baba5a453558f2a4944a2591faf372bf737e49ba8ea9d7831f06ab1ec8a741522460791ba52186056f4e11a1c7c5f083bf4f2ac59d678f70bb37632c0cf2c8e0cbcea39490811dc51dcaea26d03bcf120d1cc1470495b5bce0c86028d3864f27e8286b4edafbc4a8205890d329d255bcc2054201e267d4f74ae82603505ba27d3f7776826ecdd85850e54760f16cae082f7b286d53d8d6428e6a8a12b69b5a4e485985c785f9a874b803a40b2d862e95c5f7defd0ba2ac59d6bad780d4b18cfaa807c7ecb9e56f8f2abe3b1651f38b34efb6050d78c953b1590db6757a309e9c441d7a1c8abc8e8f2c679f947304a5761feda3fd6272de1204cb061c56a0f1093b7f1acfeb5464b2c63e7e4c8c088b18a2bf063abf3093e6b8e9ba5628bb88b3d9dec5c2341f904867aff7c220b1b88797889f519be037dd6ac80e1b67cc3ccf067f63a882709f8c32a77444fe1ccd8e4cda10974dbcfd57a38330d018d57272d2cdad0b20720628e7f04005dee0a9c9d0af3d9ecee96158661b7d673cdeb1b3dbf1d634a51d599586557b9988cc2ed3061f99fc046076c7fc3153c382c183fc07cee278304572098042c83457333f08017856e25b0754807eccbd88f7d06892a86d7fe3da35843757c22f609e667972c66a47d8b40933f4d1d4b3107f374418476ed42873b7190b549da0f4a37cc59d9467190d8fe387c643b3b9a11b0aa0763a257a3cb3e10d63b4ca386bc428a6c410faec2bd3a84abd8049c47e8c0db2a0e5272d5d386facddb2b6f6095aaba58965e724791cecb445d6875494fdfd91342732e1c9e2eadb714e28264e9e96fe0b49e3005a610d896e40758cb453449b51fd06102ede9e8d7371d054e4b42af055a44463aa947f3c97afc91f2676d0e9b4702ef98ca967618fa25cc25c849da7deab62e708a67b7eacb95c7c51e0924c58219c9c684bf05e9b81495eccc8e23bb01cc4818a2235a9c61a242725d2441d7b714f64b9725e5f0eca1afa4a70bb7c349e528b05eb3eccb6535e05901939e06c449d1bbd5f306c4c2ead8381c7dd4c0ba6729864e2de6ee36f50ea5aeaaa95394f7eb82b2edf1d57a9c165327f89d96a241c647d22e611520342413059ceccce997e873f216c661129fb731ee03d81d444c16e2de90f462fa7f421a488d9eb370a8b51ed71284d9660b7aa303fe3d5aab67fdd69841763b20ad1e7e92d5e07ae59ba0f18458494212bae496cfafb0e286587fc99534430e1df6c7ded65c3b48f71734fa16bfed007cb48cd67520c5e7511ffd08e744342904a79d1a7745dc5710e1ea406d32556133df008e130a9b81d589ecaa44fb96b82da1054d9923b6d2a57eb2b3e3d9424d5aa3b13f07cbb4632a24ff485b4aa74d706fb10c75fc2ac02757b29dfff794ad1f673f5ce600c2f378f2029b56cef8f666ed4530382f11ea280f0297c26214bd4afc3be829a9ddc699398808d55d54eba01ef5a3360baa2c426cdc0a7154a48bf3822cd9beba25f5b6fcee044ed6c2116338ac29d444682a1be61efe4465f56df3196121de680d7463422f6075ce45167bedf1080e1c84b20d3f90843367047ae751d340594e212081272a42ee539e5d1d194d66d2016aa1081937d5fdeeea1366aa1e5fa8b1f43cb98f2eac501750249486ce8041f55d6d3c6a2c9d9c8e234c217902ffb0933507761e969cf21f8dbcd4cbd61489cdd062936836fdecd3a72f5ee25dfac33c13e09f0782333875bd5ff229c050aa12cb601f8525ce2d49215e9ba61a05521890d57a8a181a8045f8e6af496672b694f13e92a60baea44383d8a7d08294a6e89d00e4ee431672c1b084cf2c7839ca245f739f458c62e6f346d8a2dbc836db8f345da982c28bf2791a4a956597019dfb6124bc2b0f55bdc88770a3f0744a5c55f3561ef17692cd342456d4e65218c97338fae5b0ef638f1f53d47e139fd9658aa438b8a2bd4da6c06916295a0019eef12354f3e06d2b727f93d3b112ef3a892dc4f714702ac7c13374ecd0bb64bb27de47608cb66e47fa16ad9a6c8e0f59da2132cf096022cb8224d65525a5ea9f4cbe52505f4c1931d755eaff77029cd9e83243b34714a00367c59556079a5cb5be68877f81fb5146e9a739e275254fafaad88dcbc210d669293a8a94f54b813bec2e6164c0fc37ab4985d6777b73b9eb33ec1076cc5d90b52029f4b403018fcb0cf025830700c8a363df76c29b560a9920ea02b89b11d8d8467dd6fcb9b02eb1340d054ea9559a6a412b7aa449397d266fabca01cf87fff2a5abc3cac827e57955cd883a093de2f7fe648712c3d5e2ca6106ac325d9ec072a169018fd6ebd30b2d7e6f9a7e3bdeab096e42c2b51b196b2b3f9412f564938cc84367af710ef7eb6b193628b89608af9c10042c349d75f5193bba93524fb882a2e0fbcb0d45d7c0fba9d290ae14ffff0f48dc37dbbd548fd1f606b916839aec06cc50c9b43540d88c0c9a11183dd62a980c1e9d50d7839ca735be916ed3d2d9650d1ca180b8749f413ef5fe7db69467f517232e7714f5f3f793c18964a83b5398930593acc8fe1ed0925a57e4987cd85a75dd5ee54e638844320cabec7ebccc963e01e91c7d7f33e8cfde16d969765c9df2d9a88e9e9935233bed0eca7b0ba1afce1b9f10018372cbb3284c128955e1c35c471159913393804565aa36a41e94157c17794cdd546393a49f71799b8b88a3a25bb907beda017cbdc7191a8fbfe8d9ecf9cfd3e45a9784bb94858704e7829b036ad4a7f1e9dc05ad3c49f216926c858b11f0dcae3ed03cc74f2a246b95d6a4d3e2c32daab9085afbe69e9d12fb05cc8932097e3dc4ed5eece371c702a800a6fb2b19c9a2dc2c929ec3c28e8f8f4824a424e2af1067cca4bbbc0b61acf353a2050fcd9d87d3303ca731d725aa2c5f17f9e4259548e08c753b57892cfbfcc5d11916b8549f53f9f3a055ccdf708b766ff350478b6fe8dfe65069ef257bb44a766d11abd6cad8f79f65509aa254942918e8e384587aff44c8d1d1c7739f9316a066bb136ad5b24adf87cb95395c8624224fb629165b0ade2a483317497d25a4d8e82e64907d687d00edeadf33f038beceabcac03837e38c109328155f8753fea3635d80189baed869217bbb7417d203fbd2e11c18e616e34fb9c6d6947eb90ad86ba06a3ad382dcdc0b69e06f6954475e1490931dde1ae43d4589dc4626e37f71b6c2665a2ddb3d0f77fa78dcac51dee8319e2327988f173efcfa3fc6c25c41adaec50f5848f1fcebfcbbd3f6ad90948c90b2cf32822d8668c80928824f4b394364446c247dd4193ecd15f7e82b127ea697ee314495ae89a6474b4c420f3829d6895e2fd5b0d8f6ca103a3522f39c04016fcae9b6cb2c826537b213a5e55aa98df815b2303698d8c20ded19bedfc7763abd4032ea637acc0f392eaae91cdb889c89c47bfe3bbed674961c4e49e2550add55aa554de554bbf3af3d7a587bd28e4afb6b2f85e7172b254f379f189e6866b5459bb502c744d5441a193b08680fd6a1cce8072323b358efa85f62a687e927bf24f12bb32eb75793fb98ea206fbeee8ff218bcda9a09001674a549e84375fb9e142dbd64efc6729f826c94117f91c0e8287511cae7fb42c29ef68776051c0b984d949c92fbb14ef75185227b3959349df30610d1e629ee4431bcdaf66ddeddf21d7de0255833e6be0c25153c922a6c60bee11684f87c025609eedaa066150d4a1849a61f5c5565e7587959b6fa97921fcbefde2d16c17ae0135242f6cc9f2a831a77de8cbdfbdc8cd9a858a083bc4082cb460918aa56f6db3df64f81a3eb00399169c9db656475ebfeb0484078e0fbbf028226f634de945dcd53506e2ddf801e50b8c2b248c0041797c84677a87a594ce0511d099399bbc9c3213788f3c945254416eb9ae5b02b0a8f9f5fee759022576d4d4df349eef696a0da7c92fc39b78f18087b5fe3f7d40dd076c2803e2387ef48c0a636ada2990b15042121db4b05eaeff33be3523fa8e2136147b6580ca9733120a6ba6001e8bad438e36b60cc70d825c1186d178c99098a8c2f973d2d0b89fc311ee28dd596aa11734d94adcde6444b5b2d9122f5c3a9d476f517febef145e28e74904b86091e832e3a751fd8d05f06e6eb2af0fb6a876351e3f39e7b736e12fea4e0b04e187e612e9010c4e1aac9522e202c1ed69224cac89613653ec734009d4bcfeb8c532bd65004879fb2fac862ed534c73817c0dfeb7fe3d54e86984884655bb03588694892175aa8bfaad3200124e7f617c4bce57778e354897cda7b85a293d7e18e1b0cf1d5ac8e09b8437262bc4557abb32a70041941fb4b3cc73da6c74b85088a6c35ca77ddb5eb70544424ef1c3444e2e358180979224518a2d124e64e5c90c880cb83942234eef179af5cf9118fadf319c29c69afdad0f4c4665290daff9c0d09172452a53fb7b54388e1cdc74b202167bed7386a4d36fb3895f59e3567113017d9455a35c4ae54e3fd0450369773623e8b0c60dbba6071f7921df2032addb624fd10763616557d780d623399a70dba775395134821fae825f77196ce337d319af242cedec3bb1a5d842779c8c267c8fbfd0636aada79ef3e4df7d3cd9f103cf0c47ae759d4fabaa588ca90a807f398cc0505eee08ee6b767b4dfa69347549d9129de29fb24d2fd8bab45e78f8ee5c51a90c8062cfbd4b9ee5d9d5cb6cd5a6f4817827ce2fb3b48d3a5de9f21f7a58ab116fd34089898892f6535ff5fa3ef60d066a113ba0d0045c51c1d1fe34a4a21fb79818bc10c1702c544da49be1cf68943e9ecfa0e071087142392fda1f3ea459960d114e6ac26201ac0a6e7b5c3c849703ac622f9d93b381b427944addb3cc4c09e7cf513f77ed5fedc2e7dfb12b659454e95879b5d207b1b665a15d7edadd62dc82e6ae1c3d98a63892192f42df9b765029726a14a3d4f8ee1b6975d7ea8e8716126f31bdb7a4ae3585c139a3aac27948ce58a034183107174ec3c769112e1968ba5906f36c1e070f67dd3d320dfbda0ad1550d04c4cfe2dd8f53fd3d981b2ca4658b0f2d9493c93a20216ff68dee8d8f4d31c32de2e472ae6926aea4b906749c346d55ad727bc8f5df5c0eb5692fa71057ae88f96a58d24487617f4905e35fa7d432a82ae35a64953bbdd2f1107f9fa66f255bb0129dc82080baa349805089a241a73e31059c1a7db9d9bf5c408bc63e8e7dfe0aaa2b4d9af46dc5f529435acb482f1103e3bf1e2440cda536e2bfafb912e5be1154e71dac857a29bb69776704f24faf7470535d243ed8d832fe2ed021ee271f28991939f475bab913ed837403b9d9edd4de109a2732ce47eae49a3421436eac6a42b579a5671b330fee933a5fa090852a34a9754b74342d8789bab6a4a2d305746387883e467c45b4b4cba6e266bbfed0481a944b6ff3f97d8e8f59c632f52a04a4e62b4e58d86f5b85298bcdc978f7de8f1ef018c0e2f526db47a1484497e31029850a125085214c4eb36dfb030f506a9afb9190336740ca2e87553d7ec13f1054bb801e8a86eed4ca42a03e555202691a6716332835d388c1deed86106166838d5432948976e2cffb98418991bc4ea3cf9ad428fcdfbed22c354424994474013fb250e199d9cc078950707ba517f742433d27bf8d7b1e0c1ade10570b1576245edb987b036144779be13ae8439d1855365616a2867c065a5b4b45c53c36a5b890ea693338ded716bc8cf7b7db9cdc2a76b5c4a7d93db4c67990097a83f3044e79dad46b88f52553a52802ff89351bdbff06a805323853693efc25c9effc187ab7eae07e5a525d31010b9986ea2d7199c515b6a12a7657c2e204e0c1c301c0c827686e762a605ea2b87473f07dcab32548cc868c675870cca4441746656ef4ae15e9a51a2e9a483369657abf74217ff01be11e564543cb858f8f1a94646e6ab7a738c71d0e1bed53e9aa8fb544e5bfa97635c8d7b89624f77f2bdd1d67ee7055281fb2e522bbb4c35d83f7eac0548683a0b04d6b7946a64f4c5b2185a093864fd7d87f4a4f52fd6c7728807dd845114d02490fa58ed2fdb7002ab1da806970b65aeac97a27cb4cddd5b2bb9a035e759be6cff32d03acc8ba2dc696f80e64c5fba360356aa96075398e1f9bed64121b3accb618dc47b8d8694aa7d3b40a50cd9f648ab69bd1693a014128848ff9450da5e070b92e39a4656d2f6c5845400de076c610c86e04b7ff9fadb4688355d342716b86fcc78df874e306e01bc4baf230371eea1d3f2db9b3d8c49eb24dd031f9a8fc66391f68c170119c07474f0e12bc5274ada49ec21801e42a5f5c3d7e45e1db1bd9169ede3a0ca83a9d923b602e5476b9fd877d3fb9c95515a43b99c8e44f38af31816d944401aedff47ee7d656b81437ad835778013b911108df3f88e814a54a6aeab322144899fffd50b10abf36a64f6573da7404d8331bacdc4d1bbdfcbb45ef218dc60290342a3a8b710843c00d3e122c705e452288554056ec8fe07bb76287e0a6996cacf18f4a6078534489ca894a5820fd9ad70c8baf733e643a30ad5d3f14649d7a85ab756a3b39e3ae78369ffeac653a1cb6c7a65b2d0876198db6418f18c112363bc6248d1c902ec000a4dee67101121961d3e5a68e41b9790d4047a68593614a835ec49dfe0d7fbe704a4e94cb3b6705c8be1372813f3551821441820f14cf5a0291708b7c4870797fbff6fa598655728dde62c71de616f07840e1270877afbc2bc1bed1838622305b53d292503fe221adbd3ae2641e9f860016ec558eea66d136bdb47849722cf5b31c78f461e634e69d1170a29029c05bbb139efd3e8acd714ae695b865ffefffcc3d5f565939c7230141c9ae352f8affa82dfc3e6399d74155a65e83adbc5bc6bf75dacc92d4dc75821aae8f97d2727db4c3f4958159371c8c63bb6f72878992c3f2952bb866901db077f50abda8156ff32ec6e5c68234030327d1aca671a9c335a480ee36d658a6e908ceaa4363f5330e80bf1ba81b7106fcdb4bb872b9f2449516078fe7a3e866372e38e39fcdda635edabbf901529a6a6bcd8a58b14a6dcd8024400389fe68bb1f7bada8f5f7a451ab12747d2b35c7aa707ced9ce1454a2f9bc16c397f8b2074fb82e9a4c9e0c099954e221cfd5405bb28e5a56e87e90e0f03d8a75616f01b7884d0e098750f80545bf6c082eabdcadb82e88f782b9a4f3bd31767301e01d0c525b3e3b47f7646d7b408c128bcab102d79e8ee2a2067e1f9d88a472c3ab13baca6b3f0a044368ec2a31dd7fb0892fb61bb428ca5d4e729b676a63d99aed3e441d9a0612ff38aabf27c16618374403e205fea41259f99836b83b451558a524c3064dcdb76b7aadbb06c95b8c2baec0784a2115d5a87d8ca75ad39885c20755e0278ef5bf5342a6f0a421fa50ee6e8a9dc1ef4164c92f55cd544a98271b18ac2d9be749d56a1973a5d4ce4793e8d8ffe1d446cad5acc0745fc63016afcdfb465effd764ff7f3ed9e39400b40bd88863bcfbdb8293cfc70a340b8fb9b85dbf3c3196e2b3efe64ba0ce7199828b445be3703d210345622f9b7a35016f6f84b173e52066f678529b988edf9745d8b32816e2dca761c236a329cfa5a04e0965aec062a1011e719acb860c7e401264b5750b44e942ce62ea22c4e3f359fd65183b4ac27a3d8f578c8c7b1b9a7a8768e1da268f10b2022ab3a45f8885af84c12036bda2bae06f22fe4c4b239bb98f7db04bd9295c4647ca4f9d29580be73136dcdf4b2a7bc9856c2049a28793565426be53992f32aaa92a1166cc55805ca8755267193a1bdf7daf98bf4b0feb5af9c2aa89ecdb427a702a3fe57d5c69435b94bc3de9fdaf642a7ee7d9dd35b11ac2e42e5bddf0e9b1fdcb9e95d700050c8018f1cfbb96890c3d1638562ada63cab1cf2b03589a7ce1b1cd58a6f1f8b9fe6e1ff56383e7b1bce10e0b9bfd817761c5728d167d8d7c1d1616c20d6ca47cd10cffcc76b7602c0631616d451811717839438f4a0ef50d4f03ea9b433b092c2142d3cbd16341dbc27b9976ff79a0d6382fd3fed430695d1731398f01bc0bc8008d4c87070ae2de3e416a5bbba5b8ec92bd1720983932480af43262a088846e7d9991aed34a69dcb9eee80550b7021eabb1be53da0d1dfb91ffc6e35c16cf43fe0dc791ec4eb48680c20053576761d58a18f4b03f6d02113eaf8d2ed1337bd04804e3ae3bbf03bcb6541de3b55a98b5ae73b9d8514d3f22c8022b5f2f81de9bab5e64989efa6abbe86389cd8c0b0f541a287e040cd282e855d7065223c018f7e60208af2f58ca8a1b9dfbc28cbf5eb8209724aff4a1e53053a4ca419bc1f4bef44d2bff1fde0dac9de9e60d654b3b1b9fc52e2b51b7cf556891194c833a4be158049f1216b1089744bbf6da0244d3b74be67db5fe2355f94260b4223ccf53c33da4273b341ae8f0453b5d928fa025117fafdaccd9b207a7a0c6d2960c038e3844514803c73b56c37bfb2e0852568e931046e641931466327ba28c5826361f5e87b4b07815f73a3fc79e2b5ad75e02e15e5e27bb8b2f852720a3a2239bf5fa99d1a92987cd506a4cb406f618083371c0db189ae5500b3934e149bd816c74a1f43c6cd0db576575c1b07956aec44ae251431c72ec162540a640d252a0c4819a07356f68eef1abc577ebbee515430b96a6d85e132d0f87a079d2a8142f37ad84f60c8a71bf47c82e7c25384a8a8ece54e3fe5dc031f892bc63153e6eb7410032c9db63d5c251b3b5952d2ff77bf0e7f20b82726d6070b4becbbf8165dea231efc3669817512c71c727b5fece902fb9cecac556e8499c04b8eb3947c2a4a8f292a062b73e5b0c2407a57e724e0f2113237ca83c8d88c5e4335968f263676df3f28047ec0e512e3f61145e8effca19e088ac82a4ef8b328e5c72b4e6da2c60b4df1dd42f1da288d8da9930be7068006b1bb2797b74b61b8347aa0a3edb6d664777b1c75a09b68b0c685dd031ae0ee6cbb1c142f66faee93b240c17bb62dd8a5792c5500b996ff9d516a116806bacab748e1fadec398b8bdcb4dbbd66a3c8cc75286735d2807d7451fbe9c0341386210473666bb6d1641df62948d25147911a33af1cc7c49ff53eda68d2f8e22c785a33d3a4da93902bcb350711ca84d244bbb6006cf30f44d1338199e566bc4231843bcd38474cd7ea09acd8906aa52be575b4017f805e55c6f18050f70f90b10104d3d283c6a250c571554efef140127fb38170efb208c89d3fcf5c2c5c1729d480a5a69b4bcfaba931b0a28c5fe20a001bfa5b8fcc60d59824e8bcbba80f6d0728afb40988ea9113f02acfbfb547ce25f888d7c58c485a8f3336fc8203c530711d8348ea2367e06baede07c436b0cdba5b67c36e0d282f993778b38269cbe705eecaaebbbe45dd549c0a78a3ee6694e83f6bacc80c62ba2ff5cf7e40ec6be54fcc7be2340e9f42a9b856dc2a98cbfa1fcbf4cf98e25e11f227e78562b818317aaeef7c615424f75e279f62e2f05b9d1400226e98b79c1c9318f9b54f56ea46fdc88602a0c04fa42fbfec58d078e8408944952667ca641db917a00009741f92d171c697e43e395bc2307459ab357194d9eb32fc8f0ed2bb5b732d014dea33725da5a13bd53486c62d1da424280b23784a0e4b49f0f8aabc834a38343a8bfe948761c6ca1785f4f20400d5a56326d42318b6220e8fc4b891e1f9e82ec14ff4f7a61bd4627960b9ff93bc86b4ab71347b631ced658c9dab837e3a597a2b604c7b884e4e42f528010cea28c337c3731faecd01e1c00fec8834b52a3ff750558e0d070a43bb09037543652569993da78cac4a70bf8343e12c006988b727605d4b68b63f22862b5217f9289665c916f930222e7a83db6c63c9f68fbadb7003ef101adf6c52654dc44e8beba5c4146b9fb2b2c39669adc724ae05809ea1a1734d07b63329167b963471c1ecf66ecbe1834c357d5ced031ff403379c29b6010a75e11c36c75775dd3f4efcdb3acff9228e77f307c5013169bf3e881651c9e9769f202cf86697a516b8c69965e01cd65715a38139d187f3fb3c3c8587d0ec3eca1072a75376195ad74e34cdb98d642fd87ade1150862a7e386cee4945a118470aae82c9b766bb9a1ceb72fdce5e53baf7cc9ecc3a51260f32578a74d8c9c9d0f7b92f57f4f66baedaa464d5e529a49868305d7657b28bd24bd8bdaec76216a82dacf8dd770438cb10882e98e9ced32e02832f0cb5a0e6f5b7e3db4fc5c3b193ba48f058b7f9de88945053d0f17ff22fbb63b7cd9f3bc916a8a55fd61b43df4cdf38eb15913290905982a9e154d1646bf5136d751afc82927ba331c36ded834810c57268e588d2087703626882c5338a6eef3acbb5ac6a1e0fe3dc2116e9bdc6cf90bef1d4f1714c79e4a66d35b1c4bb31ac46a5759e49fcf2581cb4d4ed432198d822a6287ef0402f0e0673fdb59a02835e4078be78f5d5f1dadb2487270674df297cb0a75c3edb027ed1a3c099aedd541bf4e65579b86d7c292989cf7da35feb915b37baa3670d6cf6100794c09cc1b5a2d5cf3be0f3aa68d8ac92586954d15c5c0f2639455757fc07a6517ea065628ccf2d26d2bc2cd122662343e0fa642a682d192ded82b7c0d6a7da6cb0f58fc99a0003ba588a705253a9a203b96ff92e54a4376fd119148fbdc1c545178f499588f7bcdce567ed02c05afd1434bc214be9bae8370cc1175c944e99554650bfe4a3fc46aaaddd8e2fcf93082715f299703aaf33c0b0967c1a17e248206487a5d0b49e62fb10bc3ae1fbe39dc8b2bfea404c1e5ee766ea1d11b677db46baa3b8ec7947027b6cb26b12d6e2a580a5c13e2b16bd858d7390c407cc05a8245a5b9e2edc41b7eebb859453109409b4e74acc27f315c1e0c82bc7ac705a39ae9cbb9821d442e62501abbdbd2c6bf3a3aa7b0d71623b42bb06568863686175604b1ab496e53d5216e6d03c5bdaef4e111f4ed8b9c708c497cad2aa9fe891c457037cdbd3ba626ba4705d01fb71f0b36b73b9a9d10b62d1346d71ccab5647af31796fb64c0551d48665ed332291dae3437dc353de95267b9b6d876e84a52c4270b82e8f704026e36d96fc3af715d57d6ae2a73eb6df4a8f5203cfdc0256b97074364b1e2ccdce4e284c86cfdb4ca594d642a98d9ef57184226a15f710b3d407deb84305a79c6af71219f62145054ac88cb8d6748d57947261c12dd837b327868c5927fecb83d5cb989d04f2efbeb46d5c2643246eb712fe958ce647a3b2ca215376aaa971fe05e810dcb0c3e66e3781ea4d306f71acdc4f802d2bddd8561367f5785857adf2f2350a818ac6cdfee67992004a80a0ef6ad3d441c4c2808dab175f4c278b79327b4e0af0085bbfef0b178791fe25b3e74016ac7247b4a76def33bcf6bc98a8118adc35abed7df2b20d0958db8ea986e7cdc704f2a5dddd006da99757b7c902ca711bfe3a6cafd83387e8c7d49685eda41b6d9ca1a0b093da7f8d2f27107452d9713e45cd0ca706c552aa9684b749ce2a774f8e4cdbea12bed3158a994b00b3800b9a339df7d9e93114ede6b591e75c31398a65741e80f563e36e893c69705afc94b954ebfaa8b68ec54cfc898c3039af49157f800b38bd0b92566fb5ff793547697b5b984213538cf5026d832e791319213551d6ff63bdf12d8b107cf5ec7f163a1a31838806bb3142d4a080d4802389f48b00a8d657da0dab3ca6f915909503455fb1c5388b92118292815f6d1637d506ecbcb3db442bf6a839586b52e07c069a53659fa161ce8cc87b82505d119f0b850d77d742ee0c6f93942c8f3c9c5fb06ed0f3c9db1ca7532e3afc6ccfc248d16a407e39b252089555cce15b91c175bdaeac6f710b3d015590d5e8a2b7189bd7b380e34a6eba04937fb15edbd6a28cb671a34f58ad6015af70d39e75c7359fdf1e9f91fae7049c39d57e5ed65e327569318529406a6e144d8ba4b8ee8f72aebf75583dd00957966950b3234797fbe699f8b4d47d3627b611da7be4b64499f7216d836e9b7ec59f863ad93f780053b1bd1093960903d51853ed70ac76a8aac1bca896bf4db18673eae418b2ebd8a24b108c0cdf7d22e2ba3e2c034cc2d6c542f56d3bc3e234fe25384a2479d12bbe43be374183f3dcb96c707ccb2a299b333386202c06fc7c35cee5750e397346b2a3a4181e501d01e8de2da386dfbd50d11a5bbe38ae16a09b5d9b3b152bac060c7559e2dda38056d4dcec145d0d8fbfd7d82e9f7609050386c23952e25492ac581f87687174bd5bea0b2d9122d2e07907b1b1f5b70fb4547a10a2bb20df197ac055cfce32746542c6f47ca55f19651d24c33ffb9d76e50bf13f134d14420a07ef2eb735762448fe70c652da3c19f25816c74230bd2c658330eb6ca354f1dac30028ba5f06d46a2c997d9a344f471ded9243d0a54daf41559e8208664ec6c4133d8e777a62ddcf9b3967b1d0fc4f3ce5be3cd9e307f7cfa3883087bcb3231f048a77db468012e20204c566d5dc6a967c3b849e4f5301bc7f6e7c7c3772731b83852b80d40a76c7d2c1f5991f361ca4e362adeec71e100213386fb8484bed63b8dbed5ea9c1da4c75a16ea78913c9443e666d5386339b02a59479db9963340bcc14ad98a494f5d7129a276e76aa3248d3661c2489d83aa474cdc678b3a5779ceb1e90dc43ebe5684ccaf3eec76c94c247de7d203d834366176f4bd5d556d175d42cdb8629f2b9bccadf5ad38fc260447eb9cb6ac50b41c6003370914472897ec4ecfe1b3078925c3d7d3248bdd457d24dca4f2ab9e8958dc68348efbc33c93794caf065cf1f55ef62f32b10652461037e5e15c9882763dd1de264752e075a07dc815164255af102ce80869805651a2581c872513d85ed6be58e2555a9454dd0489b1bf950b0f9ee2255362e30bc98967c0e1f7b83cab9f7c4b0cd523ec6161f923fe95bd4a44b78710ce78b705bfabfbdc8afa8445a43b858acad4fad0ff95fafee3f99611a7ce47d9351a9a5479f68a877ce983bd6ccda8e4d6e8447365e6150de6a3a2f26112e170da7343618dbf2777e9d19f91e325fc0710763bb989a4edc10799cb43e7e2e070425a64b2e29b00ed65a6ef62729821da112e6c78edf1cf786111c4a68ed6de25fd68dc94133d66abfe0a2df14b8413b6596031014445253dfbc1df355458b1b142c5cca558437eecad6c9c8b9ffac546b3e91230a0e48a0d1f335ed5093fb3f1aacd730ac593c6f25aabee0d2748793289c7be94b7bfbf5048b59cb242a8f5bfce3fb3be346e216359d0c29308bfc1d8893253fe512367e1b9eb9bedcc62031b2660a60bcbd6c43d33d60fc793f07436682bc3c9efa5bf127d309e5c3224fe5c38f2c301fc5e1c12654daaa79894ad3eadaba66fe89c74649019ee9cb237e3685cc8e5ee23bc45464a90ab3adcd53ea91adb421c844a2825978d63452fb6e2bb3f9cf2e1e3c223144ef002aaff59dbfd62c3f3bfb7b1a2a4ab5ae4f3379f00cb50a637d5d38a5f5fbdd5c009dc396be70876ee4a86d24078740b667897c79611b385398357b78d2eff3b01dd3055ef2b9a47180eeef88c16a35bf94f43cd542c83d6d3009536a1ed25d26b08d3c95947c633dc5039bd1f593dbe47ecdb14a509ee9a6c478b7fcc78e02f36183dd717ebc615125f374a390507b5be1a4f827cc4dfff37875e34e8e61f683c3894354eb0feaf8a83f342ac897db511596b6353fdc20cdd75c036ea970b60bd28e09b4f6589728044bb56de3be59907493d2930837434e54b6df212dda55c66de50c90f964acadc262da6655941b5345ac14abfdce1615bf2af8ca802f3601d7f1da03ec04754c3ce12d8ac41f79c9fc118716230877bb2ecb2f09ca4d37cfef696de1b82b0731a4368f7058382eeedc2142b4d166867646784d381e4447f03c55c729ad20829a5ed2503766d32bc121839dfda85d73e51ffdccdd21e4966eedd0ebb423fdd79a430e7b9d05f960936a0cfcf315ab7b333c512eca6afcdadeba507419600683190d01cfeaf1a2ae602b8dd11db5448f9be5e84f14dd6cf7d0e22d65720249a85b84656e68c581ab5697549eb4eb4f7c43650c09023dc3a0c07d18702d3588c0e4c668582d63dbed4e1400bab8ac76cec38ecfb8f7272d2209c841f84b2ee385137cd8c9fa4d6a2a2bcebc7403278f25193c628a47ef0f5d098ddf0d9ebc01b0bdf139004c55438009d2c55729dc72fac775557ff783e02b66bd412c7edfd4e23b9c592f4692c33693e09182d091ea4770cbd3b92ae2a0304229d9c763fe68998dd86775e821ca36b65fe9cfe983c30f59d87b2aa1d8c511b82cdc4b37749343d99fa04e369e750085b28422b0294c90720401c58a7a3d495da1e6b58dc324f80978af18ef18f325778cd5e9782a8e5cd86794487bc7acf96503667bc367665391b657e90ce4998ff31f9ea380f5dde2ed6076748b51068c9c93e7dd61ced2ba78c82b5fd68fc522920d994f7decd0f0f80b055064681483590da853681e4993142487326b0da5f2d2f2d8ac5074f2d10d5cad7e0dae56301902c7852afc635d8646629e31cef3b0fee972450cef6577307079d16c1534eb96bf567bbfb556b42b508a03ed134a564ad0bbe916ffadb1a2225857981636f24e1e705f899fb81aadfc1cbddb67434d1df6bbc68e90dc31c8588209e3692db86b5828006459278559c78deb05d66d8f040e8a77a236019386e054ebcbcfcdec49e901ae00be34e69cf74469005fc52cc67174b25b1a5cd2ef200b1cf392464871963ca39926640983a8271f8540084e1db1305abeb7779a7cd54624aa4818992613f21c612f848fde0a312cc5591d5840f6f91a25b8fcae91e741d2df7b1467665738f029a11e13297fdc5b246ce5b3497c4370764e2356dba43b9c15f03fcd82e27be33e8529c60ac396e57f67021ab824af01b9f359bfc7597f61c580bdb600161a9006e0faeae7ee8ac8aeff19484ccf3fee822979a980a833ca52e7471eca7a836805afad95bd91f70ab95ff5a6a23c260dac31de7966d7f8a18df94bf88ada080e812dd9e8b0cf5e11e88ce38eb873847f766bab68393c3dd42659f53394f9675537c506f4ee295d6465fdb230d03e2fda56847664908426268577214dc5aca2a8bf7a708f4b43890b2d594e0e85970a74c434b7165e983c0af4ecc26464526f7925c684663eafda4a73814cf90f5ea96a8fb24bcee0136417869132592cd1fa8b88e7717134cfa29d478aaac411fcfa7bd9672016869292ba69364980123cd7f71ff7ec9fdad4312c429ad023d8a9d1a75c27870cb261bbd63a27631b983c28a560c44a13189150a06c2c586f44240dc678e9752b17c8c71a29689364a072957db8afff32531d1a0ca6d2b29142ede9b53c9584a89377a47b0c2e013333d3dee8b1325e041dc151d800b5137f4dbd89a98f5491bb1863e1f176439d8652fa32f332cc277d0fc7e825fe4f5fad5e909f73faaf1f0437de61c1b0e0705fc0db17a052888ab2548e6ba6f5b7848c40f64711defa952c4679b17bbc57a2e2eda448a29c925387602462f59ee26d58afd118cfe853f8c68faa37589afb47ccd9de770dfc4a52f6d4e3e2170e5e76fa43641198d4e93811244022ce65436d105020ca308cf2c85cd2b8dd7093fa8bf32709a29e4864ae9762aaa7fca5cada5e7cd32aa1feee65dc1564dc15438da65e796a4440b1bc1092c9997d52cff22053d96da5466e41962992ba647e3b79b814e94aa8e90a1c7626c329d3384635abcc0af0a58aef5ac4e7094b3abdd9f43a2870e7f34c8192937583fc4cff982f6596f45b1246c97905feaeff85f922ebf77e17eed4794d6c97e30c68127b416172c9070ee68952fd4a1abd62c618b82ab84d9a1f76a19a3ba296b4c072b0c31ee8506d5185a219512240626f58920972eb91ae216df646a2d6e03473b6f9b7679a458241aedb42b71bf3206587577e0925ed3bc5cbcd57abd8ffcf3ccdd1e1981894034ac731158ce6eacf9d09e0c7d2722ed6c5c397420a5b3db1e5873c61dee4246381274fc2e808958aa638099b569fe2d19991dee3757209b9011da47e77fe73b85a19e1e04e606551916eddbba3f2f3c8fc3cbb108ee915d27a69f7f9de18db772508a7ba00c373088b07034f5c0cebab3a442889317cd70409eafa7574268fd175a7b464e5d7b2b77b70d098507b57d9ac8cf28302703bcd52a43279a3ee2d5df26ec32579512dfce727cf31e4f647e30ecaebccf6c3fb6d42c855259c88e03c63785e88ab3fde99d63ac98c441251d760d13155587be635be9113d36e21a3fa785193fc7926dd4a30250175ff665dbefe6c0b539ff602b96cdca7f6aa8bfffda93dcf220974ec0e3b7ec22029b4aeb3ee87d6f2dd7da3f2e723100dcf7d0ef57121941197cf508b2c24a100f953794b7ac8a9cc775ead83ebf9ba137993e3281e51a2b8f0ca46b7aebdaaa545977b9f82d6575c18e6df25041cb848a148e55729333cd835609cbf4dabaf34d1cbdbfbfca130090fcc3f1c442d45081d545396b2e633218ca503c1a05e14089e40f76b55951c704690edec7396fe0711685d982ccce6e284eedf88cd8b33b6c26862953f72a6707896ddfdd718991b3d2774f9109728c2d4081214cf478f3667dbbacb94406bf13aea7bb4258901eb77ffdd8346d0983ff137f05428c82f9dd2738a0bf91d39207f9c248552e3f8f4f7135ccce45e7946e1612dd5f625135cf49ef673fac03e6bf62d56582b1471c456719cb21c5e34308d62a19ef99cee7447ed5f117e83f4e56f731ff4f01fc2e2ef84e21de16eafba1fdf104d14e2072e152359e80cbe69a72b9e7d5021c206401dc8ab1588b5fb7b045301603b0699d852b4ad1f584b32cd797eb7c9c3a1a12128aea54bad8b8ac5cc838f23691db55ca448514be63a79dde8040acab80105397bc1eae0e434fa4ee9b61841903a042b3b598084b500a4ada401c93d3259dbe2b110b71162bf801afd25bcf95a70029a0fe774d7b8d4a46bbf1d6922f436089ebf02be9497b7ec5862e3a8de71f5ce30d8bd79de20856bf3f81b1d462a8e4a2b0c3c24d792d1f0a77ec26078c27ae642c5cfe1918c0e6a7e184610d5dacf91b9494759cb128d1b1f1b198439be9d6b721f51d9e7a0848cda21985a0c79d9fe550bb01ef555085942604ba8e92a0e0bbe96bb5895f91fa3ce63f55f0d4eff6f905dca0f0912486b26a14789a598e2d32d00aca854b9f91438d09ac5084b60e1eb618083aa81da67df5456b1db7c9f3ec220dadffdd18bc40b3f8f688cbffe5574e4976917ac19d20715f1e2704ee241ca6476508e0b8e345f98ec75fa2914456141a15f702417e1d14a899320351e750e463d8bee28bfe8263115f51ca6eace302e923b004951a98270b6d44dc3ef453c30edaab7811a7e973432827bcf727f5e44e641a692acf126e830a3b6658ffa2d8349dd2456b3064395690cedd28da1c7710eac3405f8c125ce9f35c4e24b49d862a06527b6a6c3d47b18d3588089f74e275d5b9194bb28bed4ac08a759aca678cb965f1dbceecffee93fae1bd14be5eb9ca16f7d6eaff7be2d046f863cce91b976eb9516acd2c7027d7bd0c0fe741da26a6294233e1e5642305ed56fb3c9be9c4c752e147d55150577a2dbb42021c1039e8bdba0d02201cf627d3947e8010b600b84ed119e8a055de95e4390e0f76442918f86b57fd423921244b99c73a2d5dff5af23145334074b9514951920dfc16a07911e4cd4b70fa2de33ed643e759cd0c613b3d46a10d07b113a4ec1068f69a5982516a4248edf27aca3718ab6a186da927914670fc0aa2c005ecb583248a57291e3e59a17b1176e3e043ad17c62a7f6b585ce36b07aaf3b867c29773fd6bedf3734f16d778d4004e9c865e3bb4711766aa8082d7e1b3eb8a6c8c5e9eb8ffa85fbedefffaa5838655a145e78f7b73a5018685b3e73c5c568dcfba3eb81d25b547550823b9d57c6894ea7d0f3e317e91ddf233dcae9907e3b8e7420ef7008f3ca0658117ffb01f51f121ff581dd988590616bb6741e85bf12386c83e11f60326adef62d04bc1befd01d1d471c09087478bcfad7bdbabad3bb11309b187f0d58d3f7aa098a7aaca6783b24997de2a74b00d800d3c57d6dcef79c0b9a702e61f00675a8bf7e5f26be7cd845361a01c4ee1b00f2bc4be57cc57421c3929523723ba56f22a068207dd414a37fbe2f327867e913bfe46f6f43401df1a4358fd65cf91a6eb5fcd585e2f60d221c75e66d5fab5cef0f68e12007de90805119e07b6f12a4f54701d003cf68c2af8f06b882bf26aa6f5a1f7fe71061985db71ec31c7ab7b450ef7274de55d5071b35717875cf56e6651cb2e9582b24356eac6bbc07129ac3718a4a5ab0dddd9b7cadd25d9ab3811afc165d381bce70f4d6f2251acfa600da4fcce8ee805222c28c1c203a2c3fda3d4c0fd24c5056becf5a8d9680440c075faeb607b8d7303d2f2816b87d825bbc61cf487b74e37de276dec0847c970135c432df619312c40c28573d3285c06ef380ee031e6e6665d94002298e2ffff49ef64474b09b9ddcd1c6c385c7656ea2a13b0aba642ee986ff79efc13c995d197e6f1e7449414bbcba6eaf1319baaa3dd5ec9fc9207ff058628338282975ec340bcef29fbd1bb71e8ebaf20a35eb61c60b8c6dc9da2d55f3fb5b7cd2557fd81f240d8a11d47a21ea42dd1b91a813a55eb86eeeb989b0e092be17ca0d914b3182275f8ce9630d6299da5ec289f1691ed178a06b95e851f2fba388c640cccb1dde3db2a29ffbf296426eb32de730b46a9b58ee8753ed3d163f1b7d8b6d491ecbe1dd11537c3e6d3b96d724e9e81dd8abe9d5cb0055918ee0f49909c25d56329e75d94a883bdfbbe70442ffecd5052147e4ea6b596ddb04418fc3ad700518552e4cc7e9e01967326420538db214f1f9ac01689c129debb13c1c9100cacb29d0d41d69e3f56a38a66a63815871783771c1ccb2b260f551565d28f2c66444e318c272a8c2e38f9c148986b812a572ebd2dd82ea00fc19b0f3bbe0f4d625ab71f6b9c3fab039b33f25b3d8da6974e8fb19c8da831aef82b695e1bd9ac992854ff1e8bf4c7afe24b6334a9702a2810d8b248d6af026f4c184d47a842e188dedbbe30d175f250b808c597494dcbc61de8f671451f13c8f161aa309a93439eaf1c05b1fbf4bd6071a2fdc965fab3c2d32fbbbdfd4bfa679168c2d46e7b5fc910cb0c23f5bbd5f141410b0211ad642dcbae9a732d5dc8126b07e334edef4cd27ae4a4189790f0196e75204b7ccb8f88c8c0fc20bae0ac901cf942c2b1a648c109b3637833619faeb3e1cf1857a08146bab8a93effea9ab2f8f2c468dc157e1942c64ae8427109b1c18bea6fc27789064d338995ea3d65388393ef8e62c41ef9cbe3fc8ddc8b131404925fd0a6c67d32c737680dfde4584cde25c42e7497aeb082b39a6483e58b579c5dee972720418c26c00708c12f0104ae738a0bd5cdb6047dd198a4c6a3192c0d1fd579d2b0ebee38c6a919dfd2a499a573428a303518d7cfb36a7b64003b3d711bc77950f47078bbd93daeb453ce5c459c9f275d64d0b44d15e1e1740cb804213c5985fa60b4669ed6757df8724d0bf17e1747142917ec2bc4677561b713fe1a9d766c1685151e67d0f937891acfa7a49086b23f3920a36813ffce36e2d66bedc5d381c46e3d05ef4ad7f2493f79673a2a8c4aef26cfb1de777abdc37020332fb817503d0b018c35cdddd56462a321aacc123f6322b91a7ad46ede9a79b277dc6e82b757638abc4e649a4a387046c321f71cc81726473b418182ee580eaa54befd38ba9ccf89df5d5a8d79dfffeb9fa15e402024ca21d646fa8ada67d9f2a1a54c8081766e7b7e2fe1177f60106add26355418c3b03045595d3d27f87244b3fd0ecb34bc47e56423949588160d5cf7d33cfc599a29f2b804a5d559c9c5562655582c9afaca7bbfae61150ab4c31dee0c432cfbc30ca2ee7c71aa4581d23bdb78e1d0e157caf88555cd2dea16d10c7412f614252f1023cc7f18b02ad3b65d070df5d621f1e26ef0d1f863453e999120e1edbe2133fe239ad7288705e708cd87d4024f25bcb65bb295f0cd29ba3ae96a28183d7b50df1cda90e95fc55831ca6b228e8d55b476af672689d043930e4b888d921f25e6ce345a7af1c6ffa400b0f21a1ba3b94969a23eed7e01f34a5470f04117736178bbdd242e901165eb9d4476e5390239be34676a77ecedc782b02b9eb901017ade8832d3521378fb785fb87d6cd8105f162f9800c2ca146ef35092bdfdd68cca831c9311812979b0deac3396e5e5e27b39ea52a889ef92d46a6783a7c0929e9dcc4f922957c8dbb6703a9995ec42e86a64dad62085179441e24ab8b650740a63919fe6460ba86eac6aeb95709230901affbc210b8dc168733cb98298d001d57048b20ff2f71ad59b894c0c9317506d014cf44e74d169f75389103e9ce859822bb6abbf1af28a3cc164ea5d9f36fa4de9ca514468566546cc41d66affa779871fb809dba4b0e630e92e3e2ea5269207d470097a7ee93b486f08bfd369143208ed5a4c084ce946173e5fc6dcf9b760a33ff296ea98750be74b02c0110e13f77017335fad83b2b3949bb1453868461b1e74e3db6a146947f0ca6c9f46e6f8fabd84b70ed669fc9b17b9228c2514bc41bfea531e2eaa99a949007c51f498e20181535efb0445cc23ea50079988ebfe58c58d7b299ff5b4b476f8a88985783f248b12eadfc630bd354a6ceb737b9bfadc8276f91056916daab3f400de26e46c67161d8d51c562bb36950465152845d6a552167730bb0f52f8e97370d35bb9f04dffa770a9ad9daef3f05a810df1bfc84efc181cdd5c66663b65baadb160c91ec4ee9527bf317d78106182410e528be0788842663d98c99493068af3251951c08795890e776335df38703473ac23ed4af68c59847cff9fd1add931bbd7bd60217c5630325b9ed4b872358b42ee7704f225fe343fc3917b98ce0a4f4a4af1e3759f390e840ea713ec9ca385b3586535130c194d75ae377aa6a32523d6724510ce9292a124735f62c657852d15cd87a6460bcd24bd82620fab0312ce74263f8c983f3c4c45566f7491fc61788f5ff4546aaa7e73b42088f097f52a616e09f3d56d57116e2738c4dd737571f0bc4b3779ddc830c384b244059b133ba5c15b96e815dab2cdb1e3994f98f67e3c3cb4747656d990076c2a1d43646aee1348e089c3a89853368fc875380f263232e85f0695e3d9ccd1863967e2ae29ef65f9698844657d91d38b6a93de446dc02826c487bae5d5824a19b6af547eebcbbad5d03d0616d6d8b70a9228e1481d5ee534f9219c5a5245fe52f226415bf93c62610a90d93070211328d3f13346a040f3d4c97f1a303c72966cbad2e790617198f9139acf98ef866144897fdbf1ca2e540cf3ac755249ecad3deca935a5ac902651a9ce63e9771875c733f0edc5d19e591f3ee9e9e02537d6c106decbe59c50a00a863ed45b2bb602af89141e78066d0f4fb5a74180c0950f033fdcb1cce90fdb0263f9925e14215fb394856b86d8153d514aa24cae524040bb4bee3c832c294a0e4998df131432d165f9a89c3546db5ae8a081113b2015f5a7c5c2b5b779bad2bf6b364a138d7516fe334b1d3976aea7980d0c6ec668212600c2129777ae2d9855fdfba033e34e40e1f9f22e4e73f88e6a6dd2d4bbdb0336343896090a07c2479d140a60fa348ecebedd34111003ca2d60cc89a262e286bc7bb0a5da5a9d066a08b34738a88eb90fbcb1a1e992463e7f8eb31942386edede4cdb2d99cd11a90dd12797e32acf0df1e87218f01ebaddc164cfeb72c3deb87c58d743909c588e1973caacf0ad156c8ca3d6ce58322f6eb65e350a3f13a7513c91757583890bc0def4ec7ab9934ed9a13b49f7e7be676acef45609b8f38f32c5ba2922c63ff6a25f4a5fd5df4721a6763bfa5a03b0e994f03f1a1695f37c14c574edfda5f2186cab677d75a7e61c2ce2b7e0a9a9b08db8a531a400c87382932e0e4994424911780a5c87a8850583ad90e61bd6d07065a30c644dc5d7ce15cb6e31b57a9923b899bd13c8092f6cff22ab49c2709f4d141383771ebec72408319fe3f63c8e5dd3992e20c4e0932b734b7ee787bf2f04faf3a3c3525a0caf3d7fafa823b14f3cef46dc75d68388dbd07bdf1e891e6f1886d8ec1a45f498e85697136230fca85305c95588b530ddf6c5a7a84bf638e6c2e8604c6b2728e11199c1f227ee023d7686af2e937e07b8a39042da99ae2896fbefdfd9090c5c145066d635404a5fd8af752a78ea9d1d971bcbcf823bededdd7148ec0b4febebf95aaef021ea5e45f7a92462512d1b0fa33a9166e99f296175dad30a560c58110c65aa056b9204dc24c9bd14408e2aec766c93e24ae9a181d8afbe39c78b041142c9507e3ca1c020b6363f05fec94a389e90273515a8da05fdd5128d83f0fec561d3c2ecbcdceb967bd084d684bc8b69eab329e5193ad82d27510ddc4ec80a9c947bcab7c053ecf6c60f15dad71ecde30fa728064de4b5a90a787c7430d7e8f2ee9f1ad49edaa11a050860bc06d20f0a192e9c1a8ad0fa9efb8f30422d7adf9a3bbe5b30c2fdbebb0657ba2d29ac665f2d6ff5bed9a859e0032b6fad1cd83bfcde215605254db6f0e536b764895f10c12c3443a31821c9c8b7149592be87b41ca7b27f46159268374fc70fded4dbb6daf6a64be031d92ba82fd329599b5b69daafda9d2bb703ff846809abb4b0cd86d47a4d356b9c96fb09900c4895fb8c227f1a7666c74f2a28cd1eba6fffbcad48dd65b30f720ed57a4209397ddad143f0c43ebf787b7bf85e7cc214d26c5ffb6e51607231dda7bfe07db9c7df6f16c2369b9f61b08b5fa4104918f79bed47bc14351526cdc2f6ed67266503b8d618a499d09bf91b724d5fd66e68f7788005e7011aed942032ae6e8b20e927020d5c23707d570a6d1964f7182ca6060348cac76613a71feb7478d35a704e364116bdedcd5d49e341e4dba95b8e588a672f181fa8eb22850bff78abfdd61f79244a74d4e24abd812e854b4409ffdc852236c15da1302e3afe4cc3eadbab9bff17463576ebefd19b5ed4a6f804bc984d17f4241f728930680e97f06690cb3147fda546894b17558d282373e64d5b266beb64a14b98d80846a71bcee976b56dd8665d1458cf559321ef091edc82f2a75000640b6a66b6761a4d4a9e4a794f39ea36d9e793faf3748ccde38fbc7d32f8e5ddd2dd7cab507948811e2a8fd10a91a9e60eb7c8307200613c727014fc581bf659f2b45de1a3321fb587c98d4166c77308a927e7ec13d09285a40bcdaafdd52dbc74c4c7681591da810a4e498c3b5b64f9f56c2e26420a011062d705100f9558ac6b6099ffd987fba14f3ffd459b63afcfd6b191056c41179bddf09d461b058ddec46dcc806125d651e3bee18bd06bc2efe606ef45ce37596f8bc9be4be8541f84fe75230fc95336e2ad08a6f5d694678348353ba7de669b7aada3c92fc713cd2b93b4ec340e31c56c7f264109f9240bc4a3d35cceaac175107d72a7d088d8d16bea9f9ae76216ca2f3f308ace35407395f3d09068360ca90f94945846121f7159a2792c2894a2fd3e7d067ecbfc0636baf7b9d8ffc5c63bafe7e90e3268ea33eae4cd09e933f885bec8e0a751b1da5c20f86f195d9697277a8ee5fec475037276443b655c131b192c6b3d65ee9e0cb07fafbebc0e9b4cb0494b9a7e528d2d50a745ad62364ee1143c839c977af7484f2798cc933fe4fc7957d8915992e26f83d24d514df21968b62dde0e43e16343927d1572605a8901ffa8058c9bf4357729fb54d0d74453a350c43a7eb07ae150c391aedbe3df485f76760da8c5b298d86a453a9df80cc78b9dfb472934ba73af609413f29e7ebd54d3dcd1af299160337da37bbf9a2de8b7279c31e32b04d6becf4cb1e8a8df3889af5b4c1020e32464045f9a1e57db21039ec6f9d481641612e5acdf9c82e4a621f1a1dc2636717e70b09f4c98a05cb094b2e8404fb583769b0776e0753df49a2f6b98571b90321fe4dc9040d78bbe22ade7416d36b20e1d635619e18844399d4739fe373b2f8d79b87bda3366ccb26ce9ae90c3c6b3d6558dbc573d781095dd87ea68336bba5a222527a26cbd55f25d49082b5dda3fecc6427823a5d76f505ed254af18558714c7952cf43abac9840862ad8c779a7133b01415555d7da25083d084b686d34047770eae6faacde009381450155807374c21143ae36bf0e074a127134bd733a3b35fa6ed213ad95e568529e28e3be205f0ca36b7ec87a16e4cff4ddfdafff50ac8797d628fe06b9a0c2edb3329fdb6a507da1cf00378045d442f75485c93744bc4f0dc98295a851c48878028b3f68524fd443ab8f4247e68ccb3a8f2053ebd3adaf66ff2797b7aab38e90bbd1660ccb16d0a87d06c87f225cd4a23c93fe4a27339b236171025f50749567f4cffe3eae48a39db8787345c4c3d928838d8639751bd72d891933b6fc342517512a903d14366191efa3fe402fa91714088ff62de251e0d871e754a7507f9635c1999f20ac71dae41c70c4b49c6f403a3100e52e47480fa8367f92066c00bd4b026e575317e78aef2088f73c7047f0b05f8ecc655d31dfbf54d307ed2db47b915e7b98bbd64a21d5561802a8fc6be9052cb5cf7f774876f0b8d0b4ce1dc6a26e4853d2867b341d0a381da0f9e44e9bdf32e633c97ddaa0cd5550f3a09334bfc0bee23edd94ad82708d45baad39615e2653640ccea329735b46fca54e5a71288fa2830ac5b1f8c8b407286cfd6f74a239006e327c810b696c46f91758f597f50e59ec9519a39b3c7fa46808a27b4ae58313d55680e3b487f55ec280492799c7872893ea3c7a58c3c3da19d439d6c235fda48af011d000a61e1fd654e7a9674460d5224a058afd3231db0cb39668d87390d3409f0cc2ff4e7ba8dff813bd030b9631de4feee3e8b5510ad2d8ebdec78aae70c56d6a20907fdd3bb149d9cebcf58a6ec670ea50c50f6b6d53362a8c1db3fab5adacf3ad639dfe2fac992a77e60e48659482e2091b959c575c45070fe5ebcb529287e2b4f65f8b7a89fdd5295006c68c716fb5c1abfa2b883087ea99112b1e3f36d72b554caa93a444ceb2b67007584c1393c35fd29003f7ad72fc05a628bd3459b4d40855c93d1fa55e0119cbdd9211dc9de546875b34bc8117f96eb046dba56b8e612d8725a961d2767549231bba7b3ba5ebe50a194437ae022c495d4e944fcfbc5c358487fa0aa79ceeb517e8b87a48c1183e9bd45cb9e0771d02717542fff297cbab78c4e9800bddc594583f4487a35b4f097cf99a4a8ac3529016c6db20f7f93ae91e0c44db424b0a81c5e5b8ef2341d9e1ab496484a8a0de3226f32251ab70a95778db5f478aed7f244ed39e8860b0835d5e983fde05f1750d650251c35236f502bf342eed641c19ceb1b1e24a1955bd11ba5e7530c4cc74f95fa76d4113e6a9ecbffc37215795dbe6572cdfc1534dfb7d9875cdacbb0aeb8719da473ec768ce2f7ae8b7c75bbd107194f1c50f664bc9546b49cd668a456dee994e50388b267cf51d233f7358320b3c326f80fa6aa4582805c0fc2b65049575823354d540a33c1d4d68c04c982dbf962e9c1c5ac085aecac5c356dc4be7e1c7ef0aaf4df8270c08d4e8cec0f3464fcee9b0eefd2c99b7e93db9982b5406013d2aff5605df32f369c3d6a311112e7fda9e47d5197508675f12c0bb5ad1da9567e916d7a0292ebc4ecf15810aed4b334e1b2e0331aedc4776eac50f589a5e52a68e4c06b3f534fe64b77e1ec500e97b737371e0303463d14aba64a5ed86b84f09e244512bcd33902508cbb27fc683874367e5b01fff3257a726b0d68ff7841c30ddd6a779ee066ed755ce4b6b362622b4901de01c97c4d14d94bee64803a7ae3b7ffd50c05ab6255e0dd3104a586043feb3cd98e5170992738c0b6b07b5326dc5a24f3cf0e95bcaeaa9acc2c64f845f36423d518c6473aa01a497e3183457f7f3795aa1903aac1c8526fa99e9f5c387f4932b9b36381bb9ce936cab09aede8a0b1a690ab1d365f9f7c198291a5c54287212b493bcc48b39a27da3faded6c9a02aa9e8ea86f5f338391bc2141db97c0255473370e3cf7b8bf77da8736d17d1080effcad0bc8b8355af90195ab403807fdaf109d33288b9e5941bfd21eaf57e4e1a3e3d0e23aaee5cb59e3158c8d87d9e524a757f4b7880f2f3ce759841ff8956a52fa517bbdaaffe77cc72130b884e7631fcc0c850a1163efe18e50bb96f641f1c103628ca1ae4da31ce1aec89ea71d5761b6b3d9db43810cef7c5327cde38b0dbcc27618a2c0a627b687abbe1f141b2ffde100f1154008c24c897d70f59b3b535344c21e1d423b6fd9ad6b1705dd7e5cefdc4247e9443dbd863675dc559a3aea82994b0e8dd9d9258eaaac8225b5042531bdc00b1d5bbd10e483a276a8017838ae744b2cad94bd001223a50b11c9cb586095448398b0cc8807703b28ec87283672b5b58418c913dd8a8c8adbbe8b6def6aea5fba0b020247a768e0ae1c36a0654b05b30be74c7110c3195d96d69aa09748c7c80d07a890c24997bea245d5d123708c1aca95e81bcb7690340cec2958ba756417b47a3e4fa8e0bf2551fdc30993c52a20cf65272aff4a12bd34c584ec943e0585d6b1f194d5931b4e7ae1ca8c4d55a26c5aa9df78af9c24583f70b71dc984f683e770c5710802f79a634657d7dd8e180efaedf628a7158dddd9bedfb954ed5106f454ad150653ac378a5f700a7423b66a883698986241745ae365d8a1ea1785908a8773c6628b8e9053a05a12277da626361a22a55b2c5c9dd684f14116a8400735baf7ac0c8c57bc90a18bf41f439061c28fe865e9f6a172394f5805f8d474999d90dfdb5159203195f9667fe2d8de1195b323c2df4525834299cd0267720d1c7ec796693072c5a37b0c41ce59ffa82aed377387595953bee45b4c86f0576629c2ca13b7065cb452aab4e82e003e1e4cb81beb5905aef1a795a1bec2e272093787d72de98b35ac25514451dc1e0819504a4feeba67bdbfd288b3166639e2c14f412c815be1f61dfbd1d49adce1c6d92c65e421098b5a3a0441744ebfb950b49ede7e21d20e36f36474152c328d51fa33e0ea3b5dbfaf2ed9355d5313bb69d3227b555c5f2ceb2074fd51b2690c2d905ea864bcd18010bf6e9a9e3d6890c742ac787e23f2739536513eb4b023c5642a36889959df2d0de9110eee48d835d8a5e28d458edaaef092cda6082d4248e854f598778c5b8b29eccaa33ef2bec7795b9e446ea0ce76cca58394d531bcdea388180fe77fe0b4e8f52fff0351adbcc257542b61efdd17813db28bbf9c26c6e735506cec49af0c9d18fd94d3b5cad2cb491de609b953c428879e35817fc19e606c9eebb82fe7337ef5ea7d39e289ced9b65dada32a17210c20ab8e8068fb2879bb05002f04d8f247f2bf3e580e91fa81c43458dc05b3c576f8839b2027725e0cba81ea00942feee03b9bc326c8c478bb3b6ab3e048bef3755956eeffb4df4fa961d099f8edce6e8599f88210a2120d27f6ed8de201d72d07e9e37442bbc1b69150024b83414b76cc08146a75d388c06f7b532ddabf9a9e4502513b524b5ce204fb1780a7f02c02ffc581f8f14592982dfe098c3c3375eccb6b18e527fe15e277b667bb2e7e1686d4bcf3568664530afbeb6b89dbfe6ac5e4acd81d1ee669e1083230431441ca5cff1b4c87583c2922a39c0944ee4e6261ace87ff66cd498cac0ee400db3670342e7151190a91e4b00fdd4252d4a09bdaf07d1209280a3141777e19bf069ad8e963757f998fc9cc13376ac50f17e5d65ec5db329174294e0a5f1b669c2acdb8f9eb30868c725e53ee532aaffa6914b402712e86c016045de1952853ab26381ddccfaca12ad8324e10c7ac0b36933ffc2b35e040e2916da629b455ea91fedc34dcc2bcef8c16ad1330eba386fdebe2d07d52fa824795f8fd74e93a2aa786767e0c1f0b796e6172ed5ed74daa857a55daf9f558758f077817b0403f57ec721a826dc86f432425bfe8dc1fc52e04324148a93a171ef3bbfc421ed8ef3336b49f01ee0d240729b6e871d0f7b08cfe86c08a67f360e17535486bfe4c57ee0e8544cd0ae5ae3b00a92027334e8494a8ba69d47cdbd2f9a817778d1bdf28998844ffb3833f850bff7d94083dca558be06b4521aa86135287d0310191bd2d4e19936195b9c0a6ed134f109e19480122b1a87f28ad8139a652ec581aa3a3e0ee7a53c359ce46df0b848da5f88a298033b459aefd308236dcab24faf23bca841e2963dc374eb6258498263969db0c261f3c39dc542a4b8ed8175bcc281cce567e189240882601a8812fa3bfd59eb25cdbef0a6e7b59679160d0644632f7b3c5d6e23c2658146c0d6cef10ff88e5ca8d35da5618b0faee02c163f80a5f9c8280a23e32ee3d251b6ccd19a58b5c07f345d117c58dbaacf2323656c8542857bf39f9876bf74e7b6e3d7d2638a670d8a328bc8cf2007c4a1a98b982ef99067744dfcba0a94e20845135555261f054d204f47bfd4e0498d121dab04e5872e8945f825e6028e9e256c922b78175abd18c4a7fc24298911c1a091b7bfa5829e9c726bbcb041766c1942667aad68c5a58fe4bbf0647f0270ad1d973ef7f68df6e89179d4f9342c4e892f85b12c0e6a061525d3624c030f4683c14bddb253c48c5092d3662e4a5eff5d9d3553e98c5bc87a88ba9d2b1e79431fd2e0bd11e0d4c36a0f101cd95ccfa137036c6b0e94ccaeb78291b8e00d5e0d9a181dd43f646fdf2fee190378fbaf738a93d9973bbc171eb17dccfc4ea1ce41a3766d1ddf6716284b5c53d969952ee9c07534583bdf9299e961dc84466848fe13b6f6f56386b1a888188ebe1c0f9db38f877dfed55951c9d69312588ef3e1bcc2297dace1d023990ec1a901fcbd68c11f94648b2fd4446e9f58346c76cdf89edbbb7188be17e4ae45e5dc6a18870f20d68b29adf036b49c7dc5a5bb406ae5ef4ecd8f69172532fcf48607c5f0a687373fc16d66a7421ba087d76c0f252b65ac564939233761ce83f331b8e33e5a697dba7252b082141765f464ccf844ac3dfd592c68f23f4b07b1979b2ef0863b45eac21c6d60f43e2a0a0da2150705e550adeb537e229ee9f724d5c61c590c743ed16419abebef21e5f0d9f7b18a56fd457acefb224866bb2c7a219f8b5515d8ae5939d6e3bf7b61d58273fef2fd6cd6fd0cc762a4fed23cfa2d5671aa65112ed4f5bd5a9a0bc92ee0a2ed389db7801078d0f7cc7e89d29e051ddbfc0d0b6496b35e7c31bc4d7e797ec3eaf2677550926999e5d1badca4b5706830613fcf998a9c7d634f65263bff7aab9d3dbb46e4c3c47ccfbd34ccd8bd6271ae27ad28037674b8562741c921832e485feac7f6677d752989f793a466e090c17f3d1f2176d70aa1198b9b96698f75b7f75802d3365a91e42364c363be92345f6df35a0a5eb8fe60e23b64ad3e68ae5351d6db1c97328c727aa56b63e7ac069f5fe2ca86e2a4fa9feeaa2e01fd1dc8728d6c4a86bd8c8a38b714f599516a0c37d81de1871d1bd8b209f7578e22f038337b1e10b2df0dfa0b65569f613f41786cfb54bbae23732907aae944da03cbe81720fa1b3358e920bbf183e983743b11dc67b3a31003db5db05c29e04af34df961cb9675d52e11a9c386442f2abde18bc5927cb971c3d5d3e7d655e4761f036e7ff1ac3a56a91bb833398587b5ed69896d5a35d4846bd674e19c1bdccbf3e9c044f390545c7a0f76b148fe12e38f32b1603462005ac046420cfac1a08fbf2da1ebec315eba30287cc59c58f7d87b61c214d78212ae69f11db27c12484ccc5d64bd424e58486c2e5a58c4f077464d48442c05a6b68c06f9069dd565ee144f523f1bd7e3cebe36ab9918a491aa1d2a055bc92c4d54cfe1ad5a4f822ba59f0e35e481554b61d5a6763f55d0f19879a1294e6d4d4645e0ce21bc2746f7ebb621cf18081fcbaccf9db703d44fad2adb17907ac91e8a850c9a84ecc5ffa078214bab5ca4153d8b0e17d8f86f34e5333ec4fc10f598ea1fa4a67cbc2d4def848899ffa6460243ba0b83f74f8d2dea6c6881e76fdc85e312b33e3077a764462574a3ff46b130e246b4d290021a821a0190a9321138f3ae6333347e4d83a3d63d48d8eefbc27b5d0b0bf070d21a050c70012946453da62b954b81712ec89cba247e29b1987557ab847567c7dd4dab6c4eb3ed146aacef0ddad85bd56a8b0d1bbbe9b1162f44e4ff7294d8082ce6eb2a6cfa6a4910743af2b47a8214f1dcb2136c5c5a6d5e46bf95684a368b628360a58f8c42f02a36b675b7c25d53a3a73ef7c79f755221529e98fdda4e0dc0cd770f57a8ce7c00d427b190a2301c052bbddf9248fdc297cf804a6e6fdb731d773f20ad56300590094edfc6735c4d427d9c52f73c02b42afce9abbeb8f2be98b48c0275d7d94263b81187d6ee122be53de9f1b16d3ba0beb2d4933b56c8be7f758a2e8633792b1434535365543858f0f8841fc3cae80f0716d233ebf0fcc4983099c33bd0ed05d2cf69032aabb3431d9869a98a7731d3fd78648845b2942c7f57d18b3ebed8b9e0669df881f990dbb0b441166dd3443cebb1cedc515c22de8b5c8459a7fc877645dc45dd02801cbf412c687b076faee2cef06ef910001ffb003f99802455ac25c5c94706d35c82de1a31bf98a9cd8f3267b84c3bd433e1ea396e321d9ffd6474961b8eb46271ba6b205be059e51f7219858ad62de9182d68dd1bae2805a2b9cf539a6fe232c48f88a758e2e8c87fe4ed1d5a4d6921f35daf713ddf86f511bd315929af45d4a9087755b1ac31776c25d4819ee95f4308bddeb3aa938550763c01ade0e542536063f60145fdf1840ee2015ddb70739a0c761e51fd791d97aae449ca301d0248b28ac9ebd51227109219ea34042778a1169c8717cdc52c26130ea0d392dda31c4ccc3bc00794f60ab4940c9776e054f9fdcb9218a720ff6acbeec5f67aebdc10f7a3d7993863724a480ccf1d77aa604104389967eb07b289df1dfd481567c1e1fcdd34202ac7758e78f411fe007a3a4079b8cc33f785c0e664e27897a54c350db9e1e22fed1e185f1ed41fac828ae6761550aae362c25f3c2635eabdc195fe380609b86865a3a065503aeb4f9dc5f4d05bdc3cb753c0765e59b0be27d45ffb567a382f6d4cf958447102e60522c4d33557b484cad2aa0784b7d4c0ccbfdeb8d72ab23956afac26b1dfe6b6383b7196dacfc555e88cefb55838ad0db0654366f289af8eafc06cb4e9703ed49c8f51ce115e99276ac64fc99672fdfac8c658f5c62403f7a2e7fc2be172fd06479d1a09ca45403babe1f773170eb9ddc5d999afe159f369333f6ae290e33ab9621d8152c11b0f4ef80de9832b5c07b50a09f18fa25977671ac0b7326eb07c1b07684ca4f65d60ef19bd2e0832688e8b0186e090f0a9fbfde7682a9418a76baf924ff3fa78b3c70efd79b80b24a12b7e3b7cd4fa80ee7c5b11f4a044f2629f295a62b34a79468320ec4704c3d7bdcc136c0445da5c7cf054bea5c95b7c5da942b95d6aad170becea5920e93e701490a81e3d5c375d2c399a098f6026facf2dab94883855c0696555af4f4237036e7486a8877b291461a29e6fa6cd475e3ace97199f997c669d98efd22726d6ed813cf618af8b80624528c2c4e662f9271e1e3d64344a7b362bbc90c91b0dcf4d8dec9781855e752c3505b797d36a2315bd75f75cdace1c812f1edff02a66e86ebc0aa0ac39d24db4cf5e768ae78a9dfff8d6cce00aef47e82bc931007b8805335136537304ffa8324ed0915c4f416292530392607b1966fbafdafc2e61d935dbd9debce2a1eeb835f72531a566327c4b6abc8c583427bbd778f4801b010fc6d7643ab67c66b27b880c37a038687903a9972657adea856e9bbcfc55be83b38702b93516cf8c85d3df72bf6578a96232fd1131d11ff1640498a5e6ecc152898df4b9e2948fcbbfed6a923a4f6865e87fa153a76604fc4ac8363cc3751bdfe0c83b0f6e1fad463db4e4fee9ff7945ef5299f17dc77d105309312cad6f8ac339f9cae1c5c8a94d282fe6d936da7501d0adca56fffe7304bed9c90cb7eaf2060b0c8dc5a8fbd2cb28aa4a2db39fb379c0b620a6bb95b0d0cb5bd6ddacae5f13eba73811d57814607720cbc5cbf4dff64991417f30b5cac63af953c16f48e168b2e697a903fad674efcdef82ec4e58f81880c7b8b818b99e8665bacc55f01585a9ea9a72f332717d39069b462fa099b5156a611855d88d08ff5b63316836f2c9dc6d10e45859d5a669fd875b1f5489b7cfd562c6d3cb793c3ff6ff729ac2f234cf803af8d5961479a873da313987881b84a282d07757911be3e024f3ff6fa552d68e90dc254ed12645af31337c281c83e349d4243710592ce10c34b9f4d676db40f5d060cdd5a194cb9f05a93d7d9e35c0483a642c5fbe7ba282399ecf4711786f91106fe47830b91d92025679cb2ec1c7edd026a214ceed1b42f7fe16a0027ac809ebc6b14604cd720ec36cd558ce74ab8aff341e9efa5107a68e4fda87071611277e399bbff7b4088ce6386af20bc8fa405d2d4905b391a825afd3e8136813a538298c1669a928f580dfedf41b208ce48af259cbcb1a3fe95276f7a4cfe3956962f1437d1d3397031ed4218601ba25acc5a7a4914552853b13be022c76561c571918230b4903e488ed0ca6f08cc4170593cc0fc96f6bf7d0faa979015656c90b725bb62e29339fdb6b17a3d35e0e534ddb4b33fc36012a867797ac2fc3f0caac0e6a2af4e20034caf71a07559d612ab87c3b324d25eb0112c028bccaf2774f18433fad0df3be7e1679b245b5f15165e47e514a3fe63cf9bebec8e61ca2a2c347393438ca6c78e6691d3398274b555a59009b5bd47570cef49f7f51eabe5856f4c04c408a22693f5369c19a8a47e4a2e75c65ad3ac555a9917b11523fdd9ae3b20baf2549533e6ade5c1303a201ca1286db5bd7765bf21ff937f83bb2c8ff7ebf8673363afa46bb256b02fa548c33ef95b0b9e94e10181cee809c048f7459bcac3f6a126d0c57bf8309101bac4cc51e9cd1a5a335ec50ae16b995102be1cdb3dcb23243feda7c5cecf6abe67e5c5b1eabf34a5c9626ab9bcad9a4d08ca7f6442fc3486e0b4e7eda8ad2198881aae9b48f5abb9e374a6515d8e03e135b6ca74dce1c764551a6c04156c6427e15ca32b42f8f224d0335f7de2703d630a630eb6db736ba4007a1c5600aba9329d276073b0698c11b5e02fdf259d6ff4c67fc6857c0e68260690ba2e88ca68473210b9bf7bbb3f57d3ec9979cac9a5844264fe55ba449deff47713b110921bc5e6103db5653ff0bf218c2c5063a470451bfdfb71a5da91fc65e184d48a389ac807878e9c15198478e129b883a3f08a9ed105cb8f473074635d10c5d196fa6316282fa465d4f41b71befc743557a02d0aa0d5005914d738f761478fcb8ba517f68a47b821847a2ca712193a0ccf22728179cbc1ca64f08e335f864297f3ca634a0133d54fb8c2d49af41267ee7f1141d2b0cea6849d177c8557909e73bddaa2536b957faf4462ca39cb3733930ad2b97ce5ea45eaef3ff28782005976752d2251c57fb4749cb150feb04a83f18acf0c94353f7aee251f5e67526014142e6ab99d1ed65f8a843e7b0ee20a50b458af08314cf3b90f922fa84f8650b9e1943ca276a9343ad77ecc6c3f372fe1ee2d081f6e95feb7c87b489ba2674dc6593553328d0cc437ddd10928d72678cd0ed72e32a749d3ab04a21e986aec5f281750efe13dcf8d415e3b3a743469ac7225499e49df626978c3d6a028eb2f016c87d93819fc00d9e519d9f1a1dd5ea48dbd871535511e30c86c6dd054a09c56475e4bfd6fabe8887b8cecddfdca0a3e267933bd4d6e957a831e22de7ab1bdd61f56696836527b93e59351693c57b88860e170c94102ef3254b3e91a9f5b0c29a4b80baea0d0f75e7dc04e27ea02a03c486828353f2010d088007a4f499ced730d20e6a5fc20790d55de4b838a7c6b6d5a3365ff51b76e2ba2de3f318ab1f925d51b7d3204e14cef15098a76de4a767cb475100de65d42eb438b09b02235c4f0852456a6ab7fc5d8b5fba1eec94f9393b18e062a73886bdcf2fc2cda2dced4e2e7d56acb48c2d7512210d25c4c9ef5a3f8b54c9feed754b31770dd80a76d26adbdf93ae1cda2312bf09f668c862c7f612b91c869d963a15a2694623717e698bc2878eba9ad6d57376702e3b6c69cb67f2d4d2d11551a425888d223fd7cf86ab30d93f190f4da08ec1d886674abc78792979b269ea3a2ba1841e3b1eec441c8003fa708c5c60c0bad94c3a816bba9f64615e59a26fa725b26b49c07dca6549ab5a97079d6331248fa574ac0ad3bd5d769fc8b978a331b565788863d795212b796def5a3ceeac5ab7f336ac946e65c14a69c51f33e16508890a0f3456714356c89ab9538d317b1763bb663727b3add2527851a554a6bea14a55ed9e337f014174a52ebae8a80c51c71d3cdee9b3aa230b2b4bd20a39df7fcdaf85d7d51c782ad55ed5a5467d6eb75e00606505bfbe1d25d2d078964c26391ea3ff7f410d2331f96c2c02830f2751dcd498308c0e92ba3eb3888a37b191720cc1329068c3f9b758ac985099a1fdedce534a7ac2e57e352e8accda0c22b65c8e793e24aec6eadbb24cfa922b31c6b08035bfc1d470aa269cd772a2894ae8d71c2427a6df36d4d104951c580d0cd68c53e1e9cce12629290f906d7203a26ecc42bb99eb33ec86c291564404c5ac4f81f4c12ede69fa8c24d1eca3709f7c9df94f1014e59970c367b7e24e757dd176429f29e2769df3181193a0a27dfe6c11bb2fe1f99b77962af0bcf78708bbff6932ebf57d51dc7bddb0b6fbd25f62de26729ce31a2c0e21ec2c16adfa71b03451d3b6fbccb720ad807118d1185b514e1a89b1810b74c2cbc7235f5e8ee68c25d69da78e569d781ba63cc9cd244b91d8f1c38f1a6e451a1eecde7e8fe25bd45db212c3d69408da96ade04e96c54973fc3095ee0a7cd6e9eeee6a2383f2b3d537c582d3dd974fd037255c087f3a07cb2bae29aea84b00519f2923dcefff8fc8d6b32e90e37af58b35ceeb75540c86236473961e821617ea05826877c5179c34753ac8396988f2689c0d94a1ada964731db25f27d0c4477d1f54ed32498ed6821d1b38c0e5192bb1e5989d4cb903802cc21ae3ddfa4f141e549bb7ea54f31b3e5b04e6c42952d9f3fced83911fb0a4a04e1d474965a3530f779e48b88f80b1f6e00718d6121d7f516ffce5771d4607ec1fe671290008f1525a82079e891657a8a82c62405fc55c195c8e4512c1f9abae0b7b0882d822b7e1b909a786e5826283b54d84c57348a9586ab5ab6e91b1b3f2b7ddc272674733686b1d87c8a04dcb53e24980ca039f8f4c48da95266b546c81712bf7e8ce9f9404a378cbd2f8e63576d09112f8df8d92fd4a263961b7883e3e4f6218e55d8f58ff10ae32e6f912b8bf739792df1b449e0a5f73ad0239943739886f1865c5e172ec6a9021e99ab4e1c7ab98d9a472f2dea719ca327869a45fe44af98ef8c8a8fc0a33fc31513db3fbea83687aa3ad207e5ee57b8f1a5efac902a6781fd290fdf3915333c2e6cb7615e60ae8a6c225d929968844644468059a7095cf82fe1c868d9896b5c20bcd75cd3b0fea086f3dc1cf5163c56372b639ad206053a167999f5b7552b76aca39a24d345ec796303da4f4671733f46db278004c08eb0d3c5bd298bc3ca4ff8c09b02cc7a9ac4ab60987d6ce578b2b8a668554527ae9e92ff8e832c15a05b5c7e74d138fa510209d50ab139f7bb986a7b96c55fb9d6a5f8723ab3ed12108ac178b110101bd474fd21328480f8e07f19dd7f8ce36c5273c1707c8aeb7a371849fccf4a3fe18127a5afd606a17d986a74a48e22a4d59f9b742c75e2211caead8f051a4a420bdcad9ab9b7347e5417736356badc553d7ccc7eed898550d5420a93a3068479d518aa6694f49fcb92a593c372c9d952e492edb49cf06052e2f68441e7c6fed488ea3127ca08a1f8631f5b4d7e70b53fbc0e3fe98fb10ac865ca31cc8e63eeaff64ebddb384123fc080861fb510d87957910dfe55bfc9b5554d308fcfbe72ef896437b9e67736ecfc03b9ee1c51a9f87711106a100934e6e4e383517b95d5a6ff36a5756627ccc3dc05d6436acf74a335869f634765051278bc2ec32f71d5514c5c3bdc1c245035d570b635d8fbb51aa56c7bd38a3bdd8419e070de766fe0c9bb2fc0105f8afca572ddc700802e3ec94c067ec5f68e2538b3ac9751c61b82f023ce56540b39c206900b1f0cfd69c5709ed63fdb66f83d6f5485a3698800449349a984be53e6b83b3ed13210648a6554620d1e30067e3f08fe3ce29352a4e1ebcee321b6cd0c5523c5cd741a8430111893e8a1a2d13f9a5c80e9f4d3c02953d0b1380e43f8d3076dfdb0ca33bec9c5773b56d7cef3bb80571ee3cad7148d03615359380a079431a93d524313fc92deeab32daf047f7cb80b74b5062536dbfd820c861149037a4b9a7795d8ee05ebf6134360cf659abc52de8c42783c83401f44f75aeaa44ce2a3273f0d86a542c6ecb01b2f97b23f87bfe7e0fdb7ca70976c47a93bd1d4d59ffbf26d65756cb3752ba4d4b12712e6f7d335fce446ba21d8b49022344663c1023801deac682b8cc759157c29546c9af4b0229d7bdc137e2735d3d49916f3ff8b3a437a2f8690f45b42e045bf060285706f01da2f2290b38380ec485376ce7be2a2134984e51b37e047d3f793abcfc5b5c686db42489510bd34f46550a2773cc64b78dcfad10c12f9bd44828b45882a7fdfe030a4318e2777316809cf7f1db9aed2f466af87f6be5807b59215eae1a911253434fe0187613a4ea46ba6c23a5bf451ba7012e0d578dd457849017c4e824e133b5cccb77806e9c572e1f387721e49010b95e8cabb399b1c1c7bca7770f528f13ba12d34347fb078daabbe2f8f3d7b93c97debb22a0b390f08a6decabdaa941152b557b831c0869347720de316421042b29347b134f7436693ad27ddd4f6a5b030605ab6d5e539fe166d981b3d632514f8024cbe59f4c733711f2cc3ab88d20bf2b0f7fd9eee412f688c60c57ca7e7f22a449574f8a826ea9ae46b983dfbb41f1e94923bce580deb54577238159d0f925b483eece2b811b85fd1fdd159cf4e33187ac2ab4458aa7693564d7e91f1901999d8c226c4b07ed8457788242604f398c97299b20419d2c46c6b33dc629bffc29ced0cbf8123ea54b5bf89b4ef397ac2f8b8f71028a43a2ad9aecd4d7f9e813426b35896d02954ff38072ade4ee8189038a4c076311678a808a1b5caf58975ee339d5c1df91711f768c4a7b9bcf88e554adeaed09aa313d16429c5a867761ec3e683b7b3a61ac5ac56df68e7a3140f2eec5873bf14b10c882493cedd6e5af670802ee32181ba1493bb00350cdefe9a71673a3bc8372ae448aedc9583bafa5bfa07a0a0f76ced06bbf37fb0426b146df3ada592f7e207935fdf230d056dbbe08b5fdfb085959410c90fd876ca6af6e1c50515b610c196c403250a6f5d58398432edc3eca0c788a54be1a8d29199a0d6665b766ecacbe90e7710f436381d539f056feae79946255652191bff1d0aca58b0a60ba41233f6cfad375c0d56ce5ec8ec950b276a6286d9914b201c04c14e942ca067ec0321b8e4a1dcb14ce18df3ccd44e41fae9adaeef9911995871c3053b4acdb924e0966c9cfe8b0e020b514ea9f6d2866cce57c241b1879a201a67cdd3b39f4a557d60d19bd4974d84470727545958c82f22105c6608ebb0dbf384124de451694dfac8cdc33c47086f900c750fbffac6b1d3435fa482c1b8b1836cec330e585cedc52d5597f7dc277ead60a133a5d60dc9942f71c1b929a23ab4dce145f7a0701712656df8c86f17a9ba01e1d69ac48bf659afc1ac700a601848c6a4581faca7194c3e1b6e80249cc6345e866776cd86ad64291af8133a2479fe62c89b88dac331424953e7422cd451b47877db9a88f8aaca3e7a0d330b99ba1d28c316472f78f737584fe390b8bdb54b7d3c2a2012d5928e0ed27c7d9607f4df596294f2494574185763a077d4d3e63eeedd6dacb9144a46b6c90f1cfea375549608df1b4e4d6039e6514d7739803f0c3d861c8355afb298e5d21472a19626701badf5f4d6923b7a3f7593cc8d26876e994c6b55f65da95eb0dcd5775feb70f7142038feb70ba1271e728bfd57a7c30da19f4d2387e3d1671ee2d435dd829c2863bdd24050317453a960b1e4faa26371af1731c3422921d1a1c2b196c42868f18234d0a736b2860fb0404d61601060e2e5b87125de3266315692ae90f5e287627aa9c48e6ec7f4cf62a342fc498ac64cb8101a41c6d966feac5ed090b6660a1f4fb948690c23d3720ea2782ab0e2d0d6a8058bbed2046dc514938e59b2e9a2e89a8e9ded0fec15741c945998df9ce2c402ae24a5743a5ca17cb4911f7f21fa7b91bc195a50d455095e377297fbd5c60f7c7117b77cda2d4e9e8edf62b0673b5232de34e54bd01d9323bfa796c148115821d92e83cbac4aa09f9df304cb9752216be086c2f812d5d8ecac82b4fe8bb891d0cccea7d4671a12828ac43f16d5d8d74fe3b75949b95bf628c40f232af48068f2b1dc67916ab001da728903f1d4f9a98aad864a1ee064d2eb02f532b6be81648be04420a1098458c28e0d914b5760cca9f088104ce1e7a16e09e8d870bf8450073d1c6fe1a9e2961445675391ff5f3218a613e9c1526c8d059170ba193b3452823c34296276e51d559c725334f544b8a296def2783c31e8c4da8b839723b5d3268127881e289c9299b77d23543ac23d212397ca001ad59e8de15549a1d7c9946bfd8f8be3cf8bc1a433667b4cea7843355be0cafe2f0449d317fe74b2d56f7246bf4199e95128a2d10a68b05e43952265eb2d85b04fa7916dbe0d432acf0cf79f7f0427235f297cf44ccaa8f63012ea3ac946f2c1cbc1f44f4151168e3f5cb9c8548c78affebf87a05e10cdf410ec6b88db515a0088a8e8c9529ca132963d41b72b4a721302722999781ac9b654c24debc6aad264dab5f42058f13441b8aee2b777e2770fd2d66b46e6a541e16eb702db25b4618cd746af7cf9da5cb37da2afa8f6958730d5c5d02071897a0f126356af0f151513a1f05029476d40c63bf653ec9eecbb3d9f100cc65ac25c3c3a128117a73905bf3d1adbac409b32bb233231bd75894e225f502a72edca1ca96a205eced452b7b2a0cd3bc070a1d0d3afdf6ee8363e16c4ce9abe8fad4b8dd90b05ea88781f6d6ffe73122947c223a8240db4c5518409512e72238b2a63485ac7334c8d09e1b07b0b3563b646f5cd6cede07a127efd2d14fc6161bc40bc24aaff3cbf782e93f03c9c7856c9cf65b04d253b3b897c385ff39c6f374e0b6f907d8dbaa3a002a4c8ec7e6ae8147b6c70d98596581a698b9ace911df2dce0f2df2581af0e21086311a73c8052409cddc76e44572570db4f52219fa94ace5e7528b528f4bf9a2a8a1bc5ed26186b5da12b22f0fa490dab9eb392434267dd4e5624e73a8230f44fe380bef33027b6daa29a580cc5d77f66da42add443d1273e292353c27648e3d82ac13afeac1ba8c855d9fc91b8aea2091a8d3105f725d87f4ade43656e6f03cbfed2b35366f4e9827609a413bd97422da707ff7260041ee003089128be1cd8756863676175ad4297c9493680ead02f17c7690f87afe2f408456e48c3660b5f94559a03e6707522624b000175d60a0f5041b54858f01e3ec54fccf3c954d37b5a4b71c43339faee288011e1f13ef7316d7387b12bceb39277f7524799a46daf2cf0ba98bab78bc1d3697e2ce4e68d6bd12f0931b87ad2e4e5359ac1d411ce198c9b4dc17cd4f0f72b613008f2e7d884c4870f06e51d0e9016b91a0bb6cd25a32ae0484dea0c47c7781cc2552428b4c9380489dc1376e303eb93fe69a71659abc8943035bf3ecdd6c7c9300e39b8677bd14c3084ea0db37f332782added5ac79f739f43c791d54e0e4bfed64394a3fe6c79d295007ebbb5adbed90c65f37e45ef7550bef8ef98a43ba4ee5d6d926f6351181c8e5150848239b8306b371e6269c5b53a2d59cd38f954ee7f0e79bceb602d8504965897e871eb9924dbffa7a6a336714941e974193aa69b4c27096d399b642bc4c90a56b82a51cc741162b99c37a88ef097428389f8e32bd9b32071b70ac32e18e3af65734afa5d7aeead7920d5abbab69efe26708c066ea18d13cc4b5fef30a2a6ac55a088551a0aecdb720749ca6a482af4cb1c3c8e42ac17d018e80d9233295d0221947c44c0075ad0c7d7cfedf16b4221d829adbaf621b656116548bea465b5e1cb7bd91afc9f1bd6fde1114d2f5d64d82e19dc3648fa9301a15bcbe90fed30f9ef632283fa98b9eaf0f7326046c9d826db95f0a2eab2e954a6e97090c7a4a363f4251c7d8fe7ba7e909c2c6f32d15f8b622ec97ab0aabbabe2476e721afa7d7435e3e40946fbbb74ca03f0210c8a70eea0a81643c363335cfe9e889a0f36817fc876279ab9b5f86ff827184fdc0aa6891a514fa47569095fc8ba3607acc9cf235ebe831ce4283af46fb0af682d67a557f54cfd9cec15c34f1e462b2de62cd2d41b853c628308d0466a7656f25eabeacc301c14148ef15cce1b110e4be6a6ab937c94cf54ed0f9bfa5022b1758b6a4789e50f6a0aecd3de07aca1797e82d985519175d13e5ec1915276f748afb7edcfb0219f4996e6ee5d16f801f32e1152aa15d068c44ac6cc6a262237ddcfaf1dbd435d4eb60aa21d5b290b4bf1523abfea037b6f63c11d3070bf7a185d66af29281dd6f3aadb9b40619d059de84788b601e6eca425fed8502035a47bed7b3f605b6afa8c322ea936e3f58bd3a460461a1d8223ba6b73a7c7f2d534fcd35f32822de06393dafdcd0c629b60a86812a8d0b0180e5c867235cc64ec25d0f17c4e9142a10c1170ebea1c909211f51f8029cfca0a65e770675d48cb7e0f9e5511d8bb1df84c557f47db892674cc65ac9c95c78d43bf199e4d99a6b7471219df1c8e854a16c9624e8ef8e9093deb43c8cdf853b7a97edaa29846cbc0bae7ca65715dacc84095447f50a3b784277f65db755910eef265cbe89732fd1f286968f5f367558e4275d8f5592f4f03efd0545655a1822226210630f22dbcf4e2d7798b8754669de50f78ebe0f8ae695e616cc562414d13852a4d821f61968d427d6f505453443c80d7f39cc7cb0be7af74553376079e1061fddf9cbdc9361e42f6fa0e1792414970d900da2ea8d5cf2b4050141a07d2d1fcf74470354f4428914baac8571258d546ae4e97d5e96fc48cbc588cbc9857cc7c0ac147b94cac0e1b01d9aa0b1a74fa31bbe6cc3ab813dc5e92521f9611a3c89f63eeba2cb9a3399c8385a330f6614c1c928db209bd63441237879d679b9d35afbdad140e8f081ee205e551de26585f0be78fefea324e8d62e7f33a6866bf6b11bbb0e43875c0e58501300e29093847aca819614095a9b6d0a490d5c8996c26e9d78b6ccfbce54f42610f90c8d4a56df523a3d9d42c6bc1cff107b42feb66c69876c204bad522f69aeb947371f1c7d84167b2ce3bf6c871d448ff526be6b07d182c66d8733cde639f27c11237769b5bd7fcc61267d957abbd875a42251ccf4757b93bcd50e21d64469bb46a890b763e72a81a1696cc6f689b04d4d2953c5db51531e152e56c96521a2c0f32ce5d5906a8091fe190005308ee4ef2381de10047bdec963b94bbde6d0661a40667ca664e336b3daa47f210e2c5b3f69ebcd6f304d84b533eef18d1cd1b425e3c5f1ff3cc00014e91ed0464a430b31b329fc4f5f88c960c166d0ff0da6685412fc8706d4fd1141c22bccefbd722e581a3b7fe1053633d770b83519ec0af2cf007cbd0fcf5e2500b301fceab77cdd82b2e87fb787a7ea05c588de829c3e4b9343e6c69516b317fa410e3ba958ed13a0a79708bc2acd044507dddcad3da7e3da1e095dcbb2427d62128138784354063d1b1586fe09cf47beed102cc796ca0cec418be3a3ffa93e99368be7e7624dc42c342f085bc9e787af4cea7f109b0a1ea930877f506e87d972a39090d949cd64026f65054e2a27e2116f6776b9dd38eadce2d6e756534747dede5b440b29145432fae7cebb4cc893d98a33783978e43f1dbbce830c3a5ee5a77b564ee62d99b29b43edc752fa311164c5218a5cf1066ffa63e04aa45e155e50a96a01e7f43892a513437778b3a2e95e67040b9c2b585afbd07970e92d7652aa5b8d92ec04eaf8cbb2ff479cd70f5a537420bcfcc9957d26bacf1b21a6abf0c6057af99afc8717f69127915a43b92edef8f1752dfa39555cd5d6ea499c66d4acb609d8da53fb136332f01ba46f68cdce0609133c3716ced8dcc851f8e13f4771baa945888fedec8be6a491ea70b55294bd01a136a47c768c90ec16a7cd80c59722ac5af23b2d8985337b2c96834693e3b8fef96395017a716d8f600546ea77d9a2b5a7e76e5a0def317ea661ff872852042fcc54bf1839d080b2c2e0a7f09059f548c21ff6dfbd19f30198d1b8f4c4b6129cb07eb545626f0adae602941b4cac6bbd9819171aeedf64fe772b4600d222cfc196e7dfd52fb3c2a3a082591d3b2788f3c7251270ff9cd0a1ef41cb954ded12f8a5ce278c24f901545301950dee67b4a7c12f2449e24d148b137563c5474dff66746f47995da8a6cff90bc99c31ff9336f5dfeb50c5520df57a9620e257f38d874fa03b1c381a5388a742ec565183b5fab6baa78d29600199591d6b0ef0fdcbb810e0677d803e3ee3af9bacec6209bf2fff9f386e51acd4144824ea504c39741f59bcd57dac93be13d34d54084d66daf3126f8a81fa2f081559b025180519f315907a3435ed800949f2f41854dc1a00a2a2af86a946900fea60bdd59509797032d3ce150fdbf857de243f990e5eb5eba115210d6147091315eff816660759219dbdd5c038e68681876973b29702bded17663685f226cc0a099ac7fed8b7f0e5be4fd6527c66bca5bf43eaf0eee3fd148c35d9d45a6d40a99897995b515faaa6bb2b973e462fea8a85b2b566c5c3da07cf946b94c52509c51218fde92d72e02c67f752dcb79ed77790089383dbdbda1ae970d7aa72ffd07f86a827c985d500f2b876d7708fea64b76d8a4d1554976582e65244b657b95d03976fa734d155c70d1e94f122fd07fbf9f4d57ea8bef0c68bad19cf83400f980180eb6f6293b21f99c6cdb1ef004bad0b2ef4e1b6350859d0f6ba8f02f2f780cf98efc875ab06aada47dfff0ecf92df74abc6947a1a712b1bc589e09aec3e351b341115b31bef8ed80d0eac02e2297a87da777939611cb40c2b4d847e1ad6942ec0d7903c1cde01cdc855c3291b5c5b303c58e604d88ca4928b3f46cab5212738643ddaea41f4d36eb6d5f4fd0408cd2b294df2f8210a10d8ad4bd2906a9a0feca86c980def56183ff5a61a0245f0bdb5b2b76e64e818572d04f701d03121be00ab115f5339b8667fa9c69c6bd0d87d65effe17b33067133b6760a84eb88ad98f5acf938b5bd94f2284897cf1b8e98355917a13cfe5bf0cd47abc1946085b6f34a7e8cf65539cde7a24dc2331abf0b02b64c5e37a34b58295a1cee7613225155b6f64dc24f0f883c3391d93b40f8ed3f6cbb2f022c098561ae058ca3f1e47aefd5971586bcb3aba25d153275e3bf1a1d88e1a21439d6b73a1843d1977861a7055a4537ed20013b61186b61cdfe734eaf4d6695268426239ff3cd2ad9bf78a2b0e218e6dc47bcea3eb7bfb8229f7fe83a0e4a306e1a0667103e359e6c4681182ea1a61f8d13facb259d31bcec616b77ab2335dd172b89456ffca97d44afeaff98aa34effa0cfb33d29edd85f4d56e372be8c8c3e47de68e419104f59640a1794688df231898c369839334061c202f594ff8ab087957e6243d07b6da1bca5fd4307bc07668e5088d65c3a40d9366b49d2f89c0af8da1acb11e98fda5fea0f1b3f51edf881782dde81cf8a80e4d555d01e599e805db4fcc898a5000e538a800921c3c672a759bd959ab81a4a7dfe42a65800355d6b73afb490a0dbf681580b0d5a100c2fce6964c80e3c6c9d2a41e6f90d5d570a69727e60fb093b53f7a0a310c99687bea0984b9004d37aec0d1769092a069082366a52e59c9bbd5098d761ec4072aa10c3d992d4179891803923f7b424cd2368dd6c94b5df9aa2cbc2dc39b07b95ebbdb5055062138d2faaa21d0ff8add8146acdaf8b44f44d9f1251028858f707efe17031368008d06cb8dbb092a9adb7bfe596337e2292325933d15ec65e6532c3812a69c01aa49187bfbd5c6da943cf682be6324e2e308b0483e7d3e166a4a97f92a37c29bda51cee0d629c4701ab8104cabbef7c8d6427f51298e8c74efa527f9bdc091f137cf229ff330e152c7b95eea876460c5448160056dfe732670b1493582181aadcc3654ecce8821ab2a2445561f9adff2c7e4be707da3c5247a08c0fd40f4b979e836ad3eab945765fadffd7ee779006c8f03e22e2df9f412dc2c2a4663605deeaaefc285283cf94ee833280050e98f1cc521758ccee9f20858180f494580b788db0a33808e0c7799c8056dc2bf959771a390b4b63fdae17da82a0175d04bbd88cc2f138cda85dd64193a75ce2c82b8a399e11f29766c538cd7af361f5ad8b0c9295f4226c34709750efb6d5ab2110864afc04ed7505596523c889a732648430471529946dd240df6c939633afbafb14589ea9950e842e4835066302c99f49e42048466fee09808ffd8d85e5f00d3f6c3f68603b5a1f62d190e66941a32e6055b77652247fe47cee909099ba2a104948c30ab03c5b0c3e18af3c73e235e9b15e40f2bfa865b61ef99cf93f7d894a8a4b7a23241e58be7862f1a64eea825302d3d6f7ee879bf43f3fe3f89d90d1a18f73e234ee958303c1ff6f4f57cb0fa53a8c190f721832a3e4dbb677785b61a6c25d6283684baaa67a3653e273406d3cf42ee3cc8763f520d5eeb3935dd810053bf189d42884b9b8bba4e234aa498b2f4cdaa94db8cc6c04f50cb350e688a8dd608526e06f14c7c145ebb1e85790668a72241eb02ec68d52c352dc2aca9048724368131bc5f4b1c0d6d6ce4c30ac07cffa960b6f048f1d24caf5e5e534b65ec0891740d14df17b0de79a80788a796c33f8a8a13423a362ba2f42468eb6df8ad69c3c7ca49ac0549e23f2c9804750a02d2315255a6d31692592358b94ba38817ccdca39b4635558155103002dbfa30f727a6c69c0d5117d6ca3886bad75a6cd37aaf07b5d163acba10240d1527914ff8a9bf05b321da3c08419eb7d4a3d9bf76f4d8b9e25db9315f05849ff3aeae7ae7b3e38fe40a9db2b68b18c3a7fd09243045e1f90a2bcc00e10b21b98e65c51172893f44f10b1620001b9e13d5f96ac60a2d591b548dce83e38882b2a0744beae452ec07f15a36c55be4862f830b0c88a77947dea49e0abe11ab07de8499cfe6ce63c4cbcc67f9452cf7976e22456bf0ee9f5e2e6a217498182edb83c67b17a0f06720865fdd837e52c6a6f9fe7f0401a1a56ea1b67f087f20c59b3d2f6b135161478fe907206c62109fe2f056eac2cf7bd6ade56b98c2b74c442710969c12dfef8c51366564f5736d6e41a5726fbd17cd0185a016fe47684dc740f6da757b21815c43d9a557d1cb673e869093f74baef0d4024400e002d08f2632c51380f8837e30daa9967e3b925eb7b7a001ce83334c972e685d3cda036da97c8def18f9f40873db1e124c2699a1d8fca5aee5021085d8d57d3e22b43a274c56bceb709d8cf838dd8e4e532d740fa216f19d3284cf0307ca0bd2dfec734d12c8fee84d997e55fe5481e5adf23bd68a9dabfd90b4b3b03ab96523378a15d54ab52035a9aa9b7fc6a30ca912ec0898f429aeb0bebcbdfda5b8d8700cef23d517705a077efe20dda7b3b0fd959ea2bad674fdaee74c772749b0c66f72ec42fdb658731355a56ad364281760b66195b817124a3a47e9bfde161a006996b7bb6f7892e29914fcf8b93d5a6615e205bd10c7ca231efb99d27f4689ecf059e5ccf6ab6f89c8d74cf2cbfd672758d195de311a7ea4ef350746299bca1585ce88f301456828f5182f2af116cc98eae608812891539563f4513a244b96a0398db895e670a3cd5932b6f1140358e024d4a336aff5109ba2b559b0c6c01118bac14ee268ffd8ffe83cfde6cfacf62611699e8a932aa4f0c97de41ae07ec9c9aedd2529c18b5179c6864a074fe8a241e858f78deacb996767e77077fed492433ddc4d01346d68596392b9e02c6c764fc8c02309287fc9d3ce7262eb26db46a313a47872692f16a0a095a040bc30d497737ab8c29f09494aff97b4484b72af4a07db0799209d9a6cb53a24840e17aad10b1353c07ff207227828911d0c0bddf5538f9bf02bbe02087faff73e68978ebb79e7f0d65ed067f73f2d38bea57a35af121d7bbe8e260badcedbfde539f26e6b9b9ba021a0b8f6401be20323096d3d0dcb1208e191fdc65106fad4f1c76d1a6b609bf2af0183cd260423d9411a512deec85f954e5de6e112456552462df2620f7377badccc5caf5a64426f8c3d92642b0ab3a9fe2cb187460a6e2aa6a31ddfe8a79ce3276f075ce64ebde087592f1d73804773b6b7d030970afd3b320f939cbbe9db89a1f31ed06d52f812865ce9ac8229ae60ebc7f48e668ac0fd52a9c87ec2ae6794faa709dfa9b71023f6758637b96d89b770150c8808ce024821f3eae41486d13090729e295d5e72c7eea0c431dbbf3e4e7d709bf426ae4172d6cfa64b61f5dcefc9f389d444608c80a1b5d2c4058abc3d20c80d0ec3f710f7f716f9c3e9228de51cec4edfd2d2eb4bafe82d39203acdda70e84a5b7d62b72ecd381c74fe905a528d0b84206b89002d8dd40fa1044c91c252c0de21e34275324fc047be2ec05f08297ba021297594523247ca84c359fa7bac196314faacabc759bbea880dac51a6231c38e27d609aed96577ab83da57e4426798e8e7c90ca122cb7cf1063675c8b1c422d0b7f58347fae5976c03bc9fa1fa963461261c2df0f47d9430f25818e368af992840c7429f6c38de7ccce8b6f415b5fbda7938f472e5b90b2b997544516159423cc1043c129c948887ccc7a8d70eebba5344f1458b0fc0dfrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrubygem-passenger-6.0.17-bp155.1.5.src.rpmruby2.5-rubygem-passenger-docruby2.5-rubygem-passenger-doc(ppc-64)    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rubygem(ruby:2.5.0:passenger)3.0.4-14.6.0-14.0-15.2-16.0.174.14.3c@cD @bbja@aqV@`"@`@`~@__@_0@_^]\zp@\Stephan Kulow Hendrik Vogelsang Stephan Kulow Manuel Schnitzer Manuel Schnitzer Steve Kowalik Manuel Schnitzer Manuel Schnitzer Manuel Schnitzer pgajdos@suse.comManuel Schnitzer Manuel Schnitzer Manuel Schnitzer Stephan Kulow mschnitzer@suse.commschnitzer@suse.commschnitzer@suse.commschnitzer@suse.commschnitzer@suse.commschnitzer@suse.commschnitzer@suse.commschnitzer@suse.commschnitzer@suse.commschnitzer@suse.commschnitzer@suse.commschnitzer@suse.commschnitzer@suse.comadrian@suse.decoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.comct@kki.orgct@kki.orgolaf@aepfle.demrueckert@suse.decoolo@suse.comcoolo@suse.comcoolo@suse.comcoolo@suse.commrueckert@suse.demrueckert@suse.decoolo@suse.commrueckert@suse.demrueckert@suse.demrueckert@suse.decoolo@suse.comcoolo@suse.comcoolo@suse.commrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.deasn@cryptomilk.orgmrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.decoolo@suse.comcoolo@suse.comadrian@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.de- updated to version 6.0.17 see installed CHANGELOGupdated to version 6.0.15 see installed CHANGELOG- updated to version 6.0.14 see installed CHANGELOG- updated to version 6.0.13 see installed CHANGELOG- updated to version 6.0.12 * [Debian] Fix compilation on 32 bit arm. Contributed by Antonio Terceiro. * [Debian] Add Bullseye Debian packages. * Add formatted error messages to responses. Contributed by Mohammad Aboelnour. * Fixes for running under WSL 1. Contributed by Luke Pearce. Closes GH-2036. * Upgrades Boost to 1.77. To go along with 32 bit arm fix. * [MacOS] Fixes autodetection of openssl lib on apple silicon. Contributed by Taketo Takashima. Closes GH-2389. * Reconnect to mongoid databases after fork, like we do for ActiveRecord. Contributed by Mohammad Aboelnour. * [Ubuntu] add missing apache name in instance registry dir detection. * [Ubuntu] replace hirsute apt packages with impish. * [Nginx] add new config option to choose the status code returned when application spawning fails. (passenger_spawn_exception_status_code). * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - ccache: 4.4.1 → 4.4.2 - cmake: 3.21.2 → 3.21.4 - curl: 7.78.0 → 7.79.1 - git: 2.33.0 → 2.33.1 - gnupg: 2.3.2 → 2.3.3 - rubygems: 3.2.27 → 3.2.30 - s3cmd: 2.1.0 → 2.2.0 - Updated 0001-suse.patch to let it apply again- updated to version 6.0.11 * Fix compilation on GCC 4.4, fixes a regression in 6.0.8 where Passenger would no longer compiler without a C++11 compiler. * [CentOS] Fix version detection on CentOS Stream. Contributed by Taketo…- Remove execute bit from a Python script to stop requiring /usr/bin/python- passenger failed to start when values in locations.ini were empty. However, we kept those values empty in previous versions of passenger (< 6.0.8). Since that is no longer working, we now set them to a non existent path (%{_libdir}/passenger/%{version}/ignore) which seems to satisfy passenger.- updated to version 6.0.8 * [Apache] Fixes crash when restarting Apache on CentOS 8. Closes GH-2318. * [Standalone] fix abort websockets on shutdown. Closes GH-2211. * Fixes application process titles. They are now properly set to something like "Passenger RubyApp: ..." instead of "Passenger AppPreloader: ... (forking)". * Upgrades Boost to 1.74. * Allow passenger-status to detect passenger instance registry dir when systemd PrivateTmp dir is in use. * Reduce the likelihood of a crash when using systemd PrivateTmp dir with Apache. * Removed CentOS 6, and Debian Jessie prebuilt binaries and packages. Both are EOL. * No-longer build 32 bit prebuilt binaries, as HBB dropped support. * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - ccache_version: 4.0 → 4.2 - cmake_version: 3.18.4 → 3.19.7 - curl_version: 7.73.0 → 7.75.0 - git_version: 2.29.1 → 2.31.0 - gnupg_version: 2.2.23 → 2.2.27 - libassuan_version: 2.5.4 → 2.5.5 - libgcrypt_version: 1.8.7 → 1.9.2 - libgpg_error_version: 1.39 → 1.42 - libksba_version: 1.4.0 → 1.5.0 - openssl_version: 1.1.1h → 1.1.1k - pinentry_version: 1.1.0 → 1.1.1 - rubygems_version: 3.1.4 → 3.2.15 - zstd_version: 1.4.5 → 1.4.9 - ruby_versions + 3.0.0 - renamed suse.patch to 0001-suse.patch - updated 0001-suse.patch to apply again - renamed fix_shebangs.patch to 0002-fix-shebangs.patch- updated to version 6.0.7 * Addresses regression introduced in 6.0.5 when attempting to establish database connection after fork and activerecord is not configured in the expected way. Closes GH-2281. * Addresses regression introduced in 5.1.5 where hook scripts would fail to run. As a result the PASSENGER_ERROR_PAGE and PASSENGER_CONFIG_MANIFEST env vars have been removed from the passenger hook script environment. * Match static rails assets on 8-digit content hash. Contributed by @mattozinga. * Allow skipping the Apache/Nginx sections of the `passenger-memory-stats` output, through the `--no-apache` and `--no-nginx` commandline options. Closes GH-2306. Contributed by Saverio Miroddi (@saveriomiroddi). * Fixes an issue where `passenger-memory-stats` would throw an error if a process went away while it was running. Closes GH-2305. * Fixes a formatting issue with apr-1 include flags on macOS. * Fixes a warning about BOOST_*_ENDIAN macros being deprecated by migrating to new suggested macros. * Fixes an occasional issue with the node loader where the startup handshake would fail to record progress. * Adds an option for specifying the address to bind ruby apps to, for sending requests directly to specific app instances: - Standalone: direct_instance_request_address - Nginx: passenger_direct_instance_request_address - Apache: PassengerDirectInstanceRequestAddress * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - ccache: 4.0 (was: 3.7.10) - curl: 7.73.0 (was: 7.71.1) - git: 2.29.1 (was: 2.27.0) - gnupg: 2.2.23 (was: 2.2.21) - libgpg_error: 1.39 (was: 1.38) - ruby: 2.7.2 (was: 2.7.1) - libassuan 2.5.4 (was: 2.5.3) - libgcrypt 1.8.7 (was 1.8.6) - OpenSSL 1.1.1h (was 1.0.2u) - added apache-rpm-macros and apache2-utils to gem2rpm.yml file (otherwise the dependencies are missing when generating the spec file again)- use system apache rpm macros - require apache2-utils for build (apachectl)- updated to version 6.0.6 Release 6.0.6 - ------------------------------ * Update gemspec with up to date metadata. * Reverts the addition of the 'etc' gem to the Passenger gemspec, because it broke on normal ruby installs. Closes GH-2283. * Builds Ubuntu focal Nginx dynamic module package against Nginx 1.18.0. Closes GH-2291. * No longer providing prebuilt Ruby 2.1 or 2.2 binaries, they have been EOL for years and rubygems no longer supports them. * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - ccache 3.7.10 (was 3.7.9) - Curl 7.71.1 (was 7.69.1) - Git 2.27.0 (was 2.26.2) - GnuPG 2.2.21 (was 2.2.20) - libgpg_error 1.38 (was 1.37) - libgcrypt 1.8.6 (was 1.8.5) - RubyGems 3.1.4 (was 3.0.8)- updated to version 6.0.5 Release 6.0.5 - ------------ * [Enterprise] Fixed a regression (introduced in 5.0.0) where Flying Passenger could not update the Passenger configuration. Closes GH-1554. * Adds Ubuntu 20.04 "Focal" packages, and removes Ubuntu 19.04 "Disco" packages. * Adds RHEL / CentOS 8 packages. * [Nginx] Converts CentOS 7 packages to provide a dynamic module instead of a full Nginx install. * Fixes the encoding name for xml output from the `passenger-status --show=xml` command. Closes GH-2248. * Adds the 'etc' gem as an explicit dependency. Closes GH-2124. * Adds a user agent to the passenger pre-spawn script. Closes GH-1534. * Fixes a compilation issue on FreeBSD. Closes GH-2240. * Fixes an issue where rack bodies may not be processed correctly. * Improves the database reconnection speed in forked processes. closes GH-2253. * [Nginx] Adds a config option `passenger_temp_path` to set the path used for the disk backed response cache. Re-Closes GH-2075. * [Apache] Protects the path info and script name passed to the app from modifications done by mod_security. Closes GH-2198. * Ensures baseuri is set per request, even if config is loaded from cache. Closes GH-2117. * Make temp dir toucher cleanup code more resilient to permissions issues. * [Nginx] Bumps the preferred Nginx version to 1.18.0 (previously 1.17.3). * [Nginx] The preferred PCRE version is now 8.44 (previously 8.43). * Removed deprecated rubyforge gemspec property. Contributed by @olleolleolle. * Adds an option for specifying the attributes on the sticky session cookie: - Apache: PassengerStickySessionsCookieAttributes "SameSite=Lax; Secure;" - Nginx: passenger_sticky_sessions_cookie_attributes "SameSite=Lax; Secure;" - Standalone: --sticky-sessions-cookie-attributes "SameSite=Lax; Secure;" * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - ccache 3.7.9 (was 3.7.3) - Curl 7.69.1 (was 7.66.0) - Git 2.26.2 (was 2.23.0) - GnuPG 2.2.20 (was 2.2.17) - libgpg_error 1.37 (was 1.36) - OpenSSL 1.0.2u (was 1.0.2t) - PCRE 8.44 (was 8.43) - s3cmd 2.1.0 (was 2.0.2) - RubyGems 3.0.8 (was 3.0.6) - Rubies: - 2.4.6 -> 2.4.10 - 2.5.5 -> 2.5.8 - 2.6.3 -> 2.6.6 + 2.7.1- updated to version 6.0.4 Release 6.0.4 - ------------ * Adds Debian 10 "Buster" packages. Release 6.0.3 - ------------ * Add and option to specify the spawn dir during startup, which is specifically useful for CageFS users. Contributed by @plmnikulin. Closes GH-2145. - Apache: `PassengerSpawnDir` - Nginx: `passenger_spawn_dir` * [Nginx] Bumps the preferred Nginx version to 1.17.3 (previously 1.15.8). * [Nginx] The preferred PCRE version is now 8.43 (previously 8.42). * Adds Ubuntu 19.04 "Disco" packages, and removes Ubuntu 18.10 "Cosmic" and Ubuntu 14.04 "Trusty" packages. * Changes minimum supported macOS version to 10.12 Sierra. * Improves container detection and fixes a compilation warning in GCC 8+. Closes GH-2186. * Allowed externally specifying an app instance to send a request to. Contributed by Mark R. James (@mrj). * Fixed an incompatibility with sending requests to specific app instances, when using the rails web-console gem. Contributed by Mark R. James (@mrj). * Fixed a regression (introduced in 5.1.9) where some hooks were not called. Closes GH-2103. Contributed by Mark R. James (@mrj). * Fixes compilation with clang 8 (latest macOS update) by updating vendored boost library from 1.67 to 1.69. * Reverts a regression intruduced in 6.0.2 where Passenger would crash if it had to use the disk backed response cache. Closes GH-2189. * [Nginx] Adds an option `passenger_buffer_upload` to allow buffering uploaded data in Passenger before forwarding it to the app. As a workaround for apps that cannot handle chunked data. * [Enterprise] When using deferred port binding, no longer binds port if all apps do not start up. * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - PCRE 8.43 (was 8.42) - Curl 7.65.1 (was 7.64.0) - ccache 3.7.3 (was 3.6) - Git 2.22.0 (was 2.20.1) - OpenSSL 1.0.2s (was 1.0.2q) - RubyGems 3.0.6 (was 3.0.2) - GnuPG 2.2.16 (was 2.2.13) - libgcrypt 1.8.5 (was 1.8.4) - libgpg_error 1.36 (was 1.35) - libiconv 1.16 (was 1.15) - Ruby: - 2.4.5 -> 2.4.6 - 2.5.3 -> 2.5.5 - 2.6.1 -> 2.6.3- updated to version 6.0.2 see installed CHANGELOG Release 6.0.2 - ------------ * Allow compilation to work when Apple messed up their system ruby headers. * Only try to read pid 1's /proc files as root, in container detection. Closes GH-2168. * Add an option to disable prefixing application logs with "App PID stdout": `PassengerDisableLogPrefix` (Apache) / `passenger_disable_log_prefix` (Nginx). Closes GH-1915. * Add support for identifying the Passenger instance by PID. Closes GH-2146. Contributed by Saverio Miroddi (@saveriomiroddi). * [Ruby] Made Passenger more resiliant to Rack bugs. Closes GH-2150. * [Nginx] Do not touch Nginx's proxy_temp_path var in Passenger's nginx modules. Closes GH-2075. Contributed by Roman Berestnikov-Sivolov (@ROMB). * Updated Ruby versions used in precompiled binaries (used for e.g. gem installs) to include 2.6.1. * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - Curl: 7.64.0 (was: 7.63.0) - Ruby: 2.6.1 (was: 2.6.0) - RubyGems 3.0.2 (was: 3.0.1) - ccache 3.6 (was: 3.5) - GnuPG 2.2.13 (was: 2.2.12) - libassuan 2.5.3 (was: 2.5.2) - libgpg_error 1.35 (was: 1.33)- updated to version 6.0.1 (boo#1121748) * Adds Ubuntu 18.10 "Cosmic" packages. * Skips trying to set oom score in LXC container environments. Closes GH-2143. * Fixes an issue during the GLS startup handshake where ephemeral ports could be exhausted. Closes GH-2144. * Updated Ruby versions used in precompiled binaries (used for e.g. gem installs) to include 2.5.3, and 2.4.5 (removed: 2.4.4). * Bumps the preferred Nginx version to 1.15.8. * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - Curl: 7.62.0 -> 7.63.0 - Git: 2.19.2 -> 2.20.1 - Gnupg: 2.2.11 -> 2.2.12 - libassuan: 2.5.1 -> 2.5.2 - libgpg_error: 1.32 -> 1.33 - Ruby: 2.4.4 -> 2.4.5, + 2.5.3 - RubyGems: 2.7.6 -> 3.0.1- updated to version 6.0.0 (boo#1117900) * Introduces support for *all* programming languages. Yes that's right... Java, Elixir, Go — Passenger now supports them all! This effort is called "generic language support". * Bumps the preferred Nginx version to 1.15.7. * Introduces anonymous usage telemetry, which helps us improve Passenger. Please read the docs on what data is collected and how to disable this. * [Nginx] Introduces a new option "passenger_request_buffering on|off", to allow disabling request body buffering. This is only supported in Nginx >= 1.15.3. Closes GH-2121. * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - OpenSSL: 1.0.2q (was: 1.0.2p) - libcurl: 7.62.0 (was: 7.61.1) - Ruby: 2.3.8 (was: 2.3.7)- updated to version 5.3.7 (boo#1115545) * Fixes package installation issues on Ubuntu 18.04. These issues were caused by an update released by Ubuntu on the nginx-common package. Closes GH-2122, GH-2140. * Fixes compilation problems and warnings with GCC 8.2. Tested on Alpine Linux edge 2018-11-05. Closes GH-2139. * Fixes compatibility with libcurl 7.62.0. Contributed by Po-Chuan Hsieh (@sunpoet). * Changes minimum supported macOS version to 10.11 El Capitan. * Removes packages for Ubuntu 17.10 Artful.- updated to version 5.3.6 (boo#1114735) * Fixes smart spawning. A regression in 5.3.5 (due to a refactoring) made it so that Passenger only used the direct spawning method. This issue was mostly noticeable in the form of increased process spawning times between 5.3.4 and 5.3.5. * Fixes Passenger Core and application processes staying on the Watchdog's OOM score (unkillable). Closes GH-2105. * Fixes "mach_vm_map failed" warnings on macOS >= High Sierra. These warnings were harmless, but annoying. Closes GH-2101. * Fixes `passenger-config compile-agent` compilation with optimizations. The optimization flags were not properly passed to the compiler. * Fixes a crash that could occur when HTTP clients send a chunked transfer-encoding body containing a chunk larger than 429496729 bytes. * Improves detection of the system Apache's include headers on macOS High Sierra and later. * Fixes RVM gemset detection on RVM 1.29. * No longer supplies precompiled Ruby extensions for Ruby 1.9.3 and 2.0.0. When running Ruby 1.9.3 and 2.0.0, Passenger will attempt to compile from source instead. - changed suse.patch to apply again - changed fix_shebangs.patch to apply again- updated to version 5.3.5 * Fixes Ubuntu 18.04 package installation problems due to Nginx version mismatch. Closes GH-2122. * Improves usability of crash reports. Crash reports are no longer dumped in one big chunk to stderr. Instead, they are now dumped into multiple files, making it easy to inspect relevant reports. * Fixes some crashes that only occur with log level 7. * Downloads binaries from the newly-introduced Github mirror. This improves the reliability of binary downloads. * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - OpenSSL: 1.0.2p (was: 1.0.2o) - libcurl: 7.61.1 (was: 7.60.0)- updated to version 5.3.4 * Fixes a crash during startup on FreeBSD 11.2 and recent OpenBSD versions due to C++11 compatibility issues in the code. Closes GH-2097. * Updates Boost to version 1.67.0. * [Apache] Fixes the handling of HTTP requests with chunked bodies in combination with `PassengerBufferUploads off`. Closes GH-2102- updated to version 5.3.3 * [Apache, Nginx] Fixes the passenger-install-*-module scripts. (Regression in 5.3.2) Closes GH-2093. * [Nginx] Fixed nginx module building on CentOS 6. Closes GH-2081. Thanks to defanator for contributing this.- updated to version 5.3.2 Release 5.3.2 - ------------ This release contains many security updates. Users are advised to upgrade as soon as possible. See our blog for more information on the vulnerabilities. * [Nginx] Fixes CVE-2018-12029, a local privilege escalation vulnerability in the Nginx module that occurs when `passenger_instance_registry_dir` is configured to a directory with insufficiently strict permissions. * Fixes CVE-2018-12026, 12027, and 12028. These are local denial of service, local information disclosure and local privilege escalation vulnerabilities that could be exploited by malicious applications or malicious users on the system. * Updated various library versions used in precompiled binaries (used for e.g. gem installs): - OpenSSL (Linux only): 1.0.2o (was: 1.0.2k; on macOS it was already 1.0.2o) - GeoIP: 1.6.12 (was: 1.6.11) - libcurl: 7.60.0 (was: 7.56.1) * Fixes Meteor support in non-bundled mode (regression from 5.3.0). Closes GH-2082. * Fixes the fact that the error page (which is shown when an app fails to spawn) sometimes contains unsufficient analysis details about the app. * [Apache] Fixes PassengerMaxInstancesPerApp not being respected (regression from config refactor in 5.2.0). Closes GH-2059. * [Enterprise, Apache] Fixes PassengerMaxInstances not being respected (regression from config refactor in 5.2.0). * [Enterprise] Fixes passenger-irb being unable to connect to an app process (regression from 5.3.0). Closes GH-2087. - Change suse.patch to apply again- updated to version 5.3.1 Release 5.3.1 - ------------ * Fixes a regression from 5.3.0: a crash that occurs if the user that an application should run under, does not have a shell configured. Closes GH-2078. * Fixes a regression from 5.3.0: setting supplementary group IDs during user switching. Closes GH-2077.- updated to version 5.3.0 Release 5.3.0 - ------------ * Adds Ubuntu 18.04 "Bionic" packages. * Removes packages for Debian 7 "Wheezy" (EOL May 2018). * Vastly improves spawning error page: quick overview of where the problem is, and the option to drill down in extensive troubleshooting information. * Fuse Panel support: fixes a crash that occurs when you shut down Passenger right after it fails to connect to Fuse Panel. * [Nginx] Updates the preferred Nginx version to 1.14.0 (from 1.12.2). * [Apache] Updates the recommended package for apache dev headers on debian >= 9.4. Closes GH-2048. * [Enterprise] Fix licensing proxy warning to refer to licensing_proxy_url instead of licensing_proxy. * [Enterprise] Add new `PassengerAppLogFile` (Apache) / `passenger_app_log_file` (Nginx) config option to specify a file for app-specific logs. Closes GH-1279. - Change suse.patch to apply again- mention `series` in spec file - mention `rubygem-passenger-rpmlintrc` in spec file- updated to version 5.2.3 Release 5.2.3 - ------------ * Fuse Panel support: fixes a few bugs with handling small log files and with apps that don't output any messages. * Python app support: fixes a Python 3 compatibility issue w.r.t. writing data over the socket. * macOS support: fixes a crash in the `passenger-config compile-nginx-engine` command which only occurs on macOS >= 10.13. This crash was caused by a missing `require` call in our code, and affects users who compile Passenger from source, e.g. users of the Passenger Enterprise Homebrew formula. * Fixes a small memory corruption issue (dangling pointer) in the ApplicationPool subsystem. * Improves support for the $TMPDIR environment variable by removing leftover hardcoded references to /tmp. Closes GH-2052. * Updated PCRE version to 8.42 (was: 8.41) across the board. Release 5.2.2 - ------------ * Adds an option for dumping the web server config manifest to a given file: `PassengerDumpConfigManifest` (Apache) / `passenger_dump_config_manifest` (Nginx). This option is mostly useful for Passenger developers. * [Nginx] Fixes support for configurations that have two `passenger_base_uri` options in a single virtual host, without corresponding `passenger_app_group_name` and `passenger_app_root` directives. Closes GH-2043. * [Enterprise] Improved support for RAM-based pricing on Heroku (now using officially recommended memory limit reporting via CGROUP). Release 5.2.1 - ------------ * Fixes a regression from 5.1.11 that prevented Passenger from compiling on FreeBSD in some cases. Closes GH-2031. * Fixes a bounds issue in printing an error message that could occur in some cases when spawning a child process fails. Issue was present from 5.1.11. * Fixes a regression from 5.2.0 which prevented setting the max pool idle time to 0. Closes GH-2020. * Warns if using an incompatible compiler on macOS < 10.13. Closes GH-2017. * No longer uses Security Framework on macOS 10.13+. This will prevent further keychain warnings from appropriately compiled Passengers. * Fixes warning on macOS about /proc/self access (excluded some code that was intended only for Linux). * `passenger-install-nginx-module` now downloads the preferred Nginx version via https. Thanks to smiba for pointing this out. * [Apache] Fixes a regression from 5.2.0 that caused a crash on startup when no top-level ServerName is set. Closes GH-2029. * [Enterprise] Adds support for using RAM-based pricing on Heroku. Release 5.2.0 - ------------ * [Apache] Breaking change: to avoid configuration ambiguity, options that act on a per-process level (rather than per-request level) can no longer be used in .htaccess. See the Passenger Library -> configuration -> intro for more info (https://www.phusionpassenger.com/library/config/apache/intro.html#global-per-application-and-per-request-options). * [Apache] Breaking change: the option PassengerResolveSymlinksInDocumentRoot has been removed (old Passenger 2 compatibility option, see PassengerAppRoot for new method). * [Apache] Option handling has been refactored to avoid silent conflicts and errors: warnings are now generated for global config options in (they conflict between VHosts) and per-application options in , and (silently failed before). * [Apache] Fixes compilation issues on some systems with macOS 10.13 High Sierra (in addition to the fixes from 5.1.11). * [Enterprise] Fixes two unnecessary warnings about failure to contact the licensing server, one occurring since version 5.1.8 ("3 days out of contact"), the other since 5.1.11 + Apache ("failure to contact"). * [Nginx] Fixes the default for the `passenger_app_group_name` to start with the `passenger_app_root` rather than the document root (the end remains the same: `passenger_app_env`). * [Standalone] Adds command line support for `start_timeout` in Passenger Standalone (also removes unnecessary warning when using it in `Passengerfile.json`). * [Standalone, Nginx] Waits for Nginx to exit before cleaning up temp dir (started happening more since the switch to Nginx graceful shutdown in 5.1.6). Closes GH-1970. * Deprecated options for Union Station. * Ruby 2.5 compatibility: handle case where an exception's backtrace may be nil. Closes GH-2011. * Adds JSON mime type for static file serving. Closes GH-2018. * Removes packages for Ubuntu 17.04 "Zesty" (EOL 13-jan-2018). - Add fix_shebangs.patch: * Required to fix the package building because we don't allow /usr/bin/env shebangs. - Change suse.patch to apply again- updated to version 5.1.12 * Changes the Debian/Ubuntu install script to completely restart Apache upon upgrade. This prevents issues due to a "half upgraded" state (old Passenger Apache module + new Passenger core). Closes GH-2000. * Adds Ubuntu 17.10 "Artful" packages. * Fixes a case in which -- when Passenger is configured with user switching turned off -- it is unable to open the web server log file and aborts during startup. This regression was introduced in 5.1.8. Closes GH-1990. * [Nginx] The preferred Nginx version is now 1.12.2 * [Nginx] The preferred PCRE version is now 8.41 (previously 8.39). * [Standalone] Adds support for using `start_timeout` in Passengerfile.json. * [Enterprise] Uses libuv to detect total system RAM, allows for compilation on pre-10.11 macOS. * [Enterprise] Added a max request queue time option, to limit time requests spend in the request queue. Closes GH-1688. * Updated libcurl version used in precompiled binaries (used for e.g. gem installs) to 7.56.1 (was: 7.54.1). * Updated OpenSSL version used in precompiled binaries (used for e.g. gem installs) to 1.0.2m (was: 1.0.2l). * Updated PCRE version used in precompiled binaries (used for e.g. gem installs) to 8.41 (was: 8.40). * Updated Ruby versions used in precompiled binaries (used for e.g. gem installs) to include 2.1.10, 2.2.8, 2.3.5, and 2.4.2 (removed: 2.1.9, 2.2.7, 2.3.4, and 2.4.1).- drop upstream merged patch fix-undeclared-isnan.patch to fix build - add openssl build dependency- updated to version 5.1.11 see installed CHANGELOG Release 5.1.11 - ------------- * [Apache] Fixes a race condition (segfault) on startup, which primarily affected macOS hosts (regression in 5.1.8 due to the logging improvements). Closes GH-1973. * [Apache] Fixes compilation on macOS 10.13 High Sierra. * [Nginx] It is now allowed to specify `passenger_enabled` in the `http` context as well. * [Nginx] Namespaced Jsoncpp under the Passenger namespace to avoid collisions with Google Pagespeed's copy when linked into Nginx. * [Standalone] Enables HTTP/2 support in the Nginx template. Support is only active if SSL is used, to avoid potential issues with HTTP/2 on HTTP ports. Closes GH-1945. * [Enterprise, Standalone] Adds a new feature that is especially useful on Heroku: deferred port binding. When `--defer-port-binding` is set, Passenger does not listen on the given port until the application has finished spawning. If the application starts slowly then this mechanism can prevent the Heroku request timeout from killing the dyno (the boot timeout still applies). * [Enterprise, Standalone] Fixes duplicate warnings when Passengerfile.json contains errors. * [Standalone] `passenger start` now accepts the `--start-timeout` configuration option. * Adds support for Bundler 2.0's new `gems.rb` and `gems.locked`. Learn more about these in [Gemfile's new clothes](https://depfu.com/blog/2017/09/06/gemfiles-new-clothes). Closes GH-1982. * Removes Debian packages for Ubuntu 12.04 Precise. * Fixes compilation warnings on macOS + Clang 9.0. * Introduces a new check that logs a vulnerability warning if Passenger is run with root permissions while the directory permissions of (parts of) its root dir allow modifications by non-root users. * Fixes an arbitrary file read vulnerability (if Passenger is running as root and the attacker has access to a user account that hosts an application). Release 5.1.10 - ------------- * This was an Enterprise-only hotfix release (no changes in Passenger Open Source). Release 5.1.9 - ------------ * This was an Enterprise-only hotfix release (no changes in Passenger Open Source). Release 5.1.8 - ------------ * Introduces a shorter and more informative log format. The new format significantly shortens the thread ID, and includes the message's log level (critical, error, warning, notice, etc) so that users can more easily filter out uninteresting messages. * [Nginx] The Phusion Nginx APT package is upgraded to Nginx version 1.12.1 (previously pinned at 1.10.3 while waiting for a compatible lua module release). * [Standalone] Automatically uses Nginx to serves static asset URLs that conform to the [webpacker](https://github.com/rails/webpacker) gem's format. Closes GH-1966. * [Standalone] If configured to listen on a Unix domain socket, properly cleans up this socket on Nginx shutdown. Fixes a regression from 5.1.6. Closes GH-1969. * [Standalone] Fixes the `--max-requests` option when using the builtin engine. Fixes a regression from 5.1.4. * [Enterprise] Fixes a potential use-after-free bug when reporting usage data to the Phusion licensing server. This bug only occurs when Passenger Enterprise is running inside a container. Release 5.1.7 - ------------ * Fixes compilation problems on some systems. * Upgrades the JSON parser (json-cpp) to version 1.8.1. This makes parsing slightly faster, adds various security checks and fixes some JSON generation issues. * [Enterprise] Fixes an SSL certificate issue in the license usage data reporter, which only occurs when Passenger Enterprise installed from gem or tarball. The license usage data reporter now searches for the correct system CA path. * [Enterprise] Fixes a potential use-after-free bug when reporting usage data to the Phusion licensing server, and improves reliability of usage data recording. Release 5.1.6 - ------------ * Fixes a typo that causes a looping crash when long security update information is sent by the server. In practice we will keep the messages shorter to avoid triggering this until there has been ample time to upgrade. * Fixes unnecessary process respawn if it was detached and min_instances is set to 0. Closes GH-1735. * Introduces APT packages for Debian 9 "Stretch", with Passenger built as dynamic module. Closes GH-1960. * Changes APT packages for Ubuntu 17.04 "Zesty" from static to dynamic module. * [Standalone] Now uses graceful shutdown for the Nginx engine under the hood (requested as part of GH-1598). Thanks to PikachuEXE for contributing this. * [Standalone] Fixes a memory corruption issue in the builtin engine. The issue was introduced in 5.1.5 (settings handling refactoring). * [Standalone] Cleanup the temp dir before aborting when startup cannot continue, e.g. when Passenger is already running. Closes GH-1953. * Fixes WSGI crash with Python 3 and non-ASCII characters in headers or the URL. Closes GH-1935. Thanks to n4nn31355 for the assistance. * [Nginx] The preferred Nginx version is now 1.12.1 (previously 1.10.3), except for the Phusion Nginx APT package, which is pinned at 1.10.3 until an 1.12.x compatible lua module becomes available. * [Nginx] Fixes CVE-2017-7529, an integer overflow vulnerability in the Nginx range filter module. This is accomplished by upgrading to Nginx 1.12.1, or applying the patch (Phusion Nginx APT package). * Updated libcurl version used in precompiled binaries (used for e.g. gem installs) to 7.54.1 (was: 7.54.0). * Updated OpenSSL version used in precompiled binaries (used for e.g. gem installs) to 1.0.2l (was: 1.0.2k). * Updated GeoIP version used in precompiled binaries (used for e.g. gem installs) to 1.6.11 (was: 1.6.9). * Updated PCRE version used in precompiled binaries (used for e.g. gem installs) to 8.40 (was: 8.39). * Adds support for building with MacPorts' OpenSSL. Closes GH-1959. Release 5.1.5 - ------------ * Updated Boost to version 1.64.0, which fixed a compilation issue on certain Gentoo based setups. Closes GH-1942. * Improved the error message shown when an app fails to start in time. * [Apache] Remove option to configure PassengerAppGroupName from .htaccess because, assuming AllowOverride Options is set, malicious users (having an account on the same server) can sometimes collide app group names of other users and capture their traffic. * Major internal refactoring of settings handling, to prepare for supporting settings changes without restart.- updated to version 5.1.4 see installed CHANGELOG Release 5.1.4 - ------------------------------ * Updated zlib version used in building precompiled binaries (used for e.g. gem installs) to 1.2.11 (was: 1.2.8). * Updated openssl version used in building precompiled binaries (used for e.g. gem installs) to 1.0.2k (was: 1.0.2j). * Updated curl version used in building precompiled binaries (used for e.g. gem installs) to 7.54.0 (was: 7.51.0). * Added support for rbenv when building precompiled binaries (passenger_binary_build_automation submodule). * Fixes issue when building precompiled binaries (used for e.g. gem installs) found in release 5.1.3. * Added Ruby 2.4.1 precompiled native extension. Release 5.1.3 - ------------------------------ * [Standalone] Fixes `install-standalone-runtime` command after regression in 5.1.2. * Removes unnecessary logging of "No Error" from macOS Security Update Checker. * Adds support for compiling against the built-in Apache installation supplied with macOS 10.12 Sierra. Previous versions of Passenger failed because macOS Sierra's Apache installation is incomplete and does not supply the apr-config tool. We now work around this by using hardcoded default values for macOS. * Don't output colorized text during dependency check when output isn't a TTY, unless forced. Closes GH-1902. * [Nginx] The preferred Nginx version is now 1.10.3 (previously 1.10.2). * Adds Ubuntu 17.04 "Zesty" packages. * [Enterprise] Fixes `send-cloud-usage` command when Passenger is installed from gem. * [Enterprise] Improves robustness of machine properties reporting for pay-as-you-go cloud-license holders. * [Enterprise] Adds support for reporting available RAM, and CONTAINER_HOST_IDENTIFIER envvar, to support RAM-based pricing model. * Added additional debug level logging for troubleshooting issues with bash scripts. Closes GH-1928. * Revert private keychain use in the Security Update Checker when run as root on macOS, in order to avoid changing the default System Keychain. Closes GH-1922. Remove Cert and Key from keychain separately, to avoid errors when clearing the client certificate. * Fix missing openssl check in `passenger-install-apache2-module` dependency checker. Closes GH-1934.- updated to version 5.1.2 see installed CHANGELOG Release 5.1.2 - ------------ * Improve curl check for passenger-install- scripts to catch (very old) curl versions that won't compile against 5.1+. * Fixes remaining false positives (logging) from the new Meteor cluster warning system. Closes GH-1905. * Create a private keychain on macOS when the system keychain is defaulted to, this avoids a permissions issue with the system keychain when performing the Security Update Check. This is necessary because the system keychain is the default keychain of daemon users and root on macOS. * Improve `passenger-memory-stats` to include JRuby processes that fail to rename as expected. Closes GH-1878. * [Standalone] Don't download or compile Nginx when using the builtin engine. Closes GH-1910. * [Standalone] Fixes `--nginx-tarball` option of `passenger start` and `passenger-config install-standalone-runtime` (wasn't working). Also verifies that `--nginx-version` is explicitly specified as it should be. Release 5.1.1 - ------------ * The precompiled version of the PassengerAgent binary (used for e.g. gem installs) now configures (statically linked) libcurl with system keystore, so that the new security update check can successfully validate certs. * Fixes some false positives (logging) from the new Node and Meteor cluster warning system. Logging is less repetitive and has extra debug info. Closes GH-1905. * Updates the upload-progress module in the Nginx Debian package. The module version that we linked against in 5.1.0 was 0.9.2, but due to a bug in that version the module didn't work. * The security update check now reports whether libcurl + SSL backend are statically linked to Passenger, in which case the check also needs to warn about relevant OpenSSL vulnerabilities in the linked library. * Increases the allowed line lengths emmited by apps at startup. * Adds support for the unary 'not' operator in the Union Station filter language. * [Enterprise] Add missing flying-passenger integration mode to security update check. * Fixes support for Rails 5.0.1 Action Cable. Specifically, we now support the `options` argument in the `write_nonblock` method in hijacked Rack IO sockets. * [Apache] Introduces a small delay to prevent running the Security Update Checker twice at startup. Release 5.1.0 - ------------- * Upgrades union_station_hooks_core to version 2.1.2. * [Enterprise] When running a Rails app in multithreaded mode, Passenger Enterprise automatically tags Rails logs with the current thread number. This makes it possible to distinguish logs generated by different threads. * Fixes permissions issue on Linux when setting OOM score after lowering privileges. Closes GH-1858. * [Standalone] Allows raw json envvars in Passengerfile.json. Closes GH-1837. * [Standalone] Make the `max_requests` option available on the command line as well. * Fixes unaligned memory access in base64 decoder on platforms that have strict aliasing requirements (non x86/x86_64). Closes GH-1646. * Introduces daily Passenger security update check to warn (error log) if there are newer Passenger versions with important security fixes (describing what was discovered, what is affected, which version has the fix). * Fixes compilation on Linux when a non-glibc C library is in use. Closes GH-1870. * `passenger-install-nginx-module` and the standalone compiler now add the http v2, realip and addition module flags for Nginx (just like the APT/RPM/autobuilder already had). Closes GH-1788. * [Apache] Fixes PassengerShowVersionInHeader option. Thanks to Sebastian Welther for contributing this. * Passenger now reports when you try to use Node.js or Meteor clustering, and tries to continue with just a nonfunctional shim in place, so that if your code uses the clustering APIs your app may still work. * Updates libev config.sub and config.guess to support newer platforms such as the IBM power 8. * Fixes an issue where passenger-config couldn't restart an app if the TMPDIR variable was set to /tmp * `passenger-install-apache-module` now suggests the correct apache package on Ubuntu Xenial. Closes GH-1884. * [Standalone] The TempDirToucher will now spend most of its time with reduced privileges, except when it's actively touching files. This allows it to be killed when Passenger is quit in most circumstances. Closes GH-1678. * Fixes a file overwrite vulnerability caused by a predictable temporary file being written by `passenger-install-nginx-module`. Thanks to Jeremy Evans for reporting this. * [Standalone] Fixes starting Passenger as a non-extant user. Closes GH-1849. * Improved look of the error pages for failing to spawn an application (development & production mode), and Error ID is now also shown in production mode. * [Standalone] Enable ipv6 support by default in builtin nginx. Closes GH-1873. * [Nginx] Updates to APT package builder (Debian & Ubuntu) with fix for www-data to root privilege escalation via log file handling (CVE-2016-1247/USN-3114-1). * [Nginx] Updates to RPM package builder (CentOS & RHEL) with fix for 1.10.x system nginx package overriding the nginx from the Passenger repo. Closes GH-1895. * [Nginx] The preferred Nginx version is now 1.10.2 (previously 1.10.1). * RPM pkg builder fix for breaking SELinux change in RHEL 7.3. * RPM pkg builder fix for RHEL6/CentOS6 incompatibility and replacement in Passenger. * Adds Ubuntu 16.10 "Yakkety" packages.- updated to version 5.0.30 see installed CHANGELOG Release 5.0.30 - ------------- * Changes mbuf block size from 512 to 4096 bytes to better fit modern requests and significantly speed up disk buffering. * [Nginx] Fixes PCRE checksum after the preferred version update in 5.0.29 (contributed by: clemensg). * [Apache] Fixes buffer limit crash on large file upload (when core disk buffer can't keep up with client for some time), and limits per-client buffer memory usage to 130 KB. Closes GH-1620. * Fixes potential hang when an UnseekableSocket gets serialized to json. Closes GH-1838.- updated to version 5.0.29 see installed CHANGELOG Release 5.0.29 - ------------- * Fixes the FreeBSD build breaking due to the `-ldl` flag introduced by the LVE integration patch (5.0.28). Closes GH-1805. * Fixes per-application interpreter override (ruby, node, python) being ignored in mass deployment mode. Closes GH-1818. * Fixes incomplete refactor from 5.0.27 that could, under specific conditions, lead to a Passenger crash. Closes GH-1794. * [Apache] Remove unused code that caused a crash in configurations with thousands of VirtualHost entries. Closes GH-1676. * [Nginx] Fixes use of invalid logfile name (memory already released) in backup log redirection code. Possibly related to GH-1774. * [Nginx] The preferred Nginx version is now 1.10.1 (previously 1.10.0). * [Nginx] The preferred PCRE version is now 8.39 (previously 8.34). * [Standalone] Passenger Standalone now supports /dev/stdout and /dev/stderr as log file path (via `--log-file` or Passengerfile.json). This is especially useful in Docker containers. In previous versions logging to those paths did not work, resulting in nothing getting logged at all.- add fix-undeclared-isnan.patch (from https://github.com/boostorg/math/commit/fbd1393858719c7bda7d251f742950c1bc691ea8)- update to version 5.0.28 * Finalizes the fix (5.0.26) for the `rails server` command integration to prevent "missing on_event" errors. Closes GH-1768. * Fixes missing -fPIC in Nginx dynamic module compilation (5.0.26) on Linux (rewrite of a patch by Andrei Belov). Closes GH-1793. * Fixes memory leak that could occur whenever more than 1024 concurrent requests are handled (more likely since the higher concurrency support options from 5.0.24). Closes GH-1797. * Integrates with CloudLinux LVE and CageFS (security checks and a new option PassengerLveMinUid). Thanks to Oleksiy Shchukin from CloudLinux Inc. for contributing this. * Fixes the Nginx build when the PCRE library is not available (such as when compiling with `--without-http_rewrite_module`). Closes GH-1796. * Extends `passenger-memory-stats` filter to show the instance dir toucher too (as well as the core in valgrind debug runs). * Changes the default for friendly error pages to "off" unless the environment is set to "development", rather than "on" unless "staging" or "production". Closes GH-1782. * [Nginx] The preferred Nginx version is now 1.10.0 (previously 1.8.1). - changes in release 5.0.27 * Fixes encoding issue for Ruby apps that resulted in a 0-byte response body. This occurred when the Ruby native support lib was not used and the app outputted an encoding that doesn't mix with UTF-8 (like UTF-16). Closes GH-1763. * Fixes Passenger Core and application processes staying on the Watchdogs OOM score (unkillable) when user switching is set to off. Closes GH-1631. * Supports Debian GNU/kFreeBSD build. Based on contribution by stevenc99. * Switches a number of places in the Passenger Core over to using the monotonic clock instead of the wallclock for robustness against clock time-stepping. * Slightly improves out-of-memory detection in some subroutines. * Fixes incomplete libuv upgrade: some build files were not autoregenerated during the upgrade from 1.5.0 to 1.8.0 in the previous release. * Warnings about 502 responses that are caused by applications aborting their output while the client is no longer connected (e.g. due to half-close event, reported since 5.0.26) are now reduced to debug level. * Fixes automatic compilation of Ruby's native_support library in case Passenger was installed through Debian or RPM packages. Closes GH-1778. * Fixes memory leak when buffering large request/response bodies to disk (which happens as soon as the 100 KB memory buffer is full). * Fixes crash if an application spawn fails and a non-UTF8 character appears in the spawn output. Closes GH-1601. * Updates the `rails server` command integration (from 5.0.25) to prevent "missing on_event" errors. Closes GH-1768. Update: not all required code made it to the release, the final fix is delivered in 5.0.28. * [Union Station] Fixes a crash that occurs if all of the following conditions are met: 1) Union Station support is enabled, 2) the client sent at least one header containing the empty string, 3) the application responds with a 4xx or 5xx status. Closes GH-1776.- Force fixed timestamps for patched gems (bsc#916047)- refresh suse patch to apply cleanly again- updated to version 5.0.26 see installed CHANGELOG Release 5.0.26 - ------------- * `passenger-status --show=server` now reports the speed at which new requests are accepted. * `passenger-status --show=server` now reports `last_data_send_time` and `last_data_receive_time` which can be used to troubleshoot long-running requests (for example, to see if a websocket heartbeat is stuck). * Passenger now reports TCP half-closing events to Node.js and Meteor applications, which allows them to detect request body and WebSocket closes without having to send data to the client. * Fixes outputting Content-Length and Transfer-Encoding headers on HEAD requests for Ruby apps. These headers were omitted in previous versions on HEAD requests. * Bumps the default socket backlog size from 1024 to 2048. * Upgrades libuv to version 1.8.0. * When using our RPM packages, system SELinux policy upgrades no longer break the Passenger SELinux policy. Closes GH-1663. * [Apache] Fixes compilation against Apache installations which include `-pie` in CFLAGS. Closes GH-1756. * [Nginx, Standalone] Bumps default Nginx worker_connections from 1024 to 4096 (effectively 2048 because of internal reverse proxy) * [Nginx, Standalone] Introduces the option `core_file_descriptor_ulimit` and `app_file_descriptor_ulimit`, for setting the file descriptor ulimits of the Passenger core and the application, respectively. * [Nginx] Passenger can now be [compiled as an Nginx dynamic module](https://www.phusionpassenger.com/library/install/nginx/install_as_nginx_module.html#dynamic-module). Thanks to Ruslan Ermilov from NGINX Inc for contributing this. * [Standalone] Prints a warning when an unsupported configuration option in Passengerfile.json is set. * [Standalone] Fixes "address already in use" errors when using the builtin engine. * [Enterprise] The rolling restart feature now waits until the old process is completely gone (drained its request queue, process exited) before proceeding with rolling restarting the next process. This results in friendlier resource usage during rolling restart. * [Union Station] Fixes custom logging time arguments getting overwritten by current time for Ruby apps (so some sub-blocks like "framework request processing" appeared shorter than they were). This could happen since the switch to monotonic clock in 5.0.22.- updated to version 5.0.25 see installed CHANGELOG Release 5.0.25 - ------------- * Integrates into the `rails server` command. Please learn more at [the Passenger + Rails integration documentation](https://www.phusionpassenger.com/library/dev/ruby/rails_integration.html). * Adds explicit support for Action Cable. Please learn more at the [Passenger Library](https://www.phusionpassenger.com/library/dev/ruby/rails_integration.html#action_cable). * Removes packages for Ubuntu 15.04 Vivid and Debian 6. Ubuntu 15.04 and Debian 6 are still supported, we just don't supply packages for them anymore. If you are an Ubuntu 15.04 or Debian 6 user and you want to use Passenger >= 5.0.25, then please upgrade your distribution, or install Passenger from RubyGems/tarball. * Fixes a potential crash due to memory corruption in code for `passenger-config reopen-logs`. * Fixes a potential crash in the large (inbound/outbound) file buffering code. * Fixes a crash that occurs when using Nginx + HTTPS + Sub-requests. Closes GH-1724. * Fixes a crash that occurs when using Nginx + syslog and a logfile for Passenger. Also fixes edge cases where the Nginx logpath would override the Passenger logpath. Closes GH-1514 (again). * [Union Station] Fixes a potential crash due to a wrong limit on snprintf (introduced in 5.0.24 by GH-1633). Closes GH-1744. * [Union Station] Fixes Union Station Node.js request introspection to allow for application.use method chaining. Closes GH-1745. * [Union Station] Fixes information about sinks sometimes missing from `passenger-status --show=union_station`. * [Union Station] When one or more Union Station gateways are suffering from technical difficulties, the Union Station support code now tries more quickly to reestablish the connection. * [Standalone] Don't reject the value 0 (meaning no limit) for `--max-request-queue-size`. Closes GH-1743. * [Standalone] Makes the `--address` option work more reliably if the passed hostname may resolve to multiple addresses. For example, if you pass `--address localhost` then previous versions could fail because Passenger thinks it's an IPv6 address (::1) while Nginx thinks it's an IPv4 address (127.0.0.1). Hostname resolution is now done in a consistent manner. * [Standalone] Adds the `--unlimited-concurrency-path` configuration option. * [Standalone] Adds IPv6 support to the builtin engine.- updated to version 5.0.24 see installed CHANGELOG Release 5.0.24 - ------------- * Fixes a crash when the new `force_max_concurrent_requests_per_process` option (5.0.22) was used for non-Node.js apps (e.g. Ruby). Closes GH-1720. * Fixes Solaris compilation. This was a regression due to the patch for GH-1643 in 5.0.22. Closes GH-1694, GH-1701. * Logs for [Union Station](https://www.unionstationapp.com) provide more information about request queueing. Closes GH-1633. * Also log HTTP headers to Union Station for HTTP 4xx responses (extends the header logging for HTTP 5xx that was added in 5.0.22) * Fixes cases where compilation failure of (optional) native utils was not reported. * On Ruby, no longer traps SIGEXIT. This fixes erroneously setting `$ERROR_INFO` in `at_exit` callbacks. Closes GH-1730. * Fixes a wrong loop exit condition that could cause a deadlock with 100% CPU usage by Passenger core. Closes GH-1709, GH-1732. * Adds `socket_backlog` option to configure the Passenger Core socket backlog. For use with e.g. "Resource temporarily unavailable while connecting to upstream" errors. Closes GH-1726. * [Nginx] The preferred Nginx version is now 1.8.1 (previously 1.8.0). * [Standalone] Fixes the default value of the `load_shell_envvars` option. It's supposed to be disabled by default, but due to a typo it was enabled by default.- updated to version 5.0.23 see installed CHANGELOG Release 5.0.23 - ------------- * Fixes the request acceptor error handling timeout. When an error occurs while Passenger is accepting a request (for example, when Passenger has run out of file descriptors), Passenger is supposed to wait for 3 seconds before trying again. Because of a typo, Passenger actually waited 3 milliseconds. * [Enterprise] Fixed a regression in the Passenger Standalone Nginx config template that breaks the Mass Deployment feature. * The mime type for serving static XHTML files is updated. We no longer use the mobile profile, so it is recognized by desktop browsers. Closes GH-1695. * Improves error messages about Ruby native support to indicate the optional nature. Passenger is able to operate even without the native support extension, but that wasn't clear enough to some users, causing them to think of the old messages as errors. * [Standalone, Nginx] When using the new `abort_websockets_on_process_shutdown` configuration option, Passenger waited for the app to close without signaling it that shutdown was in progress. Node.js apps now get a SIGINT. Closes GH-1702. * With friendly error pages off Passenger would still show a trace (referencing only Passenger code) for unusual spawn errors. This has been changed to a generic error message. Closes GH-1704.- update to version 5.0.22 (boo#956281) - Fixes a header collision vulnerability (CVE-2015-7519, medium severity). Please see our blog for detailed vulnerability description and advisory. Thanks to the SUSE security team for reporting this issue. - [Apache] Fixes compatibility with Apache 2.4.17's mod_autoindex. Fix contributed by Eric Covener. Closes GH-1642. - [Standalone] Passenger Standalone now [accepts configuration options from environment variables](https://www.phusionpassenger.com/library/config/standalone/intro.html). This makes using Passenger Standalone significantly easier on Heroku or on systems that follow the 12-factor principle. Closes GH-1661. - [Standalone] The Nginx configuration template has been cleaned up. It is now significantly easier to edit the Nginx configuration template without breaking compatibility with future versions. - [Standalone] The `passenger start` command now performs a sanity check on the internally generated Nginx configuration file and advises you accordingly when there is a problem. - [Standalone] The `passenger status` and `passenger stop` commands now respect Passengerfile.json. Closes GH-1593. - [Standalone] Passenger Standalone on Solaris now properly tails the application log file. - [Standalone] Fixes a problem with Passenger Standalone's builtin engine exiting at startup when run on Solaris. - [Standalone] `passenger start` now accepts the `--envvar` command line option for passing environment variables to the application. - [Standalone] `passenger start` now accepts the `--memory-limit` configuration option. - [Standalone] `passenger start` now accepts the `--max-request-queue-size` configuration option. - [Standalone] `passenger start` now accepts the `--debug-nginx-config` configuration option. This option allows you to view the Nginx configuration file that Passenger Standalone generates internally. - [Standalone, Nginx] Introduces a new configuration option: `abort_websockets_on_process_shutdown`. By default, when Passenger shuts down or restarts an application process, it will abort associated Websocket connections. This option allows you to disable that behavior. Closes GH-1686. - Introduces a new configuration option: `force_max_concurrent_requests_per_process`. This option is mostly useful for making dynamic process scaling work in Node.js and Meteor apps. - Various administration tools, such as `passenger-status`, no longer raise an flock EBADF error on Solaris. Closes GH-1643. - The `passenger-config reopen-logs` command, when used in combination with Passenger Standalone and the Nginx engine, now also instructs Nginx to reopen its log files. Closes GH-1674. - Fixes Passenger erroneously adding a `Content-Length` or `Transfer-Encoding` header to Ruby HTTP 204 No Content responses. Closes GH-1595. - Fixes Union Station logging of Rack response body actions. - The `passenger-config restart-app` command, when given `--ignore-app-not-running`, now properly exits with a zero status when one or more applications are running, but none of them belonging to the invoking user. Closes GH-1655. - The `passenger-config validate-install` command no longer prints false warnings about duplicate Passenger installs on systems that use RBenv. Closes GH-1627. - Fixes race conditions in the automatic building of the Ruby native support extension. Closes GH-1570. - [Enterprise] Fixes compatibility with byebug 7.0. Closes GH-1662. - Support Union Station logging for Node.js applications, with Express/MongoDB automatically supported. - The Ruby Union Station hooks no longer abort with a fatal error when the application does not call the Union Station initializer method during startup. The error is now only logged. - In case of an error response (HTTP 5xx), Union Station logging will also contain request headers. - The Union Station hooks are now more resilient against environment variable problems. - rebase suse.patch to apply cleanly again- update to version 5.0.21 - Properly handles Ruby applications that output the `Content-Length` and `Transfer-Encoding` headers in non-standard casing, e.g. `Content-length`. Closes GH-1517. - Fixes Ruby application loading incompatibilities caused by the use of absolute paths. Closes GH-1596. - Fixes OpenSSL detection problems on OS X 10.11 El Capitan. OS X 10.11 no longer includes OpenSSL headers, so Passenger will suggest and use OpenSSL from Homebrew. Closes GH-1630. - Introduces the [secure HTTP headers](https://www.phusionpassenger.com/library/indepth/meteor/secure_http_headers.html) feature for Node.js and Meteor apps. This mechanism allows Passenger to send per-request information to the application, while guaranteeing that this information is not spoofed by the client. - Per-request Apache environment variables are now passed to Node.js and Meteor apps through the [`!~Passenger-Envvars`](https://www.phusionpassenger.com/library/indepth/nodejs/apache_per_request_envvars.html) secure header. - Fixes some unintentional caching of request-specific environment variables. Closes GH-1479. - For Node.js applications, Passenger now calls `process.emit('message', 'shutdown')` whenever Passenger shuts down an application process. This is the same hook as used by PM2, allowing applications which use the PM2 graceful shutdown mechanism to be run on Passenger without changes. - [Enterprise] Fixes a bug in passenger-irb where printing strings larger than 64 KB would cause it to crash. - [Enterprise] Fixes the `passenger-config restart-app` command so that it performs a non-rolling-restart unless `--rolling-restart` is given as command line option, as per the documentation. Previously, `passenger-config restart-app` without `--rolling-restart` would perform a rolling restart if rolling restarts are configured in the configuration file, but this contradicted documented behavior. Closes GH-1634. - rebase suse.patch to apply cleanly again- fix requires and supplements of apache2 subpackage- fix path for native support library- squashed all patches into suse.patch and added /etc/passenger/locations.ini - dropped patches - 0001-fix-shebang.patch - 0002-load-system-passenger-libs.patch - 0003-use-shared-path-for-shared-resources.patch - 0004-fix-default-temp-dir.patch- update to version 5.0.20 - Fixes memory management bugs in Union Station support. - Improves the error handling in Union Station support. - `passenger-config validate-install` now properly handles CR characters in Apache configuration files. - changes from 5.0.19 - Fixes an encoding crash in `passenger-memory-stats` on OS X in case one or more processes are running on the system with names containing UTF-8 characters. Closes GH-1603. - [Ruby] Fixes handling of HTTP 205 responses, which would cause client connections to freeze. - Improves Union Station data collection: more Rack I/O events are now logged. The time taken to write out and to close the Rack response body are now logged. - Improves Union Station data sending: errors are now logged more clearly, and DNS errors are now handled more robustly. - Improves Union Station troubleshooting: errors can now be diagnosed by running `passenger-status --show=union_station`. - Refactors the Union Station Ruby hook code. They have been extracted to external gems. However, they are still bundled with Passenger for ease of use. - drop all patches and replaced with a git-format-patch series: - added patches - 0001-fix-shebang.patch - 0002-load-system-passenger-libs.patch - 0003-use-shared-path-for-shared-resources.patch - 0004-fix-default-temp-dir.patch - removed patches: - passenger-4.0.14_missing_includes.patch - passenger-4.0.50_fix_shebang.patch - passenger-4.0.50_load_system_passenger_libs.patch - passenger-4.0.50_paths.patch - passenger-4.0.53_fix-default-temp-dir.patch- updated to version 5.0.18 see installed CHANGELOG Release 5.0.18 - ------------- * Fixes more memory corruption issues in the palloc subsystem. * Fixes memory corruption issues in the Passenger core that may occur if the application sets many response headers. The issue was caused by an off-by-one bug.- updated to version 5.0.17 see installed CHANGELOG Release 5.0.17 - ------------- * Adds packages for Ubuntu 15.10 "Wily", even though Ubuntu 15.10 hasn't been released yet. * Fixes some memory corruption issues in the palloc subsystem. Closes GH-1587. * Fixes the Node.js `PhusionPassenger.on('exit')` event. This event worked if you restart the app or detach an application process, but not if you stop Passenger. * Fixes support for `passenger_pre_start` URLs that contain very long authentication strings. This was caused by the fact that our Base64 encoder generated unexpected newlines. * [Standalone] Improves application prestarting. Application prestarting is now available in combination with the 'builtin' engine, and now works when SSL is used.- updated to version 5.0.16 see installed CHANGELOG Release 5.0.16 - ------------- * Allows independent configuration of Union Station gateway address, port and certificate. Closes GH-1543. * Supports seek() such that body.rewind works when using Rack middleware that uses Zlib::GzipReader (e.g. for compressed requests). Closes GH-1553. * [Apache] Improves detection of Apache configuration file problems. Closes GH-1577. * [Enterprise] Fixes installation of the Passenger Enterprise Apache module on Debian Testing. * Fixes logging of HTTP response code for Union Station. This regression was introduced by Passenger 5. Closes GH-1581. * Adds a new subcommand `passenger-config about support-binaries-dir`. * Fixes a regression in the Node.js loader with regard to custom startup files. This bug was introduced in 5.0.14. Closes GH-1557 (again). * Fixes a crash when a Ruby application is accessed through a sub-URI and a root virtual host at the same time.- make sure we set up /{var/,}run/passenger on install- update to version 5.0.15 - Support SHA256 digests for the Rails asset pipeline, as used by Sprockets 3.x. - Support for JRuby 9.0.0.0. Closes GH-1562. - Fixes some bugs in Union Station support, which causes some data (such as controller information and exceptions) to not be logged. - The old Users Guides have been deprecated in favor of the [Passenger Library](https://www.phusionpassenger.com/library/). The Users Guides now redirect to appropriate sections in the Passenger Library. - additional changes in 5.0.14 - [Standalone] Relative path handling has been improved. In previous versions, relative paths were not handled in a consistent manner. Relative paths are now handled consistently according to the following rules: - If a relative path is given via a command line option, then it is relative to the current working directory. - If a relative path is given via Passengerfile.json, then it is relative to Passengerfile.json. Closes GH-1557. - [Standalone] The `--disable-turbocaching` now works with the Nginx engine. - additional changes in 5.0.13 - The `passenger-config restart-app` command now supports the option `--ignore-passenger-not-running`. If this option is given, the command will exit normally instead of exiting with an error, if Passenger is not running. This option is useful in deployments involving Passenger Standalone. In an initial deployment, Passenger Standalone may not yet be running. Passing this option allows you to ignore that issue. - SELinux policy issues in the RPMs have been fixed. - [Apache] `passenger-config reopen-logs` didn't work on Apache unless you explicitly set `PassengerLogFile`. This has now been fixed. - [Standalone] Due to some internal refactorings, the Passenger Standalone Nginx configuration template has changed. If you used a custom Nginx configuration template, please merge our latest changes into it. - additional changes in 5.0.12 - [Enterprise] Fixed passenger-irb. It was broken in 5.0.10 because of the change that made using admin commands without sudo possible. - additional changes in 5.0.11 - In 5.0.10, admin tools such as `passenger-status` and `passenger-config restart-app` display an authorization error if they are run without sudo, while at the same time Passenger isn't serving any applications. Since this is confusing, they have now been modified to display a more appropriate error message. - Fixes a bug in the RPMs that prevent admin tools such as `passenger-status` and `passenger-config restart-app` from working when they are invoked without root privileges. - Fixes a bug on OS X that prevent admin tools such as `passenger-status` and `passenger-config restart-app` from detecting Passenger instance directories when they are invoked without root privileges. Closes GH-1535. - Fixes a bug that causes Passenger not to work if the HOME environment variable is not set. - Fixes compatibility with non-Rails Ruby apps that require the actionview gem. Closes GH-1547. - Fixes some non-fatal "permission denied" error that may occasionally occur if user switching is turned off. Closes GH-1541. - Relative values for the `pid_file` and `log_file` options in Passengerfile.json are now supported. - If Passengerfile.json contains a syntax error, Passenger Standalone now correctly prints an error message instead of crashing. - Sending a SIGABRT signal to a Ruby process now properly makes it terminate. - The `passenger-config restart-app` command now accepts `.` as parameter, which it will interpreter as "restart the app in the current working directory". Closes GH-1386. - [Apache] Setting `PassengerLogLevel` no longer redirects Apache's own stderr to that log file. Closes GH-1373. - [Standalone] Passenger Standalone's Nginx engine now includes the RealIP module. Closes GH-1389. - [Standalone] The `--max-preloader-idle-time` option has been added. - additional changes in 5.0.10 - It is now possible to run `passenger-status`, `passenger-config restart-app` and other admin commands without using sudo. When run without sudo, these admin commands will allow you to operate on apps and processes that are owned by the user that invoked the admin command. Closes GH-1392. - Fixes a crash introduces in 5.0.9 due to not properly initializing a variable. Closes GH-1530. - The `passenger-config reopen-logs` command now works by instructing the Watchdog process to reopen the log file, while instructing the other Passenger processes to re-inerhit the log file from the Watchdog instead of trying to reopen the log file on their own. This makes log file reopening more robust. Closes GH-1452. - `passenger-config restart-app` no longer leaves the terminal in a state with black background. Closes GH-1526. - `passenger-config admin-command` has been renamed to `passenger-config api-call` in order to avoid confusion with any potential admin interfaces that we will introduce in the future. - If Union Station support is enabled, process and system metrics weren't being sent correctly to Union Station. This has been fixed. - [Enterprise] Fixes the fact that the Passenger Enterprise RPM didn't correctly set SELinux permissions on its own files. - [Apache] passenger-install-apache2-module no longer aborts with an error if the Apache configuration file contains errors. Closes GH-1525. - [Apache] Fixes a typo that would cause passenger-install-apache2-module to crash on Red Hat and CentOS systems on which the SELinux command line tools are not installed. Closes GH-1527. - additional changes in 5.0.9 - The casing of original headers as generated by the application are now preserved, instead of being downcased. This fixes compatibility issues with broken HTTP clients. Closes GH-1436. - Internal refactoring: we've replaced libeio with libuv. This makes some of our code simpler. Closes GH-1428. - When the passenger-status tool tries to cleanup a stale instance directory, it will no longer abort with an error when it fails to do that. It will now merely print a warning. Fixes [StackOverflow question 30354732](http://stackoverflow.com/questions/30354732/cap-aborted-capistrano-aborts-rails-deploy-while-attempting-to-chown-tmp-p/30357100#30357100). - Fixes compilation problems on Solaris. - The Ruby handler has been made more robust. Previously, it was possible for applications to corrupt connections by returning incorrect Rack responses. This may cause connections to get stuck. The Rack handler has been hardened to ensure that connections will never get corrupted or stuck. Closes GH-1512. - The Ruby handler now closes the Rack response body even when the socket connection is hijacked by the application. The Rack specification is unclear about what to do in this case, and different Ruby app servers do different things. We have found that by closing the body object anyway, we maximize compatibility with existing Rack middlewares and apps, such as Rack::Lock. Background information about this issue can be found at https://github.com/ngauthier/tubesock/issues/10#issuecomment-72539461. - Fixes a crash that could occur if some HTTP request headers are present, but have the empty value. Closes GH-1524. - Fixes a permission problem that prevents the web server from communicating with Passenger when user switching is off. Closes GH-1520. - Fixes a few small one-time memory leaks in the Passenger agent. This wraps up the workitems discovered in valgrind runs on earlier versions. - Fixes use of uninitialized metrics. This could happen for a brief moment after spawning. - [Apache] If you pass the `--apxs2-path` parameter to `passenger-install-apache2-module`, and the apxs2 path that you specified is not in PATH, then the installer would think that Apache installation is broken. This has been fixed. - [Apache] A `Connection: close` header that was used for internal communication between Passenger processes was being leaked to the client, which breaks HTTP keep-alive connections. This has been fixed. Closes GH-1516. - [Nginx] The preferred Nginx version is now 1.8.0. It was previously 1.6.3. - [Nginx] Passenger now passes to the application the raw URI as sent by the client, as long as Nginx didn't modify the URI (e.g. as part of rewrite rules). This means that escaped slashes (%2F) in the URI now work correctly and out-of-the-box as long as there are no applicable rewrite rules. - [Nginx] Fixes that crash that would occur if Nginx is configured to log to syslog. And to prevent log messages from disappearing into a black hole, Passenger will now ask you to set `passenger_log_file` if Nginx is configured to log to syslog. Closes GH-1514. - [Standalone] Prevents an existing instance from being shut down if starting a new instance fails. - additional changes in 5.0.8 - We now supply Debian 8 and Ubuntu 15.04 packages. Closes GH-1494 and GH-1400. - We now supply Red Hat 6, Red Hat 7, CentOS 6 and CentOS 7 packages. - We no longer supply Ubuntu 10.04 packages because Ubuntu 10.04 is no longer supported by Canonical. - Fixes a Passenger crash (SIGSEGV) that occurs occasionally when out-of-band garbage collection is enabled. Closes GH-1469. - Fixes a Passenger crash (SIGSEGV) that occurs occasionally with redirects to relative URLs. Closes GH-1513. - Fixes cases when Passenger shuts down more processes than is allowed by the `min_instances` limit. Closes GH-1500. - Fixes "Bad Gateway" errors that would occur when an application sets the X-Sendfile or X-Accel-Redirect header, together with a non-empty response body. Closes GH-1498. - Fixes the fact that Passenger agent processes don't lower their privilege when user switching is turned off. - Fixes autodetection of Apache on Gentoo. Closes GH-1510. - Fixes compilation problems on Solaris. Closes GH-1508. - [Standalone] Adds the `--pool-idle-time` command line parameter. - [Standalone] Adds the `--auto` command line parameter for running non-interactively. This supresses prompts. Closes GH-1511.- update to version 5.0.7 - Supports changed way of specifying settings for (non-bundled) Meteor apps. Closes GH-1403. - Fixes an integer-to-string conversion bug in the code responsible for buffering chunked request bodies. This bug could cause the PassengerAgent to crash due to an exception. Thanks to Marcus Rückert of SUSE for reporting this. - Request-specific environment variables are no longer cached. This fixes a number of issues, such as Shibboleth not working properly and conflicts between HTTPS and non-HTTPS virtual hosts. Closes GH-1472. - Fixes a memory corruption bug that would be triggered when using `passenger_base_uri`. The memory corruption bug resided in the code for resolving symlinks. Closes GH-1388. - Re-introduced signal catchers during shutdown, to allow clean shutdown in Foreman. Closes GH-1454. - `passenger-status --show=xml` no longer outputs the non-XML header by default. This fixes a regression as reported in a comment in GH-1136. - Passenger now prefers to load Rack and Bundler from RubyGems instead of from `vendor_ruby`. This solves some issues with Rack and Bundler on Debian systems. Closes GH-1480 and GH-1478. - The turbocache no longer caches responses that contain the `X-Sendfile` or the `X-Accel-Redirect` header. - The preferred Nginx version has been upgraded to 1.6.3. - The logging agent no longer aborts with an error if one of the Passenger root directory's parent directories is not world-executable. Closes GH-1487. - [Standalone] It is now possible to configure the Ruby, Node.js and Python executable to use in Passenger Standalone through the command line options --ruby, --nodejs and --python. Closes GH-1442. - [Standalone] Running `passenger start --engine=builtin - -daemonize` would fail with a timeout error. This has been fixed. - [Standalone] Running `passenger start --nginx-version=XXX` would crash. This has been fixed. Closes GH-1490. - [Apache] Fixed some issues with X-Sendfile. Closes GH-1376. - [Apache] If the installer fails to autodetect Apache while the installer is running as a normal user, it will now ask you to give it root privileges. Closes GH-1289. - [Apache] The installer now validates your Apache configuration file to check for common problems. The validator can also be accessed separately by running `passenger-config validate-install --validate-apache2`. - [Nginx] Introduces the `passenger_read_timeout` option for rare cases when server needs more than the default 10 minute timeout. Contributed by pkmiec. Closes [GH-PR-34](https://github.com/phusion/passenger/pull/34). - [Nginx] The Nginx module now looks for index.html if the path ends in / so that it works intuitively, without needing to use try_files. - Fixes wrong memory address display in crash dumps. Thanks to thoughtpolice for pointing it out. - Fixes an ugly backtrace that would be shown if an invalid request is made to an application process using the private HTTP interface. Contributed by jbergler. Closes GH-1311. - Various documentation improvements. Closes [GH-PR-1332](https://github.com/phusion/passenger/pull/1332), [GH-PR-1354](https://github.com/phusion/passenger/pull/1354), [GH-PR-1216](https://github.com/phusion/passenger/pull/1216), [GH-PR-1385](https://github.com/phusion/passenger/pull/1385), [GH-PR-1302](https://github.com/phusion/passenger/pull/1302). - drop 3cd918c27e7015d5e60106f4574ea439fc4a16da.patch: included in update- update to passenger-4.0.50_load_system_passenger_libs.patch: we still had 2 places that tried to load the libraries from the relative path instead of the installed library. - pull 3cd918c27e7015d5e60106f4574ea439fc4a16da.patch until 5.0.7 is released- use intree libebio as well. our system copy seems to be broken.- Fix temp directory path in mod_passenger.conf- use intree libev again. according to passenger upstream it is patched with things they need which are not in upstream libev.- update to version 5.0.6 - The turbocache no longer caches responses for which the Cache-Control header contains "no-cache". Please note that "no-cache" does not mean "do not cache this response". Instead, it means "any caching servers may only serve the cached response after validating it". Since the turbocache does not support validation, we've chosen to skip caching instead. Coincidentally, this change "fixes" problems with applications that erroneously use "no-cache" as a flag for "do not cache this response". What these applications should actually use is "no-store". We recommend the developers of such applications to change their caching headers in this manner, because even if Passenger doesn't unintentionally cache the response, any intermediate proxies that visitors are behind may still cache the response. - Fixes a number of memory leaks. Memory was leaked upon processing a request with multiple headers, upon processing a response with multiple headers, and upon processing a response with Set-Cookie headers. Every time such a request or response was processed, 512 bytes of memory was leaked due to improperly dereferencing relevant memory buffers. Closes GH-1455. - Fixes various bugs related to Union Station data collection. Union Station is our upcoming application analytics and performance monitoring SaaS platform. It is opt-in: no data is collected unless you turn the feature on. - Fixes a Union Station-related file descriptor leak. Closes GH-1439. - Fixes some bugs w.r.t. use of uninitialized memory. - More informative error message if a support binary is not found, including a resolution hint. Closes GH-1395. - [Apache] `SetEnv` variables are now passed as Rack/CGI/request variables. This was also the case in Passenger 4, but not in Passenger 5.0.0-5.0.5. We've restored the old behavior because the behavior in 5.0.0-5.0.5 breaks certain Apache modules such as Shibboleth. Closes GH-1446. - [Standalone] PID and log files now correctly created if user specifies relative path.- updated to version 5.0.5 - Fixes various crashes due to use of uninitialized memory. One such crash is documented in GH-1431. - Fixes a connection stall in the Apache module. Closes GH-1425. - Fixes a potential read-past-buffer bug in string-to-integer conversion routines. Thanks to dcb314 for spotting this. Closes GH-1441. - Fixes a compilation problem on Solaris. This problem was caused by the fact that `tm_gmtoff` is not supported on that platform. Closes GH-1435. - There is now an API endpoint for force disconnecting a client: `passenger-config admin-command DELETE /server/.json`. Closes GH-1246. - Fixes some file descriptor leaks. These leaks were caused by the fact that keep-alive connections with application processes were not being closed properly. Closes GH-1439. - In order to more easily debug future file descriptor leaks, we've introduced the `PassengerFileDescriptorLogFile` (Apache) and `passenger_file_descriptor_log_file` (Nginx) config options. This allows Passenger to log all file descriptor open/close activity to a specific log file. - The `PassengerDebugLogFile` (Apache) and `passenger_debug_log_file` (Nginx) configuration options have been renamed to `PassengerLogFile` and `passenger_log_file`, respectively. The old name is support supported for backward compatibility reasons. - [Enterprise] Fixes a bug in Flying Passenger's `--instance-registry-dir` command line parameter. This command line parameter didn't do anything. - [Enterprise] The Flying Passenger daemon no longer supports the `--max-preloader-idle-time` config option. This is because the config option never worked. The correct way to set the max preloader idle time is through the Nginx config option, but this was wrongly documented, so the documentation has been fixed. - adapted several patches- use new ruby-find-versioned script and make it build on 1.8- updated to version 5.0.4 * Fixes a compilation problem introduced in 5.0.3.- updated to version 4.0.59- fix default tmp dir in code, matching our default configs- make it easier to run apps not under wwwrun:www by setting /run/passenger to root:root and 1777.- update to 4.0.53 - Upgraded the preferred Nginx version to 1.6.2. - Improved RVM gemset autodetection. - Fixed some Ruby 2.2 compatibility issues. - changes in 4.0.52 - Fixed a null termination bug when autodetecting application types. - Node.js apps can now also trigger the inverse port binding mechanism by passing `'/passenger'` as argument. This was introduced in order to be able to support the Hapi.js framework. Please read http://stackoverflow.com/questions/20645231/phusion-passenger-error-http-server-listen-was-called-more-than-once/20645549 for more information regarding Hapi.js support. - It is now possible to abort Node.js WebSocket connections upon application restart. Please refer to https://github.com/phusion/passenger/wiki/Phusion-Passenger:-Node.js-tutorial#restarting_apps_that_serve_long_running_connections for more information. Closes GH-1200. - Passenger Standalone no longer automatically resolves symlinks in its paths. - `passenger-config system-metrics` no longer crashes when the system clock is set to a time in the past. Closes GH-1276. - `passenger-status`, `passenger-memory-stats`, `passenger-install-apache2-module` and `passenger-install-nginx-module` no longer output ANSI color codes by default when STDOUT is not a TTY. Closes GH-487. - `passenger-install-nginx-module --auto` is now all that's necessary to make it fully non-interactive. It is no longer necessary to provide all the answers through command line parameters. Closes GH-852. - Minor contribution by Alessandro Lenzen.- remove .o files- it seems we need the buildout part for the agents- fixed paths to some scripts: - added passenger-4.0.50_paths.patch: - patch paths to match our configs - no longer copy the bin dir to the %{_libdir}/passenger/%{version} - copy the agents directory directly without the buildout part in the target directoryobs-power8-04 1684754538  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno6.0.17-bp155.1.56.0.17-bp155.1.5      !!!!!!!!!!!!! "####"$$$$$$$$$$$$$$$$$$%&&&&&%'''''''''''%((((((((%)))))%*****%++++++%,,,,,,%------%............%///////////%00000000%111111111%2222222222222%33333333%444444444444444444%5555555555%6666666666666%77%888888%9999999999%:::::::::::::::::::::::::::::::::%%%%%%%;;;;<=<><?<@<ABAAAAAA<C<D<E<F<G<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<HHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIJIIIIIIIIIIIIIIIIIIIIIIIIKLKKKKKKKKKKKKKKKMNMMMMMMMMMMOPPPPOOOOOOOOOQQQQQQQQQQQQQQQQQQQQQQQQQRRSTUUUUUUUUUUUUUUTTTTTTTTTTTTSVWWWWWWWWWVXXXXXXXXXXXXXXXXXXXXXXXXXXXXXVVVVSYSZZSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS[[[[[[[\\\\\\]]]]^_____^```````````^abcbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaadefgfffffffffffffffehhhhheijiiiiiiiiiiiiiiiiiiiekkkkelmmmmmmmmmmmmmmlnnnnnnnnnnnnnnnnnnnnnnllllllllllllllllllllllllllllllleoooooooooepppppppppeqqeeeeeeeersssssrtttttttttttttttttruuuuuuurvwwwvxxxvvvvvvvryyyyyyyyyyyyyyrzzzzzzzzzzzzr{||||||||||||||||{{{{{{{{{{{{{{{r}}}}}}r~~~~rrrrrrrrrrrrrrrrrrrrrr                   !!! "#passenger-6.0.17riAddr2linecdesc-Addr2line.riclose-i.rinew-c.ripid-i.riquery-i.ristdin-i.ristdout-i.riCommonLibraryBuilderRakecdesc-Rake.riall_components-i.riapply_selector-i.ricategory_complete%3f-i.ricdesc-CommonLibraryBuilder.ricomponent_satisfies_condition%3f-i.ridefine_category_tasks-i.ridefine_component-i.ridefine_object_compilation_task-i.ridefine_tasks-i.rienable_optimizations%21-i.riexclude%21-i.riexclude-i.rigroup_all_components_by_category-i.riinitialize_copy-i.rilink_objects-i.rilink_objects_as_string-i.rilocate_source_file-i.rinew-c.riobject_filenames_for-i.rionly%21-i.rionly-i.rioutput_dir-i.riselected_categories-i.riselected_components-i.riselected_objects_belonging_to_category-i.riset_namespace%21-i.riset_namespace-i.riset_output_dir%21-i.riset_output_dir-i.riCrashWatchAppcdesc-App.rirun-i.riErrorcdesc-Error.riGdbBrokencdesc-GdbBroken.riGdbControllerExitInfobacktrace-i.ricdesc-ExitInfo.riexit_code-i.rinew-c.risignal-i.risignaled%3f-i.risnapshot-i.riall_threads_backtraces-i.riattach-i.ricdesc-GdbController.riclose%21-i.riclose-i.riclosed%3f-i.ricurrent_thread-i.ricurrent_thread_backtrace-i.ridebug-i.riexecute-i.rifind_gdb-i.rinew-c.riprogram_counter-i.riwait_until_exit-i.riGdbNotFoundcdesc-GdbNotFound.riLldbControllerExitInfobacktrace-i.ricdesc-ExitInfo.riexit_code-i.rinew-c.risignal-i.risignaled%3f-i.risnapshot-i.riall_threads_backtraces-i.riattach-i.ricdesc-LldbController.riclose%21-i.riclose-i.riclosed%3f-i.ricurrent_thread-i.ricurrent_thread_backtrace-i.ridebug-i.riexecute-i.rifind_lldb-i.rinew-c.riprogram_counter-i.riLldbNotFoundcdesc-LldbNotFound.riUtilscdesc-Utils.ricommand_installed%3f-i.rifind_signal_name-i.rigdb_installed%3f-i.riincluded-c.rilldb_installed%3f-i.ripopen_command-i.ricdesc-CrashWatch.riDircdesc-Dir.rilogical_pwd-c.riExceptionbacktrace_string-i.ricdesc-Exception.riFileabsolute_logical_path-c.ricdesc-File.riGCcdesc-GC.ricopy_on_write_friendly%3f-c.riIOFcntlcdesc-Fcntl.ricdesc-IO.riclose_on_exec%21-i.riwritev-i.riwritev2-i.riwritev3-i.riObjectcdesc-Object.ridebug-i.ridownload-i.riescape-c.rijoin-c.ripassthrough-i.rireally_download-i.riruby2_keywords-i.riPhusionPassengerAbstractInstallerAbortcdesc-Abort.riCommandErrorcdesc-CommandError.riafter_install-i.ribefore_install-i.ricdesc-AbstractInstaller.richeck_dependencies-i.richeck_directory_accessible_by_web_server-i.richeck_gem_install_permission_problems-i.richeck_whether_os_is_broken-i.richeck_whether_system_has_enough_ram-i.ridependencies-i.ridownload-i.rihome_dir-i.riinstall_doc_url-i.riinteractive%3f-i.riline-i.rilist_parent_directories-i.rinew-c.rinew_screen-i.rinon_interactive%3f-i.riprint-i.riprompt-i.riprompt_confirmation-i.riprompt_confirmation_with_default-i.riputs-i.riputs_error-i.rirake%21-i.rirake-i.rirender_template-i.rirun-i.rish%21-i.rish-i.rishow_support_options_for_installer_bug-i.ritroubleshooting_doc_url-i.riuse_stderr-i.riwait-i.riworld_executable%3f-i.riAdminToolsInstanceCorruptedErrorcdesc-CorruptedError.rias_json-i.ricdesc-Instance.richeck-i.ricore_pid-i.rifull_admin_password-i.rihttp_request-i.rilocked%3f-i.riname-i.rinew-c.ripath-i.riprocess_is_alive%3f-i.riproperties-i.riread_only_admin_password-i.rireload_properties-i.rireload_properties_internal-i.riserver_software-i.ristale%3f-i.ristate-i.riwatchdog_alive%3f-i.riwatchdog_pid-i.riweb_server_control_process_pid-i.riInstanceRegistrycdesc-InstanceRegistry.ricleanup-i.ridefault_paths-i.rifind_by_name-i.rifind_by_name_prefix-i.rifind_by_watchdog_pid-i.rilist-i.rinew-c.ristring_env-i.riMemoryStatsProcesscdesc-Process.ricpu-i.riname-i.ripid-i.rippid-i.riprivate_dirty_rss-i.riprivate_dirty_rss_in_mb-i.rirss-i.rirss_in_mb-i.rithreads-i.rito_a-i.rivm_size-i.rivm_size_in_mb-i.riapache_processes-i.ricdesc-MemoryStats.ridetermine_private_dirty_rss-i.riforce_binary-i.rilist_processes-i.ringinx_processes-i.rios_name_simple-i.ripassenger_processes-i.riplatform_provides_private_dirty_rss_information%3f-i.riroot_privileges_required_for_private_dirty_rss%3f-i.rishould_show_private_dirty_rss%3f-i.risum_memory_usage-i.risystem_ram_usage-i.ricdesc-AdminTools.riprocess_is_alive%3f-c.ritmpdir-c.riApache2ConfigUtilscdesc-ConfigUtils.riinitialize%21-c.riset_field_defaults-c.risort-c.ricdesc-Apache2.riAppadvertise_port-c.riadvertise_readiness-c.riapp-c.ricdesc-App.ricreate_server-c.riinit_logging-c.riinit_passenger-c.riload_app-c.rinegotiate_spawn_command-c.rioptions-c.riping_port-c.ripreload_app-c.riread_startup_arguments-c.rirecord_journey_step_begin-c.rirecord_journey_step_end-c.rireinitialize_std_channels-c.ritry_write_file-c.riwait_for_exit_message-c.riConfigAboutCommandcdesc-AboutCommand.ricommon_dynamic_library-i.ricommon_library-i.rihelp-c.rirun-i.riAgentCompilerafter_install-i.ribefore_install-i.ricdesc-AgentCompiler.richeck_source_code_available%21-i.ricompile_agent-i.riconfirm_enable_optimizations-i.ridependencies-i.riinstall_doc_url-i.rirun_steps-i.ritotal_ram_gb-i.ritroubleshooting_doc_url-i.riApiCallCommandcdesc-ApiCallCommand.ricreate_default_options-c.ricreate_option_parser-c.riinfer_socket_path_and_credentials-i.riinitialize_objects-i.riinvoke-i.riprint_headers-i.rirun-i.riBuildNativeSupportCommandcdesc-BuildNativeSupportCommand.ricreate_option_parser-c.rihelp-i.riparse_options-i.rirun-i.riCommandcdesc-Command.ricreate_default_options-c.rinew-c.riparse_options-i.rirun_and_get_exit_code-i.riCompileAgentCommandcdesc-CompileAgentCommand.ricreate_option_parser-c.rihelp-i.riinitialize_objects-i.rirun-i.risanity_check-i.riCompileNginxEngineCommandcdesc-CompileNginxEngineCommand.ricreate_option_parser-c.rihelp-i.riinitialize_objects-i.rirun-i.risanity_check-i.riDetachProcessCommandcdesc-DetachProcessCommand.ricreate_option_parser-c.rihelp-i.riparse_options-i.riperform_detach-i.rirun-i.riDownloadAgentCommandcdesc-DownloadAgentCommand.ricompile_tip_message-i.ricreate_option_parser-c.ridownload_and_extract-i.ridownload_support_file-i.rihelp-i.riinitialize_objects-i.riprint_installation_error_header-i.rireal_download_support_file-i.rirun-i.risanity_check-i.ritest_binary-i.riDownloadNginxEngineCommandcdesc-DownloadNginxEngineCommand.ricompile_tip_message-i.ricreate_option_parser-c.ridownload_and_extract-i.ridownload_support_file-i.rihelp-i.riinitialize_objects-i.rireal_download_support_file-i.rirun-i.risanity_check-i.ritest_binary-i.riInstallAgentCommandcdesc-InstallAgentCommand.ricompile-i.ricreate_option_parser-c.ridownload-i.rihelp-i.riinitialize_objects-i.rirun-i.risanity_check-i.riInstallStandaloneRuntimeCommandcdesc-InstallStandaloneRuntimeCommand.ricompile_nginx_engine-i.ricreate_option_parser-c.ridownload_nginx_engine-i.rihelp-i.riinitialize_objects-i.riinstall_agent-i.rirun-i.risanity_check-i.riInstallationUtilscdesc-InstallationUtils.richeck_for_download_tool%21-i.ricreate_user_support_binaries_dir%21-i.ridirectory_writable%3f-i.rifind_or_create_writable_support_binaries_dir%21-i.rifind_or_create_writable_user_support_binaries_dir%21-i.riincluded-c.rimkdir_p_preserve_parent_owner-i.rimyself-i.riprint_installation_error_header-i.rirake-i.rirender_template-i.rirun_rake_task%21-i.riListInstancesCommandcdesc-ListInstancesCommand.ricreate_option_parser-c.rihelp-i.riparse_options-i.riprint_instances-i.riprint_json-i.riprint_no_instances_running-i.rirun-i.riNginxEngineCompilerafter_install-i.ribefore_install-i.ricdesc-NginxEngineCompiler.richeck_precompiled_support_libs_available%21-i.richeck_source_code_available%21-i.ricompile_nginx-i.ricompile_support_libraries-i.riconfigure_and_compile_nginx-i.riconfigure_nginx-i.riconfigure_script_options-c.ridependencies-i.ridetermine_support_libraries-i.ridownload_and_extract_nginx_sources-i.riinstall_doc_url-i.rirun_command_yield_activity-i.rirun_steps-i.rishow_possible_solutions_for_download_and_extraction_problems-i.ritroubleshooting_doc_url-i.riReopenLogsCommandcdesc-ReopenLogsCommand.ricreate_option_parser-c.rihandle_error-i.riperform_reinherit_logs_on-i.riperform_reopen_logs-i.riperform_reopen_logs_on-i.riperform_reopen_logs_on_nginx-i.rirun-i.rishould_ignore_error%3f-i.riusing_standalone_nginx_engine%3f-i.riRestartAppCommandabort_app_not_found-i.ricdesc-RestartAppCommand.ricreate_option_parser-c.rihelp-i.riparse_options-i.riperform_restart-i.riquery_group_names-i.riquery_pool_json-i.rirun-i.riselect_app_group_name-i.riselect_app_group_name_by_app_root_regex-i.riselect_app_group_name_exact-i.riselect_app_group_name_interactively-i.riSystemMetricsCommandcdesc-SystemMetricsCommand.rirun-i.riSystemPropertiesCommandcdesc-SystemPropertiesCommand.ridefault_ip-i.rifqdn-i.riip_addresses-i.rios-i.rirun-i.riUtilscdesc-Utils.ricomplain_that_multiple_passenger_instances_are_running-i.riincluded-c.riis_enterprise%3f-i.rilist_all_passenger_instances-i.riprint_full_admin_command_permission_error-i.riprint_instance_querying_permission_error-i.riselect_passenger_instance-i.ritry_performing_full_admin_basic_auth-i.ritry_performing_ro_admin_basic_auth-i.riValidateInstallCommandask_what_to_validate-i.ricdesc-ValidateInstallCommand.richeck_apache2_installed-i.richeck_apache2_load_module_config-i.richeck_error-i.richeck_no_other_installs_in_path-i.richeck_ok-i.richeck_tools_in_path-i.richeck_warning-i.richeck_whether_there_are_multiple_apache_installs-i.richecking-i.ricreate_default_options-c.ricreate_option_parser-c.ridisplay_separator-i.rigem_bindir-i.rihomebrew_bindir-i.riinitialize_apache_envvars-i.rilog-i.rilogn-i.riprepare-i.riprepare_terminal-i.riprompt-i.riprompt_confirmation-i.rirbenv_shims_dir-i.rireindent-i.rireset_terminal-i.riruby_command-i.rirun-i.risudo_s_e-i.risuggest-i.risummarize-i.ritry_realpath-i.riunindent-i.ricdesc-Config.rihelp-c.rihelp_all_requested%3f-c.rihelp_requested%3f-c.rilookup_command_class_by_argv-c.rilookup_command_class_by_class_name-c.rirun%21-c.riConsoleTextTemplate%5b%5d%3d-i.ricdesc-ConsoleTextTemplate.rinew-c.riresult-i.riDaemonControllerAlreadyStartedcdesc-AlreadyStarted.riConnectErrorcdesc-ConnectError.riDaemonizationTimeoutcdesc-DaemonizationTimeout.riErrorcdesc-Error.riLockFileAlreadyLockedcdesc-AlreadyLocked.ricdesc-LockFile.riexclusive_lock-i.rinew-c.rishared_lock-i.ritry_exclusive_lock-i.ritry_shared_lock-i.riStartErrorcdesc-StartError.riStartTimeoutcdesc-StartTimeout.riStopErrorcdesc-StopError.riStopTimeoutcdesc-StopTimeout.riTimeoutErrorcdesc-TimeoutError.ribefore_start-i.rican_ping_unix_sockets%3f-c.ricdesc-DaemonController.richeck_pid-i.riconnect-i.ridaemon_is_running%3f-i.ridaemonization_timed_out-i.ridelete_pid_file-i.ridetermine_lock_file-i.ridifferences_in_log_file-i.rifork_supported%3f-c.riinterruptable_waitpid-i.riis_std_channel_chardev%3f-i.rikill_daemon-i.rikill_daemon_with_signal-i.rilog_file_has_changed%3f-i.rinew-c.rino_activity%3f-i.ripid-i.ripid_file_available%3f-i.riping_socket-i.riping_tcp_socket-i.riread_pid_file-i.rirecord_activity-i.rirestart-i.riruby_interpreter-i.rirun_command-i.rirun_command_while_capturing_output-i.rirun_command_without_capturing_output-i.rirun_ping_command-i.rirunning%3f-i.risafe_fork-i.risave_log_file_information-i.rishould_capture_output_while_running_command%3f-i.rispawn_daemon-i.rispawn_supported%3f-c.ristart-i.ristart_timed_out-i.ristart_without_locking-i.ristop-i.riwait_until-i.riwait_until_daemon_responds_to_ping_or_has_exited_or_log_file_has_changed-i.riwait_until_pid_file_is_available_or_log_file_has_changed-i.riDebugLogging_log_device-c.ri_output-c.ri_output-i.ricdesc-DebugLogging.ridebug-c.ridebug-i.rierror-c.rierror-i.riincluded-c.riinfo-c.riinfo-i.rilog_file%3d-c.rilog_level%3d-c.rilog_level-c.rinotice-c.rinotice-i.ristderr_evaluator%3d-c.ritrace-c.ritrace-i.riwarn-c.riwarn-i.riLoaderSharedHelpersabout_to_abort-i.riactivate_gem-i.riadvertise_readiness-i.riadvertise_sockets-i.riafter_handling_requests-i.riafter_loading_app_code-i.riattach_problem_description_html_to_exception-i.riattach_solution_description_html_to_exception-i.ribefore_handling_requests-i.ribefore_loading_app_code_step1-i.ribefore_loading_app_code_step2-i.ricdesc-LoaderSharedHelpers.richeck_execution_environment_solution_description-i.richeck_rvm_using_wrapper_script-i.ricreate_socket_address-i.ridump_all_information-i.ridump_envvars-i.ridump_ruby_environment-i.rie;cdesc-e;.riexit_code_for_exception-i.riformat_exception-i.rih-i.rihome_dir-i.riinit-i.riis_ruby_program%3f-i.riload_macos_foundation-i.rimaybe_make_path_relative_to_app_root-i.riread_startup_arguments-i.rirecord_advanced_problem_details-i.rirecord_and_print_error_summary-i.rirecord_and_print_exception-i.rirecord_error_category-i.rirecord_error_category_based_on_exception-i.rirecord_error_summary-i.rirecord_journey_step_begin-i.rirecord_journey_step_end-i.rirecord_problem_description_html-i.rirecord_solution_description_html-i.rirun_block_and_record_step_progress-i.rirun_load_path_setup_code-i.rirunning_bundler-i.ritry_write_file-i.riwhoami-i.riMessageChannelInvalidHashErrorcdesc-InvalidHashError.ricdesc-MessageChannel.richeck_argument-i.riclose-i.riclosed%3f-i.rifileno-i.riio-i.rinew-c.rinew_buffer-i.riread-i.riread_hash-i.riread_scalar-i.rirecv_io-i.risend_io-i.riwrite-i.riwrite_scalar-i.riMessageClientProtocolErrorcdesc-ProtocolError.riauto_disconnect-i.ricdesc-MessageClient.riclose-i.riconnected%3f-i.rinew-c.riread-i.riread_scalar-i.rirecv_io-i.riwrite-i.riwrite_scalar-i.riNativeSupportFileSystemWatcher_new-c.ricdesc-FileSystemWatcher.riclose-i.riwait_for_change-i.ricdesc-NativeSupport.ridetach_process-c.ridisable_stdio_buffering-c.rifreeze_process-c.riprocess_times-c.risplit_by_null_into_hash-c.riwritev-c.riwritev2-c.riwritev3-c.riNativeSupportLoaderarchdir-i.ricdesc-NativeSupportLoader.ricompile-i.ricompile_and_load-i.ricurrent_user_name_or_id-i.ridownload-i.ridownload_binary_and_load-i.riextconf_rb-i.riinstallation_target_dirs-i.rilibext-i.rilibrary_name-i.riload_from_buildout_dir-i.riload_from_home_dir-i.riload_from_load_path-i.riload_from_native_support_output_dir-i.riload_native_extension-i.rilog-i.rimkdir-i.rireal_download-i.rish-i.rish_nonfatal-i.ristart-i.risupported%3f-c.ritry_directories-i.ritry_load-i.riPackagingcdesc-Packaging.rifiles-c.riPlatformInfoApacheDetectorResulta2dismod-i.ria2enmod-i.riapxs2-i.ricdesc-Result.riconfig_file-i.riconfig_file_broken%3f-i.riconfig_file_broken-i.rictl-i.rierror_log-i.rihttpd-i.rilog-i.rinew-c.rireport-i.riversion-i.riadd_result-i.ricdesc-ApacheDetector.ridetect_all-i.ridetect_one-i.rifinish-i.rilog-i.rinew-c.riremove_symlink_duplications-i.rireport-i.riresult_for-i.riresults-i.ritry_realpath-i.riDepcheckConsoleRunneradd-i.ricdesc-ConsoleRunner.richeck_all-i.rimissing_dependencies-i.rinew-c.riprint_installation_instructions_for_missing_dependencies-i.riputs-i.riputs_detail-i.riputs_header-i.riDependencyappend_install_instructions-i.riapt_get_install-i.ribrew_install-i.ribrew_link-i.ricdesc-Dependency.richeck-i.richeck_for_command-i.richeck_for_header-i.richeck_for_ruby_library-i.richeck_for_ruby_tool-i.richeck_syntax_aspect-i.ridefine_checker-i.riemerge-i.rifind_command-i.rigem_command-i.rigem_install-i.riinstall_comments-i.riinstall_instructions-i.riinstall_osx_command_line_tools-i.rilinux_distro_tags-i.rilocate_ruby_tool-i.riname-i.rinew-c.rion-i.riruby_command-i.riurpmi-i.riwebsite-i.riwebsite_comments-i.riyum_install-i.ricdesc-Depcheck.ridefine-c.rifind-c.riload-c.riRuntimeErrorcdesc-RuntimeError.riVersionComparer%3c%3d%3e-i.ricdesc-VersionComparer.ria2dismod-c.ria2enmod-c.riaddress_sanitizer_flag-c.riapache2_bindir-c.riapache2_module_c_or_cxxflags-c.riapache2_module_cflags-c.riapache2_module_cxx_ldflags-c.riapache2_module_cxxflags-c.riapache2_modulesdir-c.riapache2_sbindir-c.riapache2ctl-c.riapache2ctl_V-c.riapr_c_ldflags-c.riapr_cflags-c.riapr_config-c.riapr_config_needed_for_building_apache_modules%3f-c.riapr_cxx_ldflags-c.riapr_cxxflags-c.riapu_c_ldflags-c.riapu_cflags-c.riapu_config-c.riapu_cxx_ldflags-c.riapu_cxxflags-c.riapxs2-c.riapxs2_needed_for_building_apache_modules%3f-c.ricache_dir%3d-c.ricache_dir-c.ricc-c.ricc_block_support_ok%3f-c.ricc_is_clang%3f-c.ricc_is_gcc%3f-c.ricc_is_sun_studio%3f-c.ricc_or_cxx_supports_blocks%3f-c.ricc_or_cxx_supports_feliminate_unused_debug%3f-c.ricc_supports_feliminate_unused_debug%3f-c.ricc_supports_fno_limit_debug_info_flag%3f-c.ricc_supports_no_tls_direct_seg_refs_option%3f-c.ricc_supports_visibility_flag%3f-c.ricc_supports_wno_attributes_flag%3f-c.ricc_supports_wno_missing_field_initializers_flag%3f-c.ricc_visibility_flag_generates_warnings%3f-c.ricdesc-PlatformInfo.richeck_hash_map-c.richeck_unordered_map-c.riclear_memoizations-c.ricompiler_supports_architecture%3f-c.ricompiler_supports_wno_ambiguous_member_template%3f-c.ricpu_architectures-c.ricreate_compiler_command-c.ricreate_temp_file-c.ricrypto_extra_cflags-c.ricrypto_libs-c.ricurl_flags-c.ricurl_libs-c.ricurl_supports_ssl%3f-c.ricxx-c.ricxx_11_flag-c.ricxx_binary_compatibility_id-c.ricxx_block_support_ok%3f-c.ricxx_is_clang%3f-c.ricxx_is_gcc%3f-c.ricxx_is_sun_studio%3f-c.ricxx_supports_feliminate_unused_debug%3f-c.ricxx_supports_fno_limit_debug_info_flag%3f-c.ricxx_supports_no_tls_direct_seg_refs_option%3f-c.ricxx_supports_visibility_flag%3f-c.ricxx_supports_wno_attributes_flag%3f-c.ricxx_supports_wno_format_nonliteral_flag%3f-c.ricxx_supports_wno_missing_field_initializers_flag%3f-c.ricxx_supports_wno_unused_local_typedefs_flag%3f-c.ricxx_visibility_flag_generates_warnings%3f-c.ridebugging_cflags-c.ridebugging_cxxflags-c.ridefault_cc-c.ridefault_cxx-c.ridefault_extra_c_or_cxxflags-c.ridefault_extra_cflags-c.ridefault_extra_cxxflags-c.ridefault_network_interface_bsd_for_ip_type-c.ridefault_network_interface_linux_for_ip_type-c.ridefault_network_interfaces-c.ridetect_compiler_type_name-c.ridetect_language_extension-c.ridetermine_apr_c_info-c.ridetermine_apr_cxx_info-c.ridetermine_apr_info-c.ridetermine_apu_c_info-c.ridetermine_apu_cxx_info-c.ridetermine_apu_info-c.rienv_defined%3f-c.riexpand_apache2_glob-c.riexport_dynamic_flags-c.rifind_all_commands-c.rifind_apache2_executable-c.rifind_command-c.rifind_header-c.rifind_system_command-c.rigem_command-c.rigem_install_requires_sudo%3f-c.rignu_make-c.rihas_accept4%3f-c.rihas_alloca_h%3f-c.rihas_dl_library%3f-c.rihas_math_library%3f-c.rihas_rt_library%3f-c.rihttpd-c.rihttpd_actual_error_log-c.rihttpd_architecture_bits-c.rihttpd_default_config_file-c.rihttpd_default_error_log-c.rihttpd_default_root-c.rihttpd_envvars_file-c.rihttpd_included_config_files-c.rihttpd_infer_envvar-c.rihttpd_mods_available_directory-c.rihttpd_mods_enabled_directory-c.rihttpd_version-c.riin_rvm%3f-c.riis_ruby_program%3f-c.rilibrary_extension-c.rilinux_distro-c.rilinux_distro_tags-c.rilocate_ruby_tool-c.rilocate_ruby_tool_by_basename-c.rilog-c.rilog_implementation%3d-c.rilog_implementation-c.rimake-c.rimemoize-c.rinetwork_interfaces-c.rinetwork_interfaces_bsd-c.rinetwork_interfaces_linux-c.riopenssl_extra_cflags-c.riopenssl_extra_ldflags-c.rios_name_full-c.rios_name_simple-c.rios_version-c.riparse_bsd_or_linux_ifconfig_flags-c.ripassenger_needs_ruby_dev_header%3f-c.ripcre_extra_cflags-c.ripcre_extra_ldflags-c.riportability_c_ldflags-c.riportability_c_or_cxx_ldflags-c.riportability_cxx_ldflags-c.riprivate_class_method-c.rirake-c.rirake_command-c.rirb_config-c.riread_file-c.rireindent-c.rirequires_no_tls_direct_seg_refs%3f-c.rirspec-c.riruby_command-c.riruby_executable-c.riruby_extension_binary_compatibility_id-c.riruby_sudo_command-c.riruby_sudo_shell_command-c.riruby_supports_fork%3f-c.riruby_tool_command-c.rirun_compiler-c.rirvm_installation_mode-c.rirvm_paths-c.rirvm_ruby_string-c.riscan_for_included_apache2_config_files-c.riselect_executable-c.ristring_env-c.risupports_flock%3f-c.risupports_lfence_instruction%3f-c.risupports_sfence_instruction%3f-c.ritmpdir-c.ritmpexedir-c.ritransform_according_to_ruby_exec_format-c.ritry_compile-c.ritry_compile_and_run-c.ritry_compile_with_warning_flag-c.ritry_link-c.riuname_command-c.riunescape_apache_config_value-c.riunescape_c_string-c.riunindent-c.riverbose%3d-c.riverbose%3f-c.riwindows_subsystem%3f-c.rixcode_select_version-c.rizlib_flags-c.rizlib_libs-c.riPlugincall_hook-c.ricall_hook-i.ricdesc-Plugin.riload-c.rinew-c.riregister-c.riregister_hook-c.riPreloaderSharedHelpersaccept_and_process_next_client-i.riadvertise_sockets-i.ricdesc-PreloaderSharedHelpers.rihandle_spawn_command-i.riinit-i.rirun_main_loop-i.riProgressBarcdesc-ProgressBar.rifinish-i.rinew-c.riset-i.riRackOutOfBandGccall-i.ricdesc-OutOfBandGc.riinitialize_legacy-i.riinitialize_with_options-i.rinew-c.riThreadHandlerExtensionbytesize-i.ricdesc-ThreadHandlerExtension.richunk_data-i.riclose_body-i.rigenerate_headers_array-i.rilookup_header-i.riprocess_body-i.riprocess_request-i.rishould_output_body%3f-i.risignal_keep_alive_allowed%21-i.ristatus_code_allows_body%3f-i.ricdesc-Rack.riRequestHandlerThreadHandlerInterruptedcdesc-Interrupted.riaccept_and_process_next_request-i.ricdesc-ThreadHandler.rifinalize_request-i.riinstall-i.riinterruptable-i.riiteration-i.rimain_loop-i.rinew-c.riparse_http_request-i.riparse_session_request-i.riprepare_request-i.riprocess_oobw-i.riprocess_ping-i.rishould_reraise_error%3f-i.rishould_swallow_app_error%3f-i.ristats_mutex-i.rithread-i.ricdesc-RequestHandler.ricleanup-i.riconcurrency-i.riconnect_password-i.ricreate_tcp_socket-i.ricreate_unix_socket_on_filesystem-i.riinstall_useful_signal_handlers-i.rimain_loop-i.rimain_loop_running%3f-i.rinew-c.riprint_status_report-i.rireset_signal_handlers-i.rirevert_signal_handlers-i.riserver_sockets-i.rishould_use_unix_sockets%3f-i.ristart_main_loop_thread-i.ristart_threads-i.riterminate_threads-i.riunregister_current_thread-i.riwait_until_all_threads_are_idle-i.riwait_until_termination_requested-i.riwakeup_all_threads-i.riSharedConstantscdesc-SharedConstants.riStandaloneAppFinderConfigLoadErrorcdesc-ConfigLoadError.riapps-i.ricdesc-AppFinder.ridetermine_mode_and_execution_root-i.ridirs-i.riexecution_root-i.rifilename_to_server_names-i.rifind_app_root-i.rilooks_like_app_directory%3f-i.rimonitor-i.rimulti_mode%3f-i.rinew-c.riscan-i.risingle_mode%3f-i.risupports_multi%3f-c.riwait_on_io-i.riCommandcdesc-Command.ricreate_default_options-c.riload_and_merge_global_options-i.rinew-c.riparse_options-i.riConfigUtilsConfigLoadErrorcdesc-ConfigLoadError.riadd_option_parser_options_from_config_spec-i.ricdesc-ConfigUtils.riconfig_type_supported_in_envvar%3f-i.ridetermine_cli_switch_type-i.rifind_pid_and_log_file-i.riformat_cli_switch_description-i.riglobal_config_file_path-i.riincluded-c.riload_config_file-i.riload_env_config%21-i.riload_env_config-i.riload_local_config_file%21-i.riload_local_config_file_from_app_dir_param%21-i.rimake_cli_switch_parser-i.rimake_long_cli_switch-i.riparse_config_value-i.riremerge_all_config-i.riremerge_all_config_without_defaults-i.riresolve_hostname-i.riControlUtilscdesc-ControlUtils.riincluded-c.rirequire_daemon_controller-i.riwarn_pid_file_not_found-i.riStartCommandBuiltinEngineadd_enterprise_flag_param-i.riadd_enterprise_param-i.riadd_flag_param-i.riadd_param-i.ribuild_daemon_controller_options-i.ricdesc-BuiltinEngine.rilisten_address-i.riprestart_urls_json-i.riprocess_is_alive%3f-i.riread_and_delete_report_file%21-i.rireport_file_path-i.ristart_engine_no_create-i.ristart_engine_real-i.riwait_until_engine_has_exited-i.riNginxEngineboolean_config_value-i.ribuild_daemon_controller_options-i.ricdesc-NginxEngine.ricurrent_user-i.ridebugging%3f-i.ridefault_group_for-i.riget_binding-i.riinclude_passenger_internal_template-i.rijson_config_value-i.rimaybe_debug_nginx_config-i.rinext_eoutvar-i.ringinx_config_path-i.ringinx_config_template_filename-i.ringinx_http_option-i.ringinx_listen_address-i.ringinx_listen_address_with_ssl_port-i.ringinx_option-i.riserialize_strset-i.ristart_engine_real-i.ritest_nginx_config-i.riwait_until_engine_has_exited-i.riwrite_nginx_config_file-i.ricapture_traps_intterm-i.ricdesc-StartCommand.richeck_nginx_option_used_with_builtin_engine-i.ricompose_ip_and_port-i.ricreate_option_parser-c.ricreate_working_dir-i.ridaemonize-i.rifind_apps-i.rifind_pid_and_log_file-i.riinitialize_vars-i.riinstall_runtime-i.rilisten_url-i.riload_env_config-i.riload_local_config_file-i.rilookup_runtime_and_ensure_installed-i.rimaybe_daemonize-i.riremerge_all_options-i.rireset_traps_intterm-i.rirun-i.risanity_check_options_and_set_defaults-i.riset_stdout_stderr_binmode-i.rishould_wait_until_engine_has_exited%3f-i.rishould_watch_main_log_file%3f-i.rishould_watch_one_or_more_log_files%3f-i.rishow_intro_message-i.ristart_engine-i.ritouch_temp_dir_in_background-i.ritrapped_intterm-i.ritrapsafe_shutdown_and_cleanup-i.riwatch_log_file-i.riwatch_log_files_in_background-i.riStatusCommandcdesc-StatusCommand.ricreate_controller-i.ricreate_option_parser-c.riexecution_root-i.rifind_pid_file-i.riload_env_config-i.riload_local_config_file-i.riremerge_all_options-i.rirun-i.riStopCommandcdesc-StopCommand.ricreate_controller-i.ricreate_option_parser-c.riexecution_root-i.rifind_pid_file-i.riload_env_config-i.riload_local_config_file-i.riremerge_all_options-i.rirun-i.riVersionCommandcdesc-VersionCommand.rirun-i.ricdesc-Standalone.rihelp-c.rihelp_requested%3f-c.rilookup_command_class_by_argv-c.rilookup_command_class_by_class_name-c.rirun%21-c.rishow_version-c.riversion_requested%3f-c.riUtilsAnsiColorsansi_colorize-i.ricdesc-AnsiColors.riincluded-c.rinew-c.ristrip_color_tags-i.riAnsiColorsPrinteransi_colorize-i.riblack_bg-i.riblue_bg-i.ribold-i.ricdesc-AnsiColorsPrinter.ridefault_terminal_color-i.ridgray-i.rigray-i.rigreen-i.rimaybe_colorize-i.rinew-c.riorange-i.rired-i.rireset-i.rishould_output_color%3f-i.riwhite-i.riyellow-i.riDownloadbasename_from_url-i.ricdesc-Download.ridownload-i.ridownload_with_curl-i.ridownload_with_wget-i.riincluded-c.riremove_curl_output_prefix-i.riFileSystemWatcherDirInfocdesc-DirInfo.richanged%3f-i.rinew-c.riFileInfocdesc-FileInfo.richanged%3f-i.rinew-c.ricdesc-FileSystemWatcher.richanged%3f-i.riclose-i.rinew-c.riopens_files%3f-c.ripoll_interval-i.riwait_for_change-i.riGeneratorTestcdesc-GeneratorTest.rigenerate-i.ritest_array-i.ritest_bool-i.ritest_date-i.ritest_hash-i.ritest_invalid_json-i.ritest_invalid_object-i.ritest_nested_structure-i.ritest_null-i.ritest_string-i.ritest_string_unicode-i.ritest_symbol-i.ritest_time-i.riHostsFileParseradd_group_data-i.ricdesc-HostsFileParser.rifind_line-i.riflush_dns_cache%21-c.rihost_count-i.riip_count-i.rinew-c.riparse_line-i.riread_and_parse-i.riresolve-i.riresolves_to_localhost%3f-i.riwrite-i.riJSONGeneratorcdesc-Generator.ridump-i.rigenerate-i.rigenerate_Array-i.rigenerate_Date-i.rigenerate_FalseClass-i.rigenerate_Hash-i.rigenerate_NilClass-i.rigenerate_Numeric-i.rigenerate_String-i.rigenerate_Symbol-i.rigenerate_Time-i.rigenerate_TrueClass-i.rigenerate_simple-i.rigenerate_type-i.riquote-i.riarray-i.ricdesc-JSON.riendkey-i.rierror-i.rihash-i.rinew-c.riobject-i.riparse-c.riparse-i.rirepeat_until-i.ris-i.riscanner-i.rispace-i.ristring-i.rivalue-i.riLockcdesc-Lock.rilock-i.rinew-c.rireset-i.risynchronize-i.riunlock-i.riNativeSupportUtilsProcessTimescdesc-ProcessTimes.ricdesc-NativeSupportUtils.riprocess_times-i.risplit_by_null_into_hash-i.riParserTestcdesc-ParserTest.riparse_string-i.riparsed-i.ritest_array-i.ritest_bool-i.ritest_hash-i.ritest_invalid-i.ritest_multi_line_comments-i.ritest_nil-i.ritest_number-i.ritest_single_line_comments-i.ritest_string-i.ritest_string_specials-i.riTeeInputcdesc-TeeInput.riclient_body_buffer_size%3d-c.riclient_body_buffer_size-c.riclose-i.riconsume%21-i.rieach-i.rieof%3f-i.rigets-i.rinew-c.riread-i.riread_all-i.riread_exact-i.rirewind-i.riseek-i.risize-i.risocket_drained%3f-i.ritee-i.riTerminalChoiceMenu%5b%5d-i.riChoicecdesc-Choice.richecked%3f-i.richecked-i.ricreate-c.riname-i.rinew-c.ritoggle%21-i.ricdesc-TerminalChoiceMenu.riclear_screen-i.ridisplay-i.ridisplay_choices-i.rigetchar-i.rihide_cursor-i.riindex_choices-i.rimaybe_utf8-i.rimove_up-i.rinew-c.riprocess_cursor_move-i.riprocess_disable_utf8-i.riprocess_input-i.riprocess_toggle-i.riquery-i.riraw_no_echo_mode-i.rirender_checkbox-i.rirender_pointer-i.rirender_to_string-i.rirestore_mode-i.riselected_choices-i.rishow_cursor-i.riTmpIOcdesc-TmpIO.rinew-c.risize-i.riUnseekableSocketaddr-i.riannotate-i.ribinary_string-i.ribinmode-i.ricdesc-UnseekableSocket.riclose-i.riclose_read-i.riclose_write-i.riclosed%3f-i.rieach-i.rieof%3f-i.rifileno-i.riflush-i.rigets-i.riputs-i.riraise_error_because_activity_disallowed%21-i.riread-i.riread_nonblock-i.rireadline-i.rireadpartial-i.rirecv-i.rirecvfrom-i.rirecvfrom_nonblock-i.risend-i.risendmsg-i.risendmsg_nonblock-i.risimulate_eof%21-i.risource_of_exception%3f-i.ristop_simulating_eof%21-i.risync%3d-i.rito_hash-i.rito_io-i.riwrap-c.riwrap-i.riwrite-i.riwrite_nonblock-i.riwritev-i.riwritev2-i.riwritev3-i.ribase64-i.ricdesc-Utils.riconnect_to_server-i.ricreate_thread_and_abort_on_exception-i.rigenerate_random_id-i.riget_socket_address_type-i.riglobal_backtrace_report-i.riincluded-c.riinstall_options_as_ivars-i.rilocal_socket_address%3f-i.rimktmpdir-c.rinew-c.riopens_files%3f-c.riprint_exception-i.riprocess_is_alive%3f-i.rirequire_option-i.riretry_at_most-i.riadvertised_concurrency_level%3d-c.riadvertised_concurrency_level-c.ribinaries_sites-c.ricall_event-c.ricallback_list_for_event-c.ricdesc-PhusionPassenger.ricustom_packaged%3f-c.rifind_support_binary-c.riget_bool_option-c.riget_option-c.rihome_dir-c.riinfer_install_spec-c.riinstall_framework_extensions%21-c.riinstall_spec-c.riinstalled_from_release_package%3f-c.rilocate_directories-c.rion_event-c.rioriginally_packaged%3f-c.ripackaging_method-c.ripackaging_method_description-c.riparse_ini_file-c.rirequire_passenger_lib-c.riuser_support_binaries_dir-c.riPlatformInfocdesc-PlatformInfo.riPrespawnLocationInvalidURLErrorcdesc-InvalidURLError.rimessage-i.rinew-c.rito_s-i.ribase64-i.ricdesc-PrespawnLocation.rihead_request-i.rinew-c.riparse-c.rirequest_host-i.rirequest_path-i.risocket-i.riuri_for-c.riRackBodyProxycdesc-BodyProxy.rieach-i.riHandlerPhusionPassengerbuild_args-c.ricdesc-PhusionPassenger.rienvironment-c.rifind_passenger_standalone-c.rirb_config-c.riruby_executable-c.rirun-c.rito_s-c.ricdesc-Handler.ridefault-c.ricdesc-Rack.riRbConfigcdesc-RbConfig.riSSLPrespawnLocationcdesc-SSLPrespawnLocation.riconnect-i.riSignalcdesc-Signal.rilist_trappable-c.riTCPPrespawnLocationcdesc-TCPPrespawnLocation.riconnect-i.rirequest_port-i.riUNIXPrespawnLocationcdesc-UNIXPrespawnLocation.riconnect-i.rirequest_host-i.rirequest_path-i.risocket_path-i.ricache.risrcagentCoreSpawningKitConfigResultapache2_moduleConfigGeneralDirConfigServerConfigcxx_supportlibConfigKitSystemToolsUtilsWrapperRegistryoxtdetailvendor-copylibuvm4vendor-modifiedboostalgorithmstringdetailstdaligndetailasiodetailimplexecutiondetailimplexperimentaldetailimplimplgenericdetailimplimplipdetailimplimpllocaldetailimplposixssldetailimplimpltraitstswindowsassertatomicdetailtype_traitsbinddetailchronodetailinlinedmacposixno_warningioutilityio_v1typeofboostchronocircular_bufferconceptdetailconfigabicompilerdetailno_tr1platformstdlibcontainerdetailpmrcontainer_hashdetailcoredetaildate_timegregorianlocal_timeposix_timedescribedetaildetailexceptiondetailfunctiondetailfunctionalintegerintrusivedetailioiteratordetaillexical_castdetaillibsregexsrcmovealgodetaildetailmp11detailmplaux_configpreprocessedbccbcc551bcc_pre590dmcgccmsvc60msvc70mwcwno_ctpsno_ttpplainpreprocessorrange_ctestlimitslistaux_preprocessedplainmapaux_preprocessedno_ctpsplaintypeof_basedmathmultisetaux_setaux_preprocessedplainvectoraux_preprocessedno_ctpsplaintypeof_basednumericconversiondetailpreprocessedoptionaldetailparameteraux_packpp_implpreprocessorimplpythonpooldetailpreprocessorarithmeticdetaillimitsarraydetailcomparisonlimitsconfigcontroldetaildmcedglimitslimitsmsvclimitsdebugdetaildmclimitsfacilitiesdetaillimitsiterationdetailboundsiterlimitslimitslistdetaildmcedglimitslimitslimitslogicallimitspunctuationdetailrepetitiondetaildmcedglimitslimitsmsvclimitsselectionseqdetaillimitslimitsslotdetailtupledetaillimitsvariadicdetaillimitsrandomdetailrangealgorithmdetailratiodetailmplmplregexconfigpendingv4v5smart_ptrdetailsystemdetailthreadconcurrent_queuesdetailcsblmemorydetailexecutorsdetailexperimentalconfigparallelv1v2futurespthreadv2tupledetailtype_indextype_traitsdetailtypeofdmcmsvcstdunordereddetailutilitydetaillibevwebsocketppwebsocketppbase64commonconcurrencyconfigextensionspermessage_deflatehttpimplimplloggermessage_bufferprocessorsrandomrolessha1transportasiosecuritybasedebugiostreamstubhelper-scriptsdownload_binariesnginx_moduleConfigGeneralLocationConfigMainConfignodejs_supportlibphusion_passengervendor-copycodifycontinuation-local-storagenode_modulesasync-listenernode_modulesshimmeremitter-listenernode_modulesshimmernetwork-byte-orderlibwinstonlibwinstonconfigtransportsnode_modulesasynclibsupportcolorslibcustommapssystemthemescycleeyeslibisstreamstack-tracelibschema_printer/usr/lib64/ruby/gems/2.5.0/doc//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/Addr2line//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CommonLibraryBuilder//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CommonLibraryBuilder/Rake//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch/App//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch/Error//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch/GdbBroken//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch/GdbController//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch/GdbController/ExitInfo//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch/GdbNotFound//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch/LldbController//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch/LldbController/ExitInfo//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch/LldbNotFound//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/CrashWatch/Utils//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/Dir//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/Exception//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/File//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/GC//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/IO//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/IO/Fcntl//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/Object//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/AbstractInstaller//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/AbstractInstaller/Abort//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/AbstractInstaller/CommandError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/AdminTools//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/AdminTools/Instance//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/AdminTools/Instance/CorruptedError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/AdminTools/InstanceRegistry//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/AdminTools/MemoryStats//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/AdminTools/MemoryStats/Process//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Apache2//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Apache2/ConfigUtils//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/App//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/AboutCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/AgentCompiler//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/ApiCallCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/BuildNativeSupportCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/Command//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/CompileAgentCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/CompileNginxEngineCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/DetachProcessCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/DownloadAgentCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/DownloadNginxEngineCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/InstallAgentCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/InstallStandaloneRuntimeCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/InstallationUtils//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/ListInstancesCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/NginxEngineCompiler//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/ReopenLogsCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/RestartAppCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/SystemMetricsCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/SystemPropertiesCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/Utils//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Config/ValidateInstallCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/ConsoleTextTemplate//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/AlreadyStarted//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/ConnectError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/DaemonizationTimeout//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/Error//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/LockFile//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/LockFile/AlreadyLocked//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/StartError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/StartTimeout//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/StopError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/StopTimeout//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DaemonController/TimeoutError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/DebugLogging//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/LoaderSharedHelpers//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/LoaderSharedHelpers/e;//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/MessageChannel//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/MessageChannel/InvalidHashError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/MessageClient//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/MessageClient/ProtocolError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/NativeSupport//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/NativeSupport/FileSystemWatcher//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/NativeSupportLoader//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Packaging//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/PlatformInfo//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/PlatformInfo/ApacheDetector//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/PlatformInfo/ApacheDetector/Result//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/PlatformInfo/Depcheck//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/PlatformInfo/Depcheck/ConsoleRunner//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/PlatformInfo/Depcheck/Dependency//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/PlatformInfo/RuntimeError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/PlatformInfo/VersionComparer//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Plugin//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/PreloaderSharedHelpers//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/ProgressBar//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Rack//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Rack/OutOfBandGc//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Rack/ThreadHandlerExtension//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/RequestHandler//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/RequestHandler/ThreadHandler//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/RequestHandler/ThreadHandler/Interrupted//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/SharedConstants//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/AppFinder//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/AppFinder/ConfigLoadError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/Command//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/ConfigUtils//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/ConfigUtils/ConfigLoadError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/ControlUtils//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/StartCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/StartCommand/BuiltinEngine//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/StartCommand/NginxEngine//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/StatusCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/StopCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Standalone/VersionCommand//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/AnsiColors//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/AnsiColorsPrinter//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/Download//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/FileSystemWatcher//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/FileSystemWatcher/DirInfo//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/FileSystemWatcher/FileInfo//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/GeneratorTest//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/HostsFileParser//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/JSON//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/JSON/Generator//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/Lock//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/NativeSupportUtils//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/NativeSupportUtils/ProcessTimes//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/ParserTest//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/TeeInput//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/TerminalChoiceMenu//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/TerminalChoiceMenu/Choice//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/TmpIO//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PhusionPassenger/Utils/UnseekableSocket//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PlatformInfo//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PrespawnLocation//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/PrespawnLocation/InvalidURLError//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/Rack//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/Rack/BodyProxy//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/Rack/Handler//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/Rack/Handler/PhusionPassenger//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/RbConfig//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/SSLPrespawnLocation//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/Signal//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/TCPPrespawnLocation//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/UNIXPrespawnLocation//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/agent//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/agent/Core//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/agent/Core/SpawningKit//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/apache2_module//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/oxt//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-copy//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-copy/libuv//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/algorithm//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/algorithm/string//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/align//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/execution//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/experimental//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/experimental/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/generic//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/generic/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/ip//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/ip/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/local//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/local/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/ssl//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/asio/ssl/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/atomic//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/atomic/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/bind//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/chrono//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/chrono/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/chrono/detail/inlined//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/chrono/io//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/chrono/typeof//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/chrono/typeof/boost//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/concept//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/config//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/container//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/container_hash//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/core//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/date_time//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/describe//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/exception//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/function//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/intrusive//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/iterator//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/lexical_cast//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/libs//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/libs/regex//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/move//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/move/algo//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mp11//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/aux_//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/aux_/preprocessed//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/list//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/list/aux_/preprocessed//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/map//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/map/aux_/preprocessed//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/multiset//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/set//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/set/aux_/preprocessed//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/vector//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/mpl/vector/aux_/preprocessed//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/numeric//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/numeric/conversion//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/numeric/conversion/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/optional//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/parameter//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/parameter/aux_//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/parameter/aux_/preprocessor//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/pool//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/arithmetic//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/array//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/comparison//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/control//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/control/detail/edg//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/facilities//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/iteration/detail/iter//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/list//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/list/detail/edg//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/logical//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/punctuation//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/repetition/detail/edg//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/seq/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/slot//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/tuple//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/preprocessor/variadic//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/random//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/range//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/ratio//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/ratio/detail//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/regex//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/smart_ptr//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/system//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/thread//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/thread/csbl//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/thread/executors//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/thread/experimental//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/thread/experimental/parallel//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/tuple//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/type_traits//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/typeof//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/unordered//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/boost/utility//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/websocketpp//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/extensions//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/http//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/cxx_supportlib/vendor-modified/websocketpp/websocketpp/transport/asio//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/helper-scripts//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nginx_module//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/continuation-local-storage//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/continuation-local-storage/node_modules//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/continuation-local-storage/node_modules/async-listener//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/continuation-local-storage/node_modules/async-listener/node_modules//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/continuation-local-storage/node_modules/emitter-listener//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/continuation-local-storage/node_modules/emitter-listener/node_modules//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/network-byte-order//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/winston//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/winston/lib//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/winston/lib/winston//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/winston/node_modules//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/winston/node_modules/async//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/winston/node_modules/colors//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/winston/node_modules/colors/lib//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/winston/node_modules/eyes//usr/lib64/ruby/gems/2.5.0/doc/passenger-6.0.17/ri/src/nodejs_supportlib/vendor-copy/winston/node_modules/stack-trace/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.opensuse.org/openSUSE:Backports:SLE-15-SP5/standard/14f567732e52b582653c699edbb2d711-rubygem-passengercpioxz5ppc64le-suse-linuxdirectoryzuL^Xutf-8194cd4a278e2f9dbb3655e6d81ec94724d7202adb3302591dcc47ab7657b6c6f?P7zXZ !t/7] crt:bLL ؝. lGBNw,%uc./x{y-L7]KZ cƵx.iAH4U9:zh^.lto|U) VLV_~L5PO1=$ew"Vuѓar ǡu됈k!NSG5U{[(r|;.(X6G<8%CH!&6: ?i3le ?}nbK~3ZاDuhN<¸4I~V2"؛1%f#^Aj"˦Lh/ՖU&hAP;pkXu~BRc "pm.Pk$صoEvl#c%srP2}Տ&v@K|t}8ytӷVZe~'wuL?<9mkC4&py O+o>ȑTW<ϔ'yLG 9nsI6EC˄:ע WOh~tpDIR+t8S˒)͉B>fB`ĢaD *NBLAAGU_>LHsa7)w hn7w#-Q \m 4^D^ !Ky7o-&?c \Uo釡TOn~II#WC=_Z3Mhڅ:Vj4#.Ws !~G^ KVSw8UIQ)@f3y4$* DӧHHޛHS*^gܵkGGą@p,}ٮvo(3)O{jU[x<]B]Y+wNEv}$Қ7n2X0YHi)a7C(4/Dgs]LPX4-~?Ucqg1%^9 ghԾ훷DŽVtj.f=Q6~~ 0XB& 1vͱ(Z&m!26Mfr>=''m^V2}֠IóL6IXs} 7}cؗppP_9@٩\#(dA~7Fi*QơMUK@>v."\km$X=M(B=IIt`~=^\@ȴϏJwLc(r"^v]שuEG\Q\Ēb 5h}ۖl&\!Aaf9 9FTr4?l(. 8N2`gր/nozO,F? rsBH;-nju姥JZ (n]H =74&Al O༲]74vYK3 7Nv%)`.k{|9$&VC#l%l,ru?0qM43+?P*ޡpѐ1H0 Mt4ղ'=E K%nv|J 7FH)LzՖ^m^)tiܱ*pm5lRqרA6 t`ƇfiyݵG}~V9. 7͏Qt̓2 kA(JEQ`MO_iӐnjlu!r:#e@B 8A8bhEՐ #fUw]j 1qMTJ7+]C/ማzpFC0_c^n*qPj*M 7S<1~+?@)NpFw_/|*|{FRsjT[kJ7X]{ulq(IjUE[C!䬛ƪ?X".߇"]Qt bWAtBe)1춋h#nLJq'D- y_\SQ ntU0*,:0Lo&/*-)\Wr9h(W]Qؕ3[C1Ј5Ǥg4|Pƒ\.jLI-X_1ihI>=;@`F -T Y@LelcGV\oQ/V3MiL]] H6cq^bέ,$oP#fOxtD $0R (/3[fHbd<"+e5Zd$V@aR8 2NF˷w ¥P(A(Df3Qp#>d`#+aVv9RO!>żkBgMǷNz޸CK=m& ;*R' c 4HOoU0H]KhiQcQR*d +phPGsPgd\Q"Q0)8)\ޠMZ(Fi$2 ]Ni[K ]GG07k2H[3*~`K&eaDOƥb7 lUx,]"OϤVvȔ2x=e<M f$ ɒǗCD15%[2XR P( NcRJ{|V{YHǞ 3mpWgRFJ)fydm&tISp8,C LBC9MK%)S|W g[ЁooRsK&o/ =ـ[F noD8pZbNuC aA[{NRv)Y;^?ԨLT\'P&: YF1v1D,J{yl!? )\e[zfs)y;Vzтb7 Xw$oY l+(+gY]=Ŭ  JQd!܅9ʜ}eOO/+^uޢPxTf:@9reoVzq[k~wHID$r~tG '{b "牺6܃}ՀSTƍr[''JhφiqR!P—B"bI>́s j$ ˁc[%YzP5xJ8\ai4Vlt.SM+d3!(PHtoIS!b*:iUEk[`nGvz|/aͽt)9JcP=z3nR#S|.1؇neJpGc.)%?I;厙ٴhO#uUE>hrnAI]ȩ.5;GYP>#Ps>g);5;xAxD}{`N,԰4n"{m'w(^uvK?8Sj?׿u۝{T-+Z(;|ȿ} BiurM邝6gBp ^.r Bńm8t|_s*T+rW?$;DO=&_ Fbh>fW7D+rMZzm\z{Y Q9֍-"rzJfѣ0@ʪ9I{ yr:#w{].qB٫MGsl/G;u$#Dy^ 4Z |ّfBUpS6tcVMFУ NvIeS~wҠԁ`>8ZGA2ZݒjE{BD{Zg$N<=)G๏@g c7r[ߤ{ %lcYF*.ͲGͼNTLF]@1#E_+bZ&pP7~v\ ^D32M4w$/>4m,wuJ2zX>kLzf#h`cZ'Q5Y?OA;y'l;c4bYYRK /liGԔׂ6O*Bj$R|G0 .~p1p^hOwz3WQZiuQG;saC 4Vs}5zNE}j!N{؅:l]l!@GPA'$v_Y`1BYSt$yUĥk0.u.akq[sP$!3I=<ӍH\e)b**]tdC{$xa?8@>g' ~goFi|rDM-5?O\,k!FnEa*dKl]IկDF\ V"8 - Y맘N+&;)y#aMﳏ{Zٝ`!,v$Z]Fa6i9xS?K7hAI.%76{ڭGw3ʰ:)c_R.G&䪯9ʗD/af8A*x^9M yV8kxHt%!X4; 2 qH˩ 6nA1oBmL2;z4[x(+Ik_2%|jWc0wGG;bzp*=0#eɛk;}?c%*tyh(h[L$`l{șw29jc6ڎNX$'/QW!\AkY{ k5`e3DKɐ\5JEh.sDȠ{2zY~>)ֳ/]`ֺH"XOl]ZV \;8#К .TI^8) h}\#D;L+ `P ;5rCU߃p;3 xo==-?И%1rfxnkfZJEpMHSlo'K@ .%8/S̢f6[3RP8]dB݌^ ,WT%pcU9I!lF"8H`\xK/kmm&hsw)DG?>|M!R=T2o *@e l+dy%%lxuh:A<7®XG9Ld~N_D{6k@@-7b-d _!^EvD!m8W/Wn&CU<]8 v!^ *8QHvAWUoĕi=%U`9 %ڭl ;{4`̀;?``쪡C*I=!FH٭tDְQ?i/=ȉ7]/Y8a08>O)9$R~6dw.Q4M;7E.Wܞ_u{ /<57bD 'M]S46SWp†Ⱦx=# i9 H\Hs̉ F]2\^K#pO 1V q\V 7r.@/Pj췫 D?Z'6.7tQTHi[Y^Q #PƱ©?RAt|8< Ku 04T_q3XEAg*jMDtd[ Bd՟~VߋV)`4g9Ʈ3 Y`Yd5k,XWv̉ %wO@N1"0؟=A<6잇 z8j\Zo%@䅇A٬5k}JdPonP6V>$Ux^/qE$٩V;VrE+Wn8SboK-IdurɵQz ")=JVVEF[*-,MԶmp)!rC0ӵ,/BQ`&J+0_$c0b)Cل\+UrynZe2$QzW6yZ0g\RX]C'Rr-5.Gx_${'G9dпC4t& UO&s7YKX)S Lc oJ%tiϱ 8nQ8QW߈Ջhh4s9-m O?*%/?-@'/M:S.Rӕ3C _=KwN@"BOzĦ2ڥ,^ "$xM5EZݹ`/av8]RZL#"Ky'!xy4H!nt4TXDeeb]3y Y^(Vf|U7VѺf JK3mtp8^*gwRp܁!Z9kN\RVvoL [96L~:&O5m棦V]UϞ 1]wK!랴JB+\wOH*  K$A6KJj^c2ej|~A8q8[!8Xk cJ"]M^538x9YdI :4S9"'HKF21LP5W !y@ےR9V۝_8-jK{JX׹c7't,It,Hٮu˕ܵ3K-L#ÃF}#E *?% v4c)W1_ ]S(ϥ A!18T僜K%pĻ`iKP0C#ԑ;v̒VY %qKE3FMa]c)sXؤ0^^tק/٢:PZ;Qq_DWA`MP#W 3',;aBkci~+ZEךVԉu 8~5owh@Iq˳3Ffo,Ck\u2 f‰bO3*qb]_%v߻ Ck(n C>9+kpEHcvixBe \ Cqg "ս8zKu2O<"4nmWk aOlu :ULNc@'8cGV h|DcP*ǍTItt7ݸlc?:;>YY ́Sn4:n.'u6+ bY ф=sdq.}lfq%\uo`/*3Ki8sTɽ3iG?_PY6U4P2 #uS)$dC ߠi {Bw& F3nH$ `bΥvBǰWA-[wg68:tcc?q-y%W#;,atr X$2jWr )N/3dynb4wûF2%͗MiA02?x]WL^vV.1Ktb!b*' 5VOwEd/!LX֑x'HAˬ6 .Lwh9]%{߿%RPDaٹ`Ce'8Ƶ$K$38͓P^;3 &|Zz'+|<[=\Y $OùrAt)a0,WoDKי_PݣoOZ5a bƠtKzJZ,EHN@ ֖Kp~/0="Xv6Tʧf/foڑu ìya~l6ҋ YT fL Aӗ j&xlCrdt R ؅b+xpY䈪IGEĈNHwqožXN1dP/X^"yq 3Y5<({ YV tBi7Sǘ` :-_̲Bج5+|g`U8gL ^Z4cҐeA+XC>0QWT^1!_.CY$pXz"{wURG^k[oT6~eDx/67^!Xȯ?W>'pQ&!BjPvĸZ@4A9|j Xԛ$7=㰸:FDcnޮ@"֘_$,p)R@)E'/bBO.F%:nLȈ\5}8_&t%55˶P89RkH杗J6`HBJƑ `.2E0=ֽM=(_8$7 l@SmqR2s:NEaF69,*f |DYeB:qZKPJ}j"Bsx2U+3(3Z-,/_B%UӓeNAS4M[y֠fp G8+̯O賺>}D䉉Z0o㔚Q;+R,qjo8mB&!ζ?d-7uzp ᠋Hބv|>r9%j8/%ٕر7R$#>X;{k"dءrHl_"ZKČAe{>h܄MPZU%rĥ$&C.ʊe^ +3-sW\kpV"vNSf~hP8* 쁌!S {J{8ѴNSD1l;\O?y+㧬)s\lEdoOx׋x%;J%NrZ: ,kE5%>]ّ;ku,q~=WcRU{o'gF.Ϩ& ,^}C.]b떵*Eռ%S_+3")1iJ T}`0ǀ[Ϫm#.3_g\Jҟ7/aBjzt:wStSRHhNF:$RaBi #a GJJPZ KlٖN8{?J:@)`Zт-4hOeLRJb@nf땤Na4fmķJ̙p`:~srځ,(,¡!+KR^3_!*8̏b7s}v;t{L{㉂CDKဠubxI@v"bN]{' h+ZSٌrSm<(LE*HHG9{HNBw0H*]j!8R{o@D*WvA80w r^ j5ky+icTi !#!# =۴(灖)&EuנM0g\L|xaM@!cl8D\w]ӌ]Z6CnCS^s~vy5e)"Zh8fO1RItHSGe(}֍)pQv D#6`%fF@T݄;nTJ@b 0~b]4?1 1i%P00R Jb!P+q1PW4 qDI*om&/ \qo+ ۝_\Cٽ_ 8=ä{5[_ #􍐜*t NC6>5&4Mt8 Z GH> -n,+# ,+GOܬÇbC (]]eɪN )D;wcpn@@?׭hUf5SFleƾ* j 25v>\Vw[d$ivDL!F_SMam|"n7PH[C nxjduœk=ckؤ 0eל ./+o_Y e#BL;:ywr A=R @PB ,%:{xn3a[2h'gN U.p~C2.;*箨a} DRSDdiE0 +P"mIs+n׮Z;Uθ/'9%6x{CT5͆F |$=fM[OnlW,)2=e 3kt7(Srx F^QK@ gro/ж7 B7V5?o\E6Y`mxP]OSɬ[pYө$ 5A Oq#:Ȥ&]}J*Ӷsp'ݺ|&nhK" Bzkz.UνaH%2pU+Nmr62)eS4%-4$`1os퍥Ng$8s[q WcBJkYѪ#|^6J$6u#8mբc=R+l?yWPqo&젉_zr!ZEOt5AhD`"!aJ6(`ԅoYlb1?{vT+J_MxeD^^Y5rOK]O q$1]s%H:IP'J .rj`p>SG1_]_ԡĤ+l5 d RHƙC\<0eE< o<u\DqypXd"_ &Ioݐ9bi ʊ@tɊݰsEes0t) өR4k ޏ9:%_CnEIژG 1vϹi?ZX& { GUЊ0K/LL(B l/|.M/V6cB6l#I '1d98QMZ쏫M3 ak!D^P w*yO#3PYh.41j0Zڶ&JS\U͊U%=SōΫXf G`VcAх`ׯyzbof)b^x^gMXr6S=jISV4.nș~S,4/-G{ h$0"G勏,h>%Z,l>Bpj] ?e`'o-^J=@1DnXDn%!2#/Dk>E. cmd?S̎|}(P?V;JVfgQmQHSN}P.`S :Ą[MϬH_kX軌')7Gy (Ӻb&UmmOGjuF g|3Uc5%(x RQ,ae *5[ ]fJ<-s͌\ QdoChl3{6d0q1Y!A';WD_;4ސ<ס)[A1U0[G^Ь[9u6&q P0A!%D(j; hhma*n19l-v q娠gY$hpKB J,/>EEE2!"Sݍ T~݂ԗz޷9FVrP֮kɤk$Y|u#!RbIͼ- !?|˼izaX0IJř>y/'$T˧C=#f+ !߻_5)N5?-UOz?qHf%nC:T?^Ih'0kK<vKA3 d;(X zc ҀZ\K'o[6?CЁٸtBQeDcʞaR҂jqn9x aNwꅊ$o2S7?= UhVXҳG:+8NO"\yuŠ#(WΑeN 3@Q5K dpoA(b2+p@!d;H D텕L `@%P㮉^&Hk&t+V(&EuWh~b]7̶%MuKjht,!$A(~?U=B޵ 1nf/;w&3+꣢'GÎ_E U* ΤNip2V >K, ՁzcBr+g8V׽^G0/R2p$_8cmyQA_ d}&*z݈7+@#>TVne2KP v<6B6a{5_\W j-vWӫw21"S;_|1XpLpl{cft34 aG~$1%9&O;\cdw%BLirWLz#6'N6o THFg3 M ;_tG8rԹsyR)&+,h o=TSɇG\.(ύ" Ók.r[ȳ 2>7 K%0F+ _[* 8cɣLv[ŸqQ kU!T7{*::[m"NtIi#o8Cqл%A .3Bhp%/BtGDx$v՝F4݊a֙o""'>|HW+E /{W6@Qvh7W/v@/1JwʼEX e{^utql)T·8TFD9b`|N޳i67<鶸(g[Њ5fx Ѳ|5CuFUhPƣU}E3)AƢuy_zs8Dy,)PhUL$k_WrF\hʣlzU;ԌO߱Ý2oHi.$Eٯ3Dp  q0* sI6>Gox?BJt?2GoX_l|6Zk$C?y"Gs|9 j.Vq -?mH~@a JeC]f;zl_|z0uѶ /OWlnĂgKjvBJ$ZH1Zt+4?_j ZEH8$ n)@3WCA++v=r<ӰTٶ8.f;&Qvu, ՠ ڥ &H=YxGP>05/b㘣=9Egꧧ@=-AV]Їܙ@<[v2ǹr{rS12uL*fAX#IZ[! bmKEZΖXs]v1JP 障)ngdGQQRu*k9#dIiW]n)oTa$= l Ҫ7ZF^9?]gj-gWuY)N܂{&D/b7h0)cǞ iPg^)@\IT<\`a"Ӱ{&ӬqU$r% K[dTlQզbp1Kکs OԢ-BŲ^ LOݨx Jn NĿȠҀǷ&I/^bv %XdSse zk'Ws.x$xP? hcWj|BW]^`V`F=}#J9ɢ,u #Di4镉"y" Bih/{W~qCoA}@RqaRFs[$fpaGWOAU/6ZM}JD eO: ޫ $kԘ^VgtFd 48bm$3yu=SB䢏5j$z9b/q5*Zizk:Ղ;^+ޭAiHS)9U/PnA9L#N`Ac0 ih&{-^Sd16'Oz oK   0%D&FdQI0_3tx`Ugg(6P$3#}H %֎ae]iWGμGW>$*O5YNAvk'Yxvhp>m8Mw nLRvAڰșs@Zu_~6zϰZ י&xxZ秔؅9H4d53wŲ񪙆Y5U{ʁZcp":EkdC!GC>eXMNK,0IpRU8e` M9|1%&@VnΨ>"ReY;adSJ1tf?Κ:eQu` ?Ж&O@gC՟ \Tj(> BnT^{\?qq*p2( R~25W'a`O";>~7/@]P]]UN96!1m:x4gljkB$ѿ :z] r1zS' C}m.jF/V&6ͳ"kuleK]>wM>2ݯ|-/As7* W0 m{owaY4'Vsi޴.=_xGќ/RPHnztNi6Z06 k:[;S"zhk^GVl3T_C_P96[lzt 48c"JqTЀbCm]H|TDq ¹w(qC+T.N=_ K4Yn[?XߺYl MaJra9TVl'Ƨ_'"roU89da%$ Lm `7TOi<Ɏc i*=-QI2WH u#\1IoRuQEx4}dta.}p!I-+E i^M4T'{ñ=㸙Vv>tϐ+ 뷻+0 YGP4vZZJNjXlbJvZ͢>! _SKb8IWE½xX7ȥTS86IxKVk=/ C>D=.4Ͷ>!`-=dm&B'G=wK]gdeM<ƽp"L@qzNj1"@q@o\Ois/nDZE z,1WUsTahlc`ӗX5x \B<@*rao7LԹaf+S q[GJoSAF21QĩQrax-![ مUR%@Vρ擽2+O{ܴ% K ~CNv$Β9kƊXJr'Waۥ/_딝WStU!\{9_~% N ݡ.;fI[P]#Y/,R֡mj"xb6j'1Et'0gVޅm,ʌml~ y0f#Gr:^E]]H;)V=d|Fm:zms4W6 %FGz9 %ua_8&,f~MC%m;N|EL@Y.~x'o>W!*i5\WFpZb' M~dfFr UmWGҼM.PQՋ$'k P{5r'?u*<6<̟_7N@! X[dڒr/a5NAv}ueD{ @tqf#uvWmwCKL=>ڊkğn.KNҔ)jLM-$ ?^#YS u]He5TRy9Il|X ,i@:_ym'm·Sf,^|mMR"56Đۙ[ h0Ƅ 1HbcJ{B x'l @t q<Ǐ\ >2}j`8N龮nEǷR༐^a 2C^Udu#dsݕ]Tnq$P'QSBeƯ5/6.pIC_1}IAZV`Z b9p2\*bz;Z' |i<ݐ-MxMr=kZ 4n/eZ/Ժ[fkkI{|;khzʑHKQZ Tp@:ǔYZ`@D^HK@yj">C=-v-_IzQ#@*sǩTwT5ڄغ1cyP _F_Hif[e"Z'}Ü;l$%I?T϶&J />gV(*:9n Os=s¥>’A9q y?SOw}&]"+4'vek^ͨ$Dӯ 0aU |^bvjvT";5ϳTRtǾokRgN҃6䣫 (&e=4.dAv+א։B:?\ msf!]:!ס~U?$9Pg"v̵8;UD`O^YP[=TX#Hй͠iߔ ;6?XPf^eNEU #2DI5'KM,Ӭ֖>)JpDՁtCR{~iS-^~.n jzovb~$_/Cr8FwzvV3^!Xm2~B+ B'SoU@Tgy9Oh C~3Rb>PGa{6\ħyk辧r܊KJ f ra@tW}yIpu4t=-=AOЋ嵖Z6)W}_[?fyz?hTm_@b9v$E@ Jۊ6`k orp[>)gZ+ _bBL~/K$Y=W3B-G,+F-%cͩl[+MzgO Ku|[(foO!]IYKa-0;jkk @kb^vrj1/q ?`f7b*J.!좁lI`<-CU͋X1DS*\ rl<)4ʗ yԬئmB*t]J-RMCc=G;ګҶ+xE/{IB!P ffl%@UTAqڛHQ8{]$$D8E(mM[AdddGdGz+z64Oڿy4Y_ fش~{Pّ3"Ӿp1߸2VA4K13Icrgs[S |)0i6t?ނpL FFbrLu6s W.9K® WҌG+=+;͑YyR2foz]dak"s#frUzɸ+"&uNE0ˆi4/mA@ccg9OSWLUЁ"`34 7U80 %~U&fխ}38kt*" YpT NiQO J7yÞhZ<;edgDpm#߇E2T2~7bSqZHd2 кR]LkM:eZӡ3M<“T(@A6C; eQ}a=4My]Pb_6:OǛ1{EQRL-nx) w؁U3B7G*H.gf 4hظty+ GSG!z`ݧ&"@ > 2Fe Mu˅N-<{{ kgG%&stZ5&SåC="ɤ{b"t@<JJIoMTy~d /g@Ok&JYEn~Pz Icbr}M@KGd -N;$ s쬍s ڝ' kUJ)DX5Kd[ kiىfrˎދQne9WdT= 'Ry!<=ŽO9$F` iաpU11-G7jj"Q"Wxs "D5zV:ύ 1M`yOs( Ti&; ?}NH ~ZpڬP͂.qݩ_=!D1uS}" ʬf `GCО>4511ZIƗ^0pQvD#um%YkҴ)X s}3`pwPYu,߇hHZ)~%v%]|ROn M/vSk u$8<={a|Q];{ϐYqd z Ehx-?a"7 1H/ w[uF_])"oJpWZ;ʌaC`"II)4[m9=V5Ilq" KAnK}BpZ:)#|ۯ>zk;0׊P^%kUzq"|niAƿ*$SٹYxÖq@ۍwmm3>'ۺN*jN2PT̩T씲v``+٤p{mۓcMBՉl#r&1mVR?bęue!Q(HnS.*9ǾwpF)v_Ž&VA4Nlbdm+@D9,,KP 5õjiȎ#oFԼTrXgnixazFH*Hp?rുuIȼ-+Ř|5<b\ cCۜlLطEAM#e}&:1蜽fD!G6TWM{%L{cF@; U2!;(ٮm{:ci;Pɾ$`Mx h%>u'WK\IW!`]1+s)JiX,#87B׾0,ǼK渷‚fOOZo@π.6wšP83O X;BiL#]̪YeB8bd'E \aId9U.ۿRB/C_\k' /@nIS1u@Yz_;Н")5HqF}?S3 JXaDr33+r͙'mh ~(AdHZ۩XǼ%㣩hWl942_}bРjC,#yd)JE\Ce鐆-ƣFIrpm]?^ ie3DQi*cf 5`Hʓ60EBBӰ䴏z1|$-dZreRJIۓZ0nDk~i &$\Fbv>ΗȺ/ql+Ў: f^\/#jcHf,zTW^FjȚw6e{l[KfЬ(\q` 5g V4ܱPfLؒ ||hU\FjG%m@wEOdϥ09p,>qn P44jqhꇬV:P0MXiK(=wlHY#l : T,z`㲡3!;p"v鯳@MaX|`@[{XqќJó1x{X@^ " n:~&7Y26ǪIŀEIF鏗ލ*0%M-V?_MWc^o 4I2/ؤ ?BίO>&ͅz] R2-~Dwչ_j[{l_߈3< >+*;$=9uB\+"*C9V]\i59ng)JxnSj`XJ ʶI hNcCԴ2qjIgq w1 f8:Ӏ"$).%hmLliD"eZVE _Ɩ zYsQ &aD4* Kae0:5 8ߓKSeJQ9ӆ̫`+K/h a}[)!8=_Rz+xz^G$*nM[%2p2\Xk T"J,ji͆zaMSJDʹ_? =TS2`j  xrL Ѱn^oV;>Y`\&~dFG22;3>QJmCkܬ',2)5RΚ $+"Q1 >, cȥתFҸ֌{<MΥ-?6NqҼV|w}Auhى(YRNj H "fdꕂkO\߉cEXƦlBhuK@2ðGS{%Zl󮧏\އ2& UvEڪ/s$Iƞm2(4nOTN^ f(n `Zf"nGL١~F Z$t-?Ձtɜ?+ )I5!<갲Dkeɔ$ah 7[׹QGE)KTɌ?y;dxPݔ !rg`;'RSq`H8a!nه /"rKM{qa󅃞,E`DT :QZ @nUkϟ9XD%%Lo.N7h-ӎj m)N"\OQ_` YTqwߏoIGQy%P!e#*Xj6yCIdp&iNkk qvCrMnf fhʽwyk2E8oz y$:V{OjW[ :)ž>}ND WV2= UQqtM,\'ᖜrd}q`3h*lz־Xgf3ٞf8dj)Ó=N ;槸v9'tj: OL'0[4TJZ򒪘q+X ol&L |5c萪/U6O;AENayL JH-Lv&ョN‘#XCxHe]7O9]ifϵ;gYl~xku`ПMMS/L0,+#HH -EYoKVUS j.]k[dsMLzR{Z^C,cDŽ[!3df~g#WhRTÝlWL-ٹ!r>3ĩb~=Ii.9m]0S3 ۊ|f<MHWbb9V11A+OENj[W%vH"hSs8kMy7 *ҕ "%@_@"bv0<^ߖ;qFX$9)@*5(JGKmU.gj@|^]0? D!\\.y=q9\hQXRї:uȶ5V]b'ۜo)InJoX&bioZ`wX'=ba51/F,i/GF3ؔ onĚ!?!M@r|-:_,%φ$݂lZ e;zOKyH=h%|t4_zx  flL~Q)Lo-jTd BPRpy+=G52흏qZ,P9P[q=m  "j˔pv:xR$lX3IXp8C%QaX HF$辫I;Yk1pcQ⟫uJHtOz |Т_D1 vhM]3'e@!oXOGB7jk7yژK _ LvKW̱y|s!eE I*z|o!Dg]i̊r˞~?7 uy `?0x-ClDHОLE9~4yiU]@h~A&BeVYg 0{Kތ *Т!Xټmv zgO6 ;bTпJ\.7sLߴ|VjCy: w'agX5WJռ{\4cGN\N,W]Oy,y &gElwEl7݌n6TT{Wb}p,vuug=qA[3n0L^^ٲ&Ԝ !rUSH~@ԁG~7}yfC$:xa 05mK´3E*p.*´$8 G ľ;(48 Q} _S2Y35؏[%iQq&<*S᩷F"\&dI/jb)7^/|OM +'t>vzɲ/a2Rd3ѕ72Z%Bd\UgS O7c޷ rȧ0CR4–`h<JǹPK4=npj0[cMͳq[ĈpuhPu-qVLCS3 ^ћhx_>e*6+~QQ:$ `m;pDATpۄuu۟y|>YN+1'y)}{THgHe&G+ 5#vb5̅WxO_?0WfgWgu?&N"^ݱƣ!jw!A(JV6cٸ3LWg(d6bzzq8#@?oZ:N>5hU͸<C!f!c8;O|Oy1Zs>O Y`%:Q9\ zOL{Jv/gɢjq~+\XfoC$";J͠I9~ *wS~ , \Idk M}܊\b舣545?pTUFҢc_V OBdqO" lЫms4$;s1Hlww1lIZi72IFK{F&1Ԇv/:,;,f#Z jA@h7Z=`5{XQG5קY4Y`іDK(F󮽡}DZ҈zERnCϱK]3CP*[Y'M_C<N5 FjvhqF c7i{yPwSbUIЋ 0P/sz撩t UNU"-MQEw7xWʌS*eH~q3.p݀x9--׭c6rاm()#gu$h ey'!nʁh[5Ώ.kTp>ȗUYF@XrHB}$F&ңݺ,\b,&tt'g(HMdAIu آkDcʀ RyG#©8j#bxF$1aB41w װ{MtM$Q1E;8S\ ohxXZ]b$.RUc+r :)l3s'>o*VܡqU+˷W(b u"Ĝ;\r~n`9.U '5 )ao ,PS{#] ԕ7F"tӡmkF@/]~PE`%L9 CK>B aBqm"Ɗ u*f:/qC,4u6XEԃD浾dȁ\~93_w- Dt[*`h/sȉjA&j~TO;?>)8#.aیZ$9m|7CE)pK.~G"nY6}+PO1m9vr(sCU>T.gFZ>`=5REHD Is9@[ zoc-T-MRۿ  D=?fC, CfE O`Sŕ#w<ߗ)0ک>eHRMp&1N9 8 Vr.첮]SIZC}G+٨e{lqP&n)]IؾүaMzV"żr*8~cB/if}VY쎛d9u+Y1NK $qZMFZHu7å{8ƴMB@W]3lLľRHq/f?/f!*=@ٺ63 &- |gYIdtX҉f?dE>i-|"P>yP]D?ܱVtTeY; ΟT>`ӿ_Bm 3MD;!Epis {q=ߒ;d|!Mʕi%C:t/lqwY-GmH(<8NK6jgt rxwM<'p&_'c46bX7ӺlO5YR΢GzIJm *L7f ׸l| v7V{߈/wVI (:1#bK 0=q$Mn%"%x>Y_Knr[*Qq%=-v ƹ]$w2v.{oϪƆpɢ`}~fC̠L9FŵeÔ#s-@)bh@CWsP4t氎1D;+խL O+%k6:CirKYՀp E`mnO^nxxFQvDv!ؒ^3V}͵cf)""EU= s9PE='$~V^TkeU.[ yzG|ƑR@iR,jy4v-DTxf+Ҳ`6hu a^%柹Gxes,du(+Fř&zס:"~ڶģ~3pA,O##'+Z!A0DKU@ۅ3Hel AW&ᩰWV\y15wuR"A2~s@hInTD):ιgd!>YT] _:Y\Bň4gBA8Yž#13M.ϊR&j7dقJDKx}p"b׽Һ+LxGa(?P B+wHU y:`Dw~[Xۏ7=fK&]0 M$C xR9|kts<ԍiЈhA(3*ibRo4%owBff?#y,Baĺu嫏:J7txN_=q{>4%6wϴ[UF ܙڹgR@xMΦTzPWB 7F4xQCe*(ZH]"c}/A{o$Ayhnz1tHˑKsHX׍m/z].; AC3]#dޗDP^&ְZǤ nkie9pȬZ e!+opnYqEwQ#JHq4Fɮ(Zjdm4A^&m!-@MOW@g`~}+!z -aCK~S"0FL.ޘZHJ(Tw'9h :$^taw'U |jeAq#ʇ޾8l5M`Y4bOu>B7h3sV_ wM8tnr/oS V&Q _?pQdڎ^q I-bώqsODӌqxO++Z@yO״agu7z Kj6E+L%n5Pբ9JmMzy\^upyZn 0j& Z{Dl]xK)*튁;KK/ʂDT>I@8=ꉾC5iUٷV: _$k )W'Ab"Y-DČ|.E 띺'ZsixeMVq ( uioDu7L^s֦) Lcv?StMs0kK.&6D iQFiesm8Ɏ!@v_Z,{Df1YĿ7 >RwtZ%oa[I*X ޸`#D(D"(eW> fWYIl2T$/$++~Ckf An&],2jB;hYUK;WxٓuMR$? x d߳Scd2$?qw/'_WG S8NDJ?v85QedOk3 aC+Ɏߍ1XY8ܦ,nRv DKvӴ>{jW85 ?V5G$A\8:E,g[n1/ a k !'<:jTztinfDr PXJ%.LUW<pOwt>_Cc"Ñ 4;x}ܝragV?YAWP;6 Fόshs!9jGl')'FHBe0$J1!dr!h6ogf]VDv6[H❈%ӂt~zJ6ov NH9EIr_[Ot% `G[6MȣO}ϜRctfC\~ [d܈(.*vSb]`c|Ӹ/l |*5P5)CD5|կa0d*[u{zm)eAp>!vGbB*z>ʥnDzZpXŦ"aKRd{/0y~Σ4cP_}[|U 7<+ka9nG\&_33ۀ,e))͵LЯvJƎFaԆ,k6;_iu`pv][2Em`\1UεģqZy!l:f9+|u,W ͮ=vPysQbBhQa,ۜ -zx|1*W>n$|ˋgiEr3L( a̋➌kbQ'iJ1T}|,!92W+<OtYK`nr!=WIg,NBIЬ3%m=Ic!O+ +qCv|ق/U} hpA΂lœ zC}AL5EUg\ fp-~x7^`%E/e #V95jQS<~n<t>!/c),T d?EWLwehWsi-V\:SQ]ssQrٛQ\gKv0e?(bӖs˒Y_5)BE-2U>q|թ$R /HkGJBUvܠܲRn+d'L]U=CźźvwyYxۼXyc)ƈp.Mŭθ1'%0yE tI@ }Xi1pIYt7.Xy>o&^Tng0C^ tX~|uu)z(g̕c2*A"0bd'YQ&,f!D5C@;><_쨣~ȷ Fk9jǥCN-R.@|E̳ VP_sQtF̨R[>pN1fj?ĸw ˔VoMKŤ y.!A:0om5#nkb+|# ^r>kZ   :$9niBI>IAuUc^wQE4v+YJZ JOY{3UMF6>`4jw~-ӟ::<[:uP11 `V HX*/M]:Ƹ~c_8A-18xqoMO>#[{:NYzVLi#zT(]/@Lh$nE{F EQVC> Vż-JAx|`ja\H^fāHojq ΅;^51K(sHoan'|#Ӎd5wd1эRe{܂RR sZzn @=#G;8ᠫN|"\ɼ Y4úvX%ʰS7k~iD(jZ⟂kX5u!!$&rW6}_ o91hX{HVW|pzH*J ޥĔMeO=Նa^!Gf ǎtwfL&N%͝TDx~U%<֒5P5?e=vnhY;W!~,?@'Ü$|_}p.Qv;/oŻ y޼D !basJR 4h-BOHzݧ:7!o~ʾRƉ/ A !t\=~{C+?hK_i-bwrzH#}DE$g"N|f}4c1K \ͭP,Mlj/'5 Zp(P(ԤQ~t#Bc92 p J-jd5+Em9 &ISd mGsNҖ*ÎOЮ{=$`ΒS9 fNMY|li3A'} ;ktxInbN7( (5ooeO"1Y qȧ$:A,(Pc|dR4f֊uY>!PX~n4vfְ>C^ &Kioa/RBHE[0_5ў]28ۻyBVkJg뱆F!G܂8Kþ.'W8&SMl_לSqʴWLbOfTlcқ=|Vab *N\eA~e(o%D|qnUƭeDF$rz:{+lS(6F Yr88:EQAEӍ=! ]tFv1-I@2f^T"ԌXnH8+fS#z%xT$6P,K^!4I"Պ ¸J|{5qF'5z8r wʎ`7j< op{7 p<RSs1RҾ@iL8Vy:hU l q<MW̷y> |5^RnS,?"I`@d(84*:c< &/A`ss4/>Yi0ɔ$S';ĸȣNMXs$_ARTq]{*1h @잻c[w5%~BIɏ[:tϧdvDGr1熬 R03~ ץ}VR6RrfMqݪ>K G |SԦQks\ET.` h:N 3i'0iq7C(}~'JиhX\_`n3MLw rrK8h4 fH9saόYƆ;NIo4} :)%'_2V(~{)4r^<6|^<ޮ veF C2#Gj.BZ*<Uwl>KC]L:߯z@]D"uMo| ~M. Zğ zm$׿qmգl0*8mef_C Խ^N/|%v4܍G. "/*=UV M|Z^(QJ@1:[\1 B,"qؚVԏ^3ቕ cղ]6ZWg.\IRźkhBV7b_?ǠpIMznÄPT{_(o-$[SoZB4y]I<DZX^Gnn2[Lѕ]GT-ğ40򹛭gZ4][=dbN+go+Po``(T7FpPu c@w 6J`}MnFb $Il[@kw@yfn I]Q GbL $jyw `r#mdϼz28O` g4_-8zZ9mDhztUmf?HN[M \HI+LGlIc֞ng~xp{+q&A?;xG|ǐnA t<fFyzqbƏEWr \/ hT;,Jc\*#V qD _+Gfdj>'Q2VD@D@ͼ[TU$Qint;jYPQ'N/&61I +XǼ#V{ Ϥ_}i;*_D=案 ƈ@ ûDAޭI0)iIsR觺7Gnpm`]݊OA̢dαO\ںPr Cixi'#5,&Dle$|Jv)9I.'?ÐqP3f(^q*LꂮaADm"S_P.Ƌ:qbD:Hc Y%0e">;W֊+}K{Krypm >K*NNOĕzE`mmeq°Ѷb -HlE= ŋUڗ ʸwU[h^7<ԵZ [d4].:@2@@f8Z㡫}V9jHXoGӴgwfkm7yg  XV?h>( EM/@$ȶAP5/iFJk%C0_ȟEDPYbFԹ+^6t}zXFJ!~#[dޥnQJ cAų|q.k6ޢMk5dr3νNX5d͓x]/a۸x*uq3a 7+|wu!۫mr_/GHHZh`Tv1S J**i IˈWAqW!j Ys}\J#Qu{Nr0$C_4qr_g|m# ̎iYt)3(?%+ Pbq2š3;*J37j;\KһIPF]] SlVNWSRTUCm=ces.WAz@W'kbМ,j mBC(6`"5S1X F0ܩhc$)T0Y y}Wn5GFٛQ\v@]| tB>+Ŏ6յiv36~|]i3&6qsZb-qb}9ؗI} -EYMMs4s&_4KqX.|d?ˤc$*hWV -eYrN| Q7D{u )+]J.-A-"NcŇEp Ɖ'o_4.1Ԡ:}20~= p [BN4XCF@i^2!J%~TW*+˼ fl4L;bgkJ$)("\2᥉Y7҂97Rn:oLeKrv(`-dj!.S[XRV8f&maČ]>dtv&i'YDGi3-z4= ҿdh>:]+U{a%9{7VT5…$hߴIbZ%4spk't)SMҊeT oZ7ަJx>+>>_$\$4KRlO- y@o]ȌS'e/[4@{f.%> tvգT1 ]jВgh? `O kݦ>>8do2~if}͒gZ}u,51CT7n}@&.W/7YAރ뭗ՃnTD0Ih}.#W TBQ&ZBGV'p>cl9Y\@Q6[P SJ &݉E&";1F4Ͽ5nfE6:'ya`Y1:zaGqEUyson.h9dpKgյ'Pan2/|ԶxDeMm< T'ОxoDE_@^vd[Rz(,'kn-^g=Vm4ʴ.ܠ끑fJKl&IMly8wAk'IYJ`&@Һ&KM#OvV5_x]o͈}ד~&w Cn`\qHro$͠SnfAmrn4s'T#mUɥ 8:Mܤڌ @/Oom:vV=ރ=f/c!-@ǥ@"HeT׫m՝d;ASw!hq<)߄6X Ԏ=ǭ=p0 y6\kQQ"Hl l_9c{hq%!Ah򸊥 μ"RDf r'ΔыF׺ՙMa 9_/AfX+6f7P';8)x{b-Ѻ<$  Ɋ_Np]p NE>]wq4D|0knExջe0HP$&jv%8Z˒fEB95(#Pm0nb \%;"M;)NIؾOW$;KI,h~CCj|HzѯwI@8ȳӊ&0UO{ɾ{pz2N?swQ-5?'K>T.P(@M}aVySB`׻6 m2s/:rXCw>zロ}&⿡p(4sB 02PZ5εI2G31*1~N[%s/}? v_ƚ:`S CY68f5K>ZƙyuP{<]q@ VBJL,]Tfч_N沩ffAB T|4ZwKǨPFƤdPwa~e ݐ)ssjπ  np4H%&Ll&{\ǫ]MCk(""ʟjk'!M]`B}$˖.k>EEWH<:*aj"+FR}$ïGwD[Y@wިE@Yٞ.#Op{8;֯"pY&*,xF ia)vfۢ |Bai'5QPˀT/<]u-szi`R8'p.D^!ɜ̓3GjӅțسiL4 uO_94o[@%XNS J"0QyPsF@qzȜBP"=!Lq1!Gw%t l't7j^):[a scN_eU"4#l)[ ;-O/e cړ`GnI-\6ĸ&'YDm'MⲬ .7tE#@J=|/Z(4EhBTX1"\8=t8Cܺ [KѫahXCB1 U. ;o,Vc``: %|rC(Z5w>3elCq`9%s>bxcFςd7'4S\N{." !DC%9`w߷YݞxyhPENBLfS aPeӆ!'\Ȏ1Nu`˸\f=fx&M:nygGdKϢmLH _%wUa6ج@r5ZF c ʛ_ΓVu̥ C( M>EbfR*;2Lε>A|5 -6%%o/U`RAlU|ր'6M2>{R;<63;kDV<1@? 7Z/#d65yBR/Av)P p1.F\IVS,ҶjY3M 9rL@PS]EpM\X3Dn}M@aGk%zqJr%(<\ UE5"ZgZ#E+ ױsAY˫砠-ι!+:7DљO -l݈!'ܔA@ LqAI\MpY^ԗZ?EmHb-ȡgO+oƀ 12֝njzm r "-K2?:m`?\Д:}8fwJ.!m9E t<XCQ.F9*)q^+ͲtOm[j2L if#p\#9+Com,i$N,t=ST'c1hw3%^C93(cTlkIa 49Z&H7NmH_";R` $3bmL-UoBP2^Ez E4e8>ap<l+HIP2TGRвn{ *AINڭ(sPF$|?ƨ>EswەlpPe* k1W1.H59ZcN 28 }xD賮y"Qa]ň3qŒsrtґS.TbAEGHYWt90JX3f(}}eebt~k޻xM@oMB{Taa$\O<>Io93Bj^Lާ`hXJ5T9Oi3g[K J{ս@ H57 FHUjŸ o}BMPBK;]=+`c8m_q9__0h - 1aM%{fٲNG -A%*T^Lj>Q~eL67M♺kۈIX>+W6N9neky}*knsΈY?FHŞ^$il"Ro 3k'BX_ԗ? -,C6_܆z"{>.M}/PR.{>!$T%3En\;_lia3s;L""Y63hM|&R_Ol*BumDʈFbf Y+FXXVd#ܷ[b 7qofk$P\xlGޛզ=qMX b={"`(L2tou~֖Oe`G!nMSR"'q#n{VAwTC쯆BF.8B!KG}5 KK.rЍ+Tx #9&!@@ܱgANFAb_wجst`Ȅ+}ŋB\&P |j7:6Zzό?fk_98Jz>Lϳ& =A22)O;;ei k{V,A/ú dܔWOWX\{b}N֞<^f/6I4w48Y`@^aәaM]B~F.yL@R#*- n^}Z1p4k0S,d½nҼB9UYuNOSLOl^0<)pMxH6Y$R:H"0V,&:oD-Q;Vl]з#:EwVqU$2^m0ѵL@Aږ6v`Z Eĩ_kn$#`>)WomÞfp$!zIsI(I0e\3SOe,25w#7Pn˄`#V@4xh:# Td_7H!(ͼAR zqZU_@x}y!z0 < Kd'ދfCbe"ŃW-szY`?YF;ϾH"S-6>Hnnvubr<߀'xFhY**ǮQV,lY ˜+H2B?]]̗FN]eD*;`NxF*w(c0?aӒpNH֕{ɵ,Txv_z`tM]h n ({LOnJi7+E4ZwHsƯ%ӻ9;X |q& tW̎!)ꡊ]RN,ˬ΋3 jN|NpṰ"}׋fs!*Ofz|DfhRKϋ}"Fў~F-_Sƃ,Ǣ. YFEL&B#<= 3TZ Z-ᶉn:ފo9dæ&䱂KkbM,Έk 8QS y. ׺wjB"KܬGXJ5M yg,Ɖ`TQfcʢF] cғbr£<~'}0Ѕ= M DTCG$zbŹ%C]8"{Rx>ƗV^73 ǫ_R\ 2qk7 o !e^cq_xPpTX#᰸`6~NGOZi<),)Wqbst{=-B&0⟍ z#1`Q'xz3>lS:j]n[UJwi'j 5TVk i7 bĚh({t_?fn&.8sxz۵p$K~&:K1-{,[ F'kfH m’N!%=kzq2Po/!:{޶ zkԣ"+dj6.` 3 φ"Uo^c,| 6o,Хseuim! <~U uF@0vv7oܡs=_ tD"Ѷ aƃODR.XuG5Ɔ 1X$t޹ }戴wIRRb0@,j^3 ٳ$46қ o6CRPkQ_< _3ݺR2f-MΪ2<!WKE+5SkU u䈵rqkspK=rcelgETRi|co1Ur̹7@{r` Jtu8Ђj}6&ht. *LfŠO @,]-. M0-M*d3a3fAuP@|m%ݲꕮ[_^ś"aRkȞ֐Rv-_ZcRJ7Pݶ{r E;IC ĝ+ lGG]єB4чLDaX]:\9p9iK^ aJxp% 5Uj>vЪ^ćMٲg]̻12̖_|S+~Bu8 u6$0vkjdP%YTҲmę!}ڃx*bX;ڂd󖜼\unP%iݹrx*D|?On c#k-8nGAP(XOA_ o:$+pCY6I<݃ ְ̪$4 7F.Fұ'SL7YE84p|d|@2%>++XkP瞺מ>w* -/Զ8~q^'B"d6`RRwJr%*B *xt1]#eTT*Gwg7HɃۜ%2$q0F*$.'L2D&QMmBͽ5|vr(lJ&B)WjAkυ ꅑj,\~-$ 3"*_69Zqg#ʾJj8ݓ *4 M,z̬jg5TWdIVQ1*jxMVrsa۪g% *CzbmP_tm;*c }6C}z$#uP5JȠA"n"r:BUP"mԔ爭}+J}A D=C&wzM+qރ˷r}SE:@Xڪho[ kA!:_5 mHqT/Uߚb~u0Dvinn=..5*fm:U͚ T@^[Sa5 @_]xhEy|ZѩxeQ={Y$Ib\zwuw8 o&Fkօ2 ABa0o9nia6UI)5zM#B_' JiU?=/ԩ!;Xtxy4djB|*-QwK78 | ڧә\h"Qf8J?w,&Ta(|EmͩI-6c(7Xܰ ]¶{=fJW*\5S%ayie`{( ߏF2537+,9+i3z82xu>Hl 53 ϴ3*c;zA,>IQҼ]9R  j\x@hr k!2Ms SCW v#95-F R2CJXD pXE84"^Y:?N4{ @U/[@G좂 &sczZ@ >ٔ{?YX8fy+,{\;2dJS޿g8VoX-\>瞠c06IvzV h3 U $ >*m{6YCe/Rf'QLĸ$PX3' _~BܥMQwt`Z/ԓ.)JG]+ؗ$΃E!}0~uJ"5{VoFTz7kX¶El }X EFGVGlx9W_tB" []Utwqa`y:ҋƅMղy{h_$ʯP ん7}|n9Pa+gQAƫy)EL*<ƫWW#}JAΉLDpk4Ƶ.}[5eFGYʛq'mt? ;t0%"6b>-8v߃yAq`Ðg"Z 21-%ΓS?1)LnaΫ,q߯ ]!<o=|U E/j{^}D}4<߻ˌ+'Kq=8nvR 3F:܃ R#\QE=Pdv:ܥ6:1rJFiȯa |"EͅpMR`]aGK3M@ꅫb EtMbuŸ[: vة81~/a3E2vTn`p"zΨGQI(:o_Q@QW=7L.5R.)?qַ̝Y䒭-3܍YvpY۠yK[8j"W)?-7_:~RLJw_Sg#'HVeaVT]~Ǘ(4]Yr;a6PVS^wq ãcRiRϱ.ѴI""`_ \\0oMzi}a/zF$fgKH<~g66BFnS6vQ_K˚`-X?avn ] y¨"b3[ # R8ʜ9zcմVޅ7TADOCX{W^RY?OXY݌btf*鲦 csyjvIł"]dYYݲmW K\˶C,}.DKc;twTJ-!+QT4 oFWq$g>%DQʼn aݵ.K>c򈤔%aA$-泄 PR ]3 2czBn2*p?#'-'`rYDze0՟ 񅕩1>SnvR1szڔ^n`(k,5vv|`.?d2 ŗ/WcuT,,2w(:qrN^Kdzbeׅ~(YZZvx50/Kon\$U|ۤ6ԯNÓJiZ _? _J ;Ax}KsĀ{YL{hHC0Ѽ՘"  y;9e^`XO*ЀIf(χhR(p_ !r (lЌ o8&P 0ڶ4ޙu&j͓tAܦ6{$YCqсOC}#{>tIouFlho3 2H*Mőde(PA-<|b6RZ虻qm Ts֞ͯٱF`4JtفteD:+ᚓD7bJUDU s 8ÇcɼR5fc^lA(㶵+{iI$ZB@ voibxW9mŨ<xaSH߈mߪm='pHٳ& KK=;d5/`~ިZ!/ C硜YYNjc]F`x4FF*JS/b?`5K1XmuMZAplnEퟁ$-X $DHWCjTucy! 勿09˖2Y>;p";^jT)! b}I]b;ɋʽʼS#__\~Mpn - W?#Fqцz`PRќ)]ܻM@/Qhq YǤi ڔVa_>AOmVb;vCU7 _,nZ㟦:7!ǃ Q=W,TO`ph2O!Ky &¬HRQ)KT  G D3X*e L%XфPj|.[Ql &R+CR$x$;8;\iDT^L^R#D5*yf>1OhoI`k9?U>_|JSZɠ{D:D4_҂\xV6q곴>fބ/Poi~蟖܈OsC};sA\&hN9VYᨴ`HEp֋gkJ=Qv/.HoQ;Ҥ]p۳o#^8!T&9TЈ62sOҽ:M=6|gd. rpWN@+21n-‚C-gBuFôA:qy6'0&'K! NqB-U)&gQ}% ȾXKs[ J8RrM[iԒ.?kMtHlԳR ps^/Ք}?J߈3>76lA>gB`JeS%<z?^bEB&MYI0&/(GRnHʸmQTghik4 x->Fn4{E ?pG+H>ljAKMzs+tKf(I?=IyO;>:NR8X NY1Nr04WLUKT 3 ޝ̐r- <֡ CM9t [qxz[zu}e0ݠ=ʚ-π)'gm=Oȕ w6L_CXiQ@iJ!dFsfѤ n\qrGL;^ gl:>Ur?X k|#ajR(NoB< u7_6 )L#O%}UֺZ8Z j+>SDhjR/O8a)>B ;HlN!Ҭ9W9ľDA'LqYWՎ\EU.:QZ2!nIH}@jA/pv;:QEhP^!TF"d"F[3(z;JCTבG aǻݬq:ӕ?tEb%‹\f/Ё7fa6#/A$#<ؓX5 :^zmr`-ThG@ow WqQJvE1[#][7ue~u C.YoX(5%}+*Ub\T2`|s5hB8%X?Eq"EXU H4H ȳ;^ū,̙+_&?VJ,?W~Q`eňxh4|0~#PP拪a)Y)oV=CP̗GrK\X<|#o>v䛃lGM+ϱmŒ?)h7R~IMlDOKYiRǪ{ 9 m`XeNf؇G.HٲxQvdSz^[l(ݞ 5;nyh1̈́",0,IGB$m|,{gRm6Sz=^IP9M(}BU,;g.?Ci3SY[2*S^wߢ\#q?ދ^Z5%UƔ{9zA2%-:.ɓ.hgֈ{Ci^IsKv}м0Z%x-S}w݈B]ȄI^WE0wc4Ns7uϝ}rUJŒgJ9U`VsRME<_K_h3[މA}EL㗧2|.ثwiNȇ{kА ߼ItC*(]^~k9z Y 1> G}mJy020NcC@V}UO^/iY+mL0>>cn趧/p֠~pO÷9cA`#nwZoJxEbC2ΗK2gcTk!-,Ӯy+w8o=' cK\m j&nlu%x0FSz<)\TX"%DNwJo}})͵ <-Iaú *D7Otٖm=pv'KC ?UŔr0kLr}=㍷i6Y {xMA9t]a.N 2D8}M'ڵ"BX":)㕔T 厎Бl{r {"a謻 |rX ⮺Ԍ YĿ׳gGv5 a`<eѐ43 w?JJŝ%?/upC%jC6\开6J<8|P=<5q!Iz}QN ʙ{@ Vd(I@s2S:HX#U\Jlso1$6΂fZ6%T/ cNdwh' Zt*zL׀!b-R`p'mPqkׇ=^֓2rܧխ{vp1㇀Upǻ'[:2).+QN`ÆHB.w_pYOhVqA_:fS:W{S*Fr}{Qe$PbmRH.ln:o{zꛣv2L#[z0(N8bw}ӒU.Y(8Q.BܳpqfZ}(k g!~뱣SsYɞЭTW '&]qEЗwۨR"% *bfĚDXɮZ9Sk㦨&@vO/t`Oō{`-zr&93) hKk/ɏ{`oxᇬLWp;,hjBeG~I.=a9gK^f?'fo*C:C 19WpԐ1XK`+2覇? n~,)xf(,}u q7kC\*ѶNuž]O 'H 7&f{C :e@~|I+on;HSN;|&Ƥ)&F ss?Gڼk{/'@/Mc- r*VkI)Xp AK'R#h]w N"60|K#:^9WV:i#Oo/تR>Ãۙ w%ʬ6 !خ 0-5A27VzOɊb-+O?ZDގ P(G wy@p_r˭Dʿ~Dkt`wo !*p- 0!jNҰW7aiy'uEp)nCޤ2$i>TKP3FAp<ة?(LAWS| U[_$(]5j.p $R Gw9&$쉓Raj)8PBVXbB=Vlu=_MX eC6/n2s X1- 4xK4xXdLOqHS9ͤ;dxv ͠O?^EXqz C*wo]-26n_sA}w:9Gj=  M} YG4CSj+yS_H, 0WnhrUWR 'H=m,RNt5B#"nnٍHBzDъ.[u/^$IB|xԑtԇzIkD,u Csq9'+f *;iè_Dp1cwUB9x&wF8܄ ? sb!lf/ā]PMK9MNDG|otP~!>X 0K]d1;R0[1g5AiMΙ7N_ lm+6%S\ꡅjwf*Ӭ?*ʡ^ԚGBB:uhv+ԭ4ZHUP`6Y;Ycd_I(.o̷dqDָc/UpAR,tf Ꮔ@_s'~LLI o<38XUz^ yy$S6JԳhG7Y ƒYucf8=)u_k"ޕm? 1;5 =Rg@gっypX T5zo.6U'ܵ}RCb4q 4( #xz zy` >e#A#w zzJ'b&7$}!UmsN}E)7͡L,8-%*m().B4x_׺&9UT*JL{Tp,6DypFl"" JtyA*?p{#&0!fr/&}1cegweB725cAF[hQix d%8oѹO_ΑovW2e ]jD 1w" Q1EAx?@-KJKEfyLri&{p߮dэdW` D7o{mQwt-p^2|QDuX(f/$F{GL.D2Ń\vMMy鐟˰.d >.WQѲTLyw6My]m-X)5 Q , 18^~D(f*iZvmHfO\쵣F$"T8q(i+-8C55Xp7WK,eu(Z kM%|d1CJڽ۠xHӝskVyf%L\vNkrt mKuOB2V-WLpO/~` xu'0Y(/v!/"6bDh귓1tP[x†"EHI@I+xVIbIprMlXa|BC_jxT{^*ci!0 VZ1Β{E/@~Z gln9 H4* 3Ki@uc_}=qgq'~\SP[*~4Sƕt)C_,E-odDUs4׉Nxje@Vg贯cEŐê;L(= l=h`unʵꝱQ\ d9ٹp. BG>u=߹O'k9-~c:$ߎQ)\qhu>Cl * -(p9nFH#+kCcV*;VՃ5'Cyf!r)PYAq.BU}9 A_6>/v؞` 19n1-:ް!>hbQ8y¨d?~iNo8cX{v|9u1CcYg]7#RVB]KwU밳L4eMH9p#JҽRXŎTml{v,JKbMe!P7ij(7k@ɉZ~4kRf[ 4V2K,*A9`%ШGyR@!b1}Ek}+0]3d;sg1VG'<5߸klT A_(]9I@,}=3maŤz(E|V+4:=;hԂ\#_G#Zb $/mW8 x1U1xͷ#QrZNBClE8 ^2$0I-saNJ5/7lUZ mp#Zn3p?n=erKLIR=~LRض p^wN3pl 偤*_ }XR=.{2Ą'Gt*uVw@݃ǕqvҒ(y`p/Ge..0T<v  {CG21,9ľ"`A)~b,h bF>wǦ%4v6X[2Yf}е?l;:3O@ ?Iq@xXyV7PV7> #=9scDWA)rmxch?ZeZ0 {^}djW($ؿ\\> o~xg@4ʁXe8м$,A UsYMJ>ӐS9z.; ZO6bϣRG7{n3 r/֒ _ɪ6jvFkI~٨[n\9O59-tQġӛu (~&JUv*zȟiٺ\ 0O| $TY6"ezK4'tsDkf^ Fsvq}6 zY5~>ޔ2/?NߵubF:l.9 ŪZ*Y3n^nCIz.>SC8$%Tж.'"! 󌵤v3|OO $ ,䨾ʼD^Al+$ODllY.њuS.H8G)zߢEeSYk[2Dd.>O0FiBzy(P;fCW궬o=tXM_Pez >1]h7Rn4d@:11}P3` )T;k_[3C4Ql.Q0% g̑gƣR4w@4z_cQAQ =cf*;:k@9&< QP&J&M]hd =YDb5߄\baaWqI`4%wq2`օlW>SRN[+S>z6t./ `R /xo?H?̂M+-Y2&]TD|=Di/j`Nkih8OEdP€$4F`P91ZxKP_83ZlX٥ ~r\y켜*eZ0.E)l~*Gm׀.RR@IqGH?|Q1r8:xj& .C ŴIh r?ՒRCms[hb9=yV&~/2X1)B+]\g.%\m'xѼP֏՚ݨ>TJs1Ԙ*:%nTS5"/D:r=Dzr_H Y3~f 3 Imܴ d. y ,8t:y;N/2Q:yxtQlMU\'%L4~( )?{_ \3=w3#I0 t6UwM4cj|H:4#\?EoAcƵCeqs%/ Lw3e~ qM°֪5X!=cB#i—k&K tA7wŬQ *2V>Rf-&,do5Mi`e0[{FJ#4ff} v7\=Z\Gn-k0L\` `_*፝O>|Z[r nK'j&9U<:؈=s YB.+64ẗ'xNR&|l{2*E'fB~/dWNU 1TcVP|-?b.9R5¡IS++۪>lz X0I_@(k=2nF;eEjB/<}A vk*Aaمcu'CQ&&W9~)[|M@FpҿG\$l^ M !cx }=b%ȺL +h4FuʌQ[{$ MY?"ż 1IM2Q]ۉLлI3 6]Hv6L7 n3ksJdWFNh@o}_h 4wl Sp:DVXp[3b'*W4W++{x|F3yz2.f.]H$0ZxzcKq+GO_Ou:;n܃uB }v"nt 9,p(GXT5vQ+&Iuˍ0{ycDaxt^{+.:ުIJ Rt.k*m'y <"0 CzJ"Y ^ CGx0Bǂ"({k,MŢP[x_g8ESz}ai}苐 W@Q4h0@“;Q47NF +lhI5d +w29! |Z5S\413ҞW.'Y{!nw$ ۪Fy⬦viޝ$>L09 N~^7[ >(_|QSJ_f]dC&Sy446:UM\w=^ө;Y 139Qe]#Eq)s1t'^Wg@ fL(6Dj2(`9)@KtjL Št@E?ɗ@`@P}dapq0Xs-P&ќ4&#)aԥmWhAۓdrx`l1k ;A{Q*Dc |-x߯z8JcfL)uNl e4| Η"LOh':lZY6qLmpڝYG#6<tDᨑ&xPik|Pz myoB7bYWt3\:/XXOZ!GID`D\u _w[L""]UHQP*Xf2ė>[̆N/Gn&W>U[gixs˼/!ldKr1Ғja֋0YbO'%1OwY봟}0DGP"9RcknbBpObz޻9QZ X2HjƗ? $/>.2J45cH7P 7ϳ#}úaGP*YiyDsᅔqaF~dAv'o wB5i(PħABA=+n{TiN"XoWag+k_GzP}z*?mbZo?s7~q宲̷V k5~)t7md2z:Fv܊K yTROc14AP+N^aA]eUt^ɗs"39[l%1Y:*qRc-uVgCt⁴Ax޾Xj89uzPykfkT naK!)/)uؾ0t٭lNJ*|4t ?\} D0f ㌌DVqD@z2ƫ$jbw+'m';nbc!4HFogon)ZMVʩKpwYZ3GQLHbBq]9$y2J#xxdwb:+o鳊t *tl[\2 Cc=_A !d9̴E 2ElLqk'׽ Fo5O,$mPT'4+gկD>c!vEdl.e# 1:ZL#}+OY1ETDLəی]͂tH"z޻e-gS+]1M%WDx/G@Rqj"- B&/{8R<}em)Vk`=9?m𺩤ڞR+9bD_1 l.Ou1%5T QDz]<>5ب ZC Q}ӒiVO?/1B98,Qv+Ts0C9N)7u*-df eEIv jﻹX1`Wx;Jg;v|RڐL-PY}iCFeQ^ybV5s#/@ YhC{7F9c\e Odr*9d!>N{} ߊ{6'2 yeNfqt0}F֘H:qva$`e!3F&|| i!qr9 [#:9r^^/aNmmM |YKf@9oYQ^cAxOC}?|>W+r15o)tąĶ2o\Li},װjiwrx;'s&8rx[_hEϽ=Ӌci5!q`3FrV,Dqd,_3\yHmRӐIIsCgFRZƀ\}Ϊ P.7 _uZE( ~"x \m뉏t}X2U؍dcH]-z@4!|sU 4Qy" +,Iqjd _~a@?`jAͷ!)bnOM07WuR^mCnUXvO~>TW]תP8_0_Y`a3n a(?,9=u0"oUGM1C4i39>@A2rtܐ$ٔE<mtECNjDibZ+/yz<8]x~+ p q " w]=%CF*SsE+c_AT-!"5! Ls Bi'#3}flM #>!C WDHtޫL[[iY UUI4lm / 0grṌ-L~gV M[H1SXvϐs=等{\o$P,uL_9]!.7U4qD/Ԅ@ L J:rY댏57 txۍ)+SnatU[IzGNFޏV5$%L s04`OŚmzak&bX݌;g yOB^|?fi 4]OGXCц]dAF7 ޏ0Pkܼjȝp ӈ":Ipx$VE^G'7թSiheng`{9sYC45Q0ǑA#=pX19GO";>$PY f?6cwL"с7U  F~ .-x\4OU+j$ޤsBgꠘ HENQwف,WŻ:9iU'z#Xƣ߱&Jj:>ewP Ok~zu2P錀, O*],Ai=U^3\si0%+ ]PM %W6+wϻRvs//a(^]m¼ ) [)lQ1:]ދY5=y3#XE_: N#[>ˮN:~9zH, D:mz`qLihBAf)TZ ]H*0 o~ b|!ә)`Rt\|<&&mGgL>]ZcozJ`~K*Ls .ӶC g:& b7ݘQ5RFuѾj_@ :}-agEWQ:7sbw==aMBc~n?l2VmkI|4$n[_ڀ16L lϞ׻`8ͧ,Xr4\`OdzaO"eSN0 PEJḞɇW.{:#7q@OD/GQ4V5,Jk7(w@K\QV=m>}EZ0)j\U=.f=g :fH@G0(jvuP)"HYn22@ІTSB@n7{yk@Zr]*̤}m4q?8 +QVcߚub0XnT$ {10~vn۷ޕLj<+u^Wdq^9ڏzB?xAL]T3uɁFnxJS_/Mo0H0FݒQhdULdF:i=(zT6>)mmI/3%wo2^\ aJ ƚ ~BUQE6_˱!,x,^HLgѲx34}!\I.o<݅c%-ÿ粃JZ )\OP=;W_aYhrGs͋8@WoM0mUGGxD 2Ov~I:0a h8OϦJŵcT`(ÙEJs] KMݖx1mҗ4Q't AVK=gA“j׶&Mss# `TzLdNVoЀ+\EI=]\|WٿphfG_Z&d?=_d#j !-8K|46lM', 3ԟH\B f֚nghqNSO-qQIePuI[;Ah90g?Ͻ>zLߊv,lPdqso@ s@U3B5X҇-U^WRMY%g: KOӥ"hӆxq43h)ȈeL݄~gŮ_@\!uk$La~7/jJ %5U,>q|CXً vU5]m=9O)PUUfӥ*5K+giM3آ+P{(TѢ߫۰i;DzC(< Љ_+U0ӍobQ;;.ƽ$ KnSX͒\cu"u`%54_E h7Vdٵ~"CFKNZ\ɸDQj<G};61]x!0w^H YS8yf%y 2pB䚆h}׹e/j5螲ax3=Q,^5P/. ɉ6u)Ua|Ұfu׿ D a&|!ΝI=!P^&R]4܀9Lw%3鈌!5d?"Rk43Uf)[)Έջq\J5*MSmGJY]'pW_F! [vY*xjҝLJ]x{[lT@A4OuHaΥ`y3%knv$}`Bz e_XƱkP 9a}>6p7}pGbę0dD;w9M}ʺ*:3͵g Ss9~r:i t<܅#1k]6億tBA{Op&'v&q{B\Vg,-s-[fg#{/%"tOM@ph#3uB>OMJ?A 5Nc) ?yn h$^),m߃tP韪d9`zY F oa,bgQh`bH$W@~GNڪ"1P K_1XWIhm#v ㎰ǷDŽ;H8C:%r:|MUQTmNGE-ׯYvR359[>ɟ31jv n2 uJ}樧O[*AFÃMm%go&MZ(EZW$u$+V $>s F,qTV#.,MwUݳq"![7.Lϰ# uM] 9+ۿJa4ka]9ї{ PԴ3=δ@{[}F+/:K6m#{/dd','KkDŽ|)ۗmA}K Tt}+$ xYjʌ_`Y3'I T㣹 c(B4}CϽ4R4wMS L9*j%/cJgmvPv϶E!0yeqSI @!JXҟc Ԝ ]~#`1$jQ|8쩵X'/K[i38'/`Re%Lr~>k@V4mgO1nzN{;% l{ajk-ZiaZGs7٩Lf^ri$ .`Lᚦd0'oiGaP߄D1f^HRLEWfRTbjr?;^~wN5|ioiw<)"PP)lo nw; cL/Wx<Pǖbc7/)nax'8 xܠT6p҂~dDsŻގ$h8vqqӑ,)BX4#eUݪN3Vs1%@eX6xq˳ |-OH 26eA)Z"51`6ԭ2Q[@DmGպ\3uhɍPiڎ Jh:XI,H!(Xg0W{v rNWopN<$"Í|DR ϒ9m}Yj: FWݬ\LgzZ|`bH A.]ſƱ t@Fy-n2AL{N?SHx#Z $CN΅BxdafM%l@_PM?F@l%n93ǽgTBpr}E&C=օ;Z5x|}^a|iY&o3.0O bXv2Ö-{Zd~':¢Pٛw?H4AU ۟yIתf,?KjQ9'f^'4?coT="u`Py2\VVG Ec*k.>S |B sE En!|\xo9N661 fKNWve4_~odC2?wۉ )[OԏA+ii5$+XiAȵ tE,qWur)E$lhQ4񜑒m;R7ADd@ 깵l-l tiVNDz>VXAaRbNo#@vCz&#k-H/qa4#T&NջV#Kud w^Zmi!CaJpy;/>@0FQm [*_lu̕:V)ԑ1:scx cd붨'?-#tE#ASL,F"F{zDmD 2h<#u]6Xt])J2pFskU[|yϸڏV9=Fa}!"S$ ;W#Ӈ2x }-;vQY΃oh; _?B:QЊ'F2o/v]7qC!Ŷi̜0u4sӽw |j\mxY~9q5S#ʨWLX,өat-  :b.+ٞ) _E;7"4pDX_!f'K2ioC"vv9Qh٤wY隸mAMcVĒ:PG8y2iF9pplXK%̶0vK 7MǛYGNz$dLaoG9ҦaVٵ~r S2{0;<=Cj41SF=G"}ݙ{By2/do/8OQxam,(_ *ꦨuiRJ\&AIvc%˰0I 68MPoLh6c~*$NҋL?y½ǑLzfql-MNI0Wmńm]o1ɩv`$Y?ΰFꂺ|a(ɰV.\ؤqWPMS(NR B'!Տ* j/mJ tε>(Pc>6 )9?>P$Su$nFc`kdq5"Y(rHj{ 2i9]sX. $sJYWUt[+ȵ}[Op4 RH-eH`ނ~8xcCG]wVE[f;f=#s~'w!߉cb&fRmih(ZWS=16a[9%<7fh2VϞFU7vdF8Y)8j3nx⡩brOJ%ڽ"Or';>#$,!Lݸ85-F ./IX,Kwb q&‡Ac!Wb>#όyɚd ׅ "&.V=(if5)<{~Ar uj.B 4Ky+3xW֢~Tͪ g^j`=eh^#iyƒjbNRt}*kJ?Ypܚ 0S(M5 <`'LZ@gK@'sh(WE>$bi6=v׶Ȟ [=s 6T0:U[x0/FU您/*'r6.F`IZ`zk ;ǑsD{p8dX/OQ^kh1eFh>A?7DMJ۰Rj9;'UϨNo,+/#Y`Z^ /*.mpsλ=8KvyϾ@*@d% ĥ逧2]K9mo\ʛml!VC|M<}c@6E;bNA1sC4f _Ȏ_;T>**KnA9 Dٶ8cGzcvFy>U+)>YTv6v^JyUX@KMI;%2^%ESxzkflKu%q| #f؋VVA\JM?t%vlD)0т YGu5fל愒~(r{ '8 2_1gY0Hڕ6b[B^"L.C%&ƀAD~>uYq:mz]"Bs?ŞZI3%S5YX1E]q FOc3I .]u^И7jVLȘ)P ?+mp+ j* cل+ i|Mۈ=Uq`}Nz ȟ͂q,d []3 >n/N"S${;,fbE|҇w~!2 .۠`U YgЭ)kABՅ1a}/?yN#u- KNMz > X;=T MJ$ s$QpB/K+!r ܍N!t/ f3MnIH9׊3"$]>I~Hd=~@1MV1mYC_܍Q1mB95lnʜqE"I۫.za@ _~Cs r!ϛD8!t11~s`Uӏ9YS[BYIӱiaS㟚Ѽ;jg*1 ᶽ'^ZRѤ=7X`>u!;d@b!_GG^;}@!m.*kj6-Q/K2))ogqҴQĵA7vȮm !Y=ϴe[$l %}X0ndO(*+xgIQ@]͸]mHυ`٥>a[-)ۮvJ\$JeQJ[S aܙFלK 鏃diS7nQIyias. P%b>2pe){ P~aVBJ3k ճ[ǂ8`nCM ̻*"JsB43Mg,}F/Cii@mӔ`[4h 5_n{^ |"(c(> HDUڥJDL{S?+4|xڒi4<`q( J؅WzSZ?CwPkYN" ~\C7 ƚnIApPAΛK+s=3?lf~TACSsi\%jO9]Lc2Pko V8*ݱKr d P=nd5$D¶@孙% e q1!Me'>%ei!vă$pˎ]Ԏ zӇ{pP& nj;.`f?*y)u]ڙ$?'c˴gfpX5^9Q538PڒuoΣ9UPY.ńb'm_ L.vWE@hT]iĽO3uY xœ<6!°0h-<;IJ*AAh ͝5L]*`IJ8'˰qN#Q0?%|DeQ:OInu L j l:(Bdkmq jݧ`#>n4ZJ'{6颢,LZ";GJ_#8LH)=6j0s@rO.FP#w 7 HiRP O_l׷jS5hT%StI } \Ό{֛ۑ9MlJqϞZ]?=$ $ vRH n4I:q۫}6&(h2rv. $p/֯۷^banXsL@.RG>8 \Mcrޱ>T#,/n~S VuAqrѠ~vL7=10IȲP+AyKڡz=Ӝ7X/M Xr'I0ēHECe(g Yj@V.8me%ڨûÅD5Z f?G_[a>U{%`t,͵N}+aǝyE׵ ' k'('w5޾~p6Q=CaߜTEb.9ekagb=>!Lx 5A\_fDio)ku0>56ߗ1 $Kt=>BjΝ@Me0_Db$1G8ah rZrZ jS:c XԽRZt9F!ѳoքro?/(. Ca# QH{RT;TA,b}OQ-~O˥爝Tע>BGd0(v`XzT{'Գܫ]M{S4>Ӵ@}fߕ #y4< WYh䌀e~:!+P|J1Wd&.]JuvVDP0ӫ.` "慎ih53V/PmI(cK&!^LYv;5/Y(đQ"=?]7OYRZ&ı(6hK#"&vs9K2:۔[ tab!dzRnAp<'%}8i`o r<nVϪLH)ؽGl2|9,g!%d驒yB#SA|,bDm(^ůnAɩʳlJ6WG=*\&0_cjj"g_s@NiI$%ͱ.c{`qUdgi tH #<=Wb'q#+ 4'}BnTLS|p^p´S[)ܜu}їY(dՊ<2grL qd*xQn lAbKgDoB|ge{ uSGtTÞ<8ۤڷE57EOr9ifW,fjῨtscK/o&RkEfaX Fsi%pd[W2<˹ʠ3=]x\m!fPde.k8B~sH> Aلw_&/ZT4[9!*ٙ|am/+XJ &qpT"MTʧ{^^AIm|=rC.ӡ_ĞvɄR/pi;_a{ek{_WC٬㘰L9AA[E^v'ȁl`Wd4<DZ)Р K]:}/MVHNtz#߅N(v]AYAN~4勲j%T1Nn{ +7Yrsbvw⯨4LJjM(G Y˔gTKG2huS>c~F(v`Le˓$pDtScB 6+\3@LhA7xHd!ԝ@o~|~{ށgOOK0 :;YAyzLOiY<$=e\R m^NňX)ʠ@,oeJ)0o 58@KXhMC zဨ&ʼnm Y|h6:4꤫KҔ:i(OmںW՗/|n_„_TyHnuB?ӢuFFE@ ƒN2͇j @S-L>FN'~6Q;fe댹%ݗYo&ĸx;?t+7RQ+ۘ]'8+g+|}Ϟ#GuA<ЦpEy^NbzVɟTajA1^R8!ggQ:c0dS=$H\ዶN5%QԷӝ斸ݙN2Nth}ݯWC;_4 =﹡ },}УuǬCxi.*kb@ȂNJWGs3BK,xG!a68n?8)] s(IgY}v%Kfb4EpWɿ>R4G'LstY|fMX,1&ypa&U{K>@ (ŠZ00g<ʼQcja^}px̕[aF{\vVV'WŞ[ =>@[VfA|X^eH?N,W!"SQ\[+&MQ?8\%x&w.HB?$go"onoaJQ UxrbX%D@6"WM{<.DsdkQTעrJ%>g@maF2pIEqCi.[/x.gKXmՀ,z8?RfRC~{Q.c`|Xe(MנZ /[ߠYg&pSSI=[ 5SHj׌b.dI~Uҽ3Ktz.pDNe00'kQެ|8d 35E- "Ŭ fxswQ`: *j JU^L #ҽvs׃/Oڡ ݛ#k@z߾{*FM rբnufDE.Bt(00f1tJ (dtY}Zſ(l4WzO!{VƜRYζ97aZ-V-Дk!9/ z&p "c?}uNFu1:|F=F\maM/X1//NX+_4~R>DܐA _N|\Q+ oLNqo'/'a.6ߞQoR_ݵL=dʥKj*-m3Y '3L{`.ӣܳ,0~x$(> Dgɇj?%郔l74 R#P3 u_ST53.1 w82l6 8ewH7@j{5lW1j¥5$%n"IT"2ٔByrF./ݫ"zRev~(reBlT:+;\,^yu%Gb.kӤlX"&$0]? BoK]۾ۣ2ge8efngeb^JiL9dӷ`i1 J*3S6ΰoJ{w:9s"F- `֜5.yu`k.&*α% vCH^%b؞͓Mc z4˔ѳG+6Q s24 OTC$ o0"_CHTGc$-HB"eJ4W\>\*)t)ӽV+;eݯ!w~OXtladiufmB f%h;̈́.&Ι>%zßc(h"?@)SҞΓ_gP8u<4U)Cz֒ӿ.AIC]8>Ϙ4|q<<}SfD$fkCu8y*zDѷ7/@OlYKKފљ PTkV]Lg$6CC R79k34K{Eм瓤 pܔL.dMK!ל6dĪU}񦬌z uΉ R/%*, ĆJ#ׯ'繡WWBY/y+yiDXSel޿)/2@^zmtpt]ք ^A7P:)G ֮VӦcYPp$k}qhShk^ zDN?~#ZE1ﵐ~GY;/9MҙQ*@Sa݋}a&xC9(xZg̽%墨]# ա&aNx{==S$J~O"^'x;?eU^TQU"$v")6nD/mfmcJ㹺fy$q3 Pok)R1i?5*@iH.R|Pf#NCK@>uEb[+RNʌHE]l)萅"𪙦Ot!+P82Gvq弹ͷSt'fB~d_2Cݵ? |+› (G}OBRAX>;hxA'Y?MD&j?ᵐx^=p\R31Q 㘟C{V =`'e»w3_) ,3XkC0IY{bs̳`hTfᖍ%lYh^Rpn*U_l-ݓ+ zlۀi9\AX5yȅUJynۂvu /(;R6o7> ?;q}ԉh#8HgKVF޿4=\I?7Zo5LIGӃ0 jHU.tc({\^Z.bL (%~er֪\-m;;kt`t $ZǶ"je{ -BE)^%.Aώ8 $TYKS Md<*oRznSцD&ٜuWL*aDi.zi} ူL2g$LM@鈯_ܻCPTK?j "0,h&67P3n[+鄘3 sPo 6JmZy([-,> Hh7 k  x* !+La,8=~fQ:ϓQ _AA=+KA3Xm-z7`~?C-)LW@&ɉ8Vlw)N`̒ut EfR%>#QCNDG O%R}û,îsJJ3GkXؔÍ~8B;YbKJ/7l\ ɋ@PLOi _ٷ2K~0nsN)hTSv!$b^t*n 9rݭ uz]md+]7{mczé V; 89bqFtLv,pI2l"kȊ1zQ\ {E-8midAJf2MmʎFS2oI̒|Ӱ.Tdtu@w\/fr'AQplQZ81P>&o@pk ;fUgʜ?ՅxGs _fc3ɗǹp#!S"+o.ipql2ZR^+[рkCIuQb+"u;$?6)x~hYB+8H{^daABiܫ&..FqMi:~ cTfC\,Y[p1sd(bKʵU ~g9GI*IZWw2F@@RrLԼeJxtu#j }4Ѯa%":fy?#L11\qǽJ UUH1``p+e ה(Vu!-LP!`McV;ޑ 9|KxncrGC N> 4| p09(31/}hoc*t#] xßAxYU\J;(?u%n:L\H Ml$ITگsG.Th2Gvcooݢc'0sU ApzQXp8S VFQy}nO_,ut-x6Ĝ$' oVߊCG]~&%j"O˒C̘W !b tG+9 (M(58#5@>@\5mYIPJ/(@GuqHY't:0ܡ~&ksi•a%ej'pdl$wȭT@/&z#1v+d rqУ]MhW|A"QJ8iV>.Uj<$+_NDŽ*s7=C] 53sUebf]H'fEv$oNyӽ.37ɣP,t"?T}M򿩜CFb|Znz"\~s0__AB9Vײ[;Y O-}ʟtKR>ɫj\I 2X f֩ӰS]0E߀;AeƁ$N&%{cHISA@?8g7#nW{[ g *ݮG9W_^Y+[-TR5VA`-JfL%0z%Z zw8yNMoڵ;ٸ>EPf9Yk-UL">Ư;{RE>c^qjys<7<-Ef v SAL[F;i Qca@o4 &GO^y bOYgvML^]|=c~;рtF֌" CtT"YtCbfhᐥ\$:l7[}9?ʫ⭑]}Ef}{*ZAp񨺻ӽ [v74dwm sGثTJ/!-086N.-./1`.Y[v_ /'>qJ$BH,x:KB1>bϘJ*{eme=u VHh^"l^OLmv_?l1#g!F؃454813ǕΜ=:dXEv|=VT'Q׮qPautq`չbs8<.3q$-.krO)|Bӱa0M7T`"!hQlт,?Yg 2,jK089~DG Ac!.}DU$k|;Hi1/R6E &gjΥU?~Qg?4^m}aBs*3mhлM] v/K6hFoྗ7D?82Ey~QdH6 ,W(8 E1] " \mOL6SB5ѻE=Q [2f{}<1Wb40$cT=_<[Yw9C4HZWJ|-]?-YlkxH.N9^1ktix9FypLApUR9:IT*dCKUh|+r/ir3}I:9{ _hXQ<7Ѭ6<`낇>P,5uv6kh<SK:9z Q-1Xmd>89gn/g> L箝ݿi{x,ًIxź"c鯧KBwQGXg|gS$K`  nGsuCb83 W#.&:~an)| n&l@0qaעH\4TT3 0 ;?1i#{ydS@ĩk*ni%j\0=1<)#RU6Azblrq! v27[;.][6=/8ވ'n죮;bl!X*ds˼6UyU U9r]wB,{yyIxy4n؊]wk[G;0&adV끆F iq/2B<PPrsoI?mnh1y$7 .q쿋F.p/wz@0T3:Mvp _+C,Mgz)@EH <#Axmw#dIFMYT^/T3u +UwK= {D a负PC%Ol`1![EiBl|cQX>2a%k kc70j(,dMNu=H'OYc@ vΔS"Y5l{8X' Dz_9<-!Jl[?ͼZY#%Rnٯwr佾k9H̆z 3ZÕ~ߎ|wͻOR0 1ݜzXEzb\f SF R<@a`_7Z}SwLbDqT2vRFW`9L\M-G \F=v|vXJ q t<מ"z.9HPǯQ߾BKQo@nb$*$f7cMO,W2 R5ߤGÝ/Lֺ9CAg~x:H^>˥K ,4VL| ɉ";̏oMTFYٽxh)4 j$<I=[9FU%`2ph|=ӾVqS9u&JQr4[]^ouC澰Sa4 ͽ4G0cKz*lQ ?z oq5jkh ,ɂ7Z8V@Koas< MKh#3S4-^o\lяJM'Sf%,L׮}i/Qקߔ7Yp GjFk$҈}ٟ+}xk - \ NJ'DM}`_)J}%T?z[]?AVT*X~Q{K&|z(eHb{Hޱ WQxh[""ճzFn-MwG cJ[˼|^RMFrr7i,NO"@t\Նf9p뷰i+ү ښs D>^Bx8P~(+j 4YD^/ڗ9np]jyi~ kO/YԨrzy(})'J,? ,'AspR6gJX5pۅVlcO<1#8ʽ)S#܆/6zZ1 ͦ<56:j=[W~ιĥreP2mr^o:HK]f-ׇUA b̒ vtRZȁ.-Wy+37Fr6=]j+`D{o>d5Bi|`/_u9(X}JH5%[k䆑7x9cEYe'%=5 aE6̱٣qlv8RC"JG3J!:cqLT(p¨xx7Ȓ@x*DT S9eA#6(e!" vł8is3Ҟlpl3mss(qg]/Oqʆݓ[b_EJK(,R !FkYb%[~DP:1IU@A\u#?>w.-YFŮQjÇˮbOu D^`,;oWJVaCJ>F+utsm:ٗ|Ɲ"( yM^H)W𶧺Iș-Y)n.kPƇנ=zvi9; _U@~F%?AcSћ'#ХAu#5c9/n.GN:b9j{H`0/Ҝ%sٴ6Sk\5hO0?:}ckkQ0FN0n2Mى>Hy3^O. 9 v6(s5Rl94z!.>Dғ1wELb" Rq ܲ3dz]J_Ě!k+ o cmI7R6 걌a~]QTP3QT8 (0`!o=1+d54cH~Rok:4Az͠ @ݘRj&N<,Y}Ĝa'< rN*l|?㧍l/Sr5|FVÄؽ24d- YL+c"_pgGOQis:aG q' 7ٹ"_+t5u-!4fZ5f* _cx? "o~!u;LT*R3+ѹk!-|`,Hbe_?TEy)R>¬ ׀(poG Fu$??'QRp.({`GbEª|yEOFɜwb Hy5J8 E89 0puݟ_;6y-A2!ON؟/4/M\?1o✁_DP3 *)r l0rAvђ[| `vFխiD,<O<41b>qEcC-RzR'$N䫇! 0k ,ܱM|79O51R,ݬ%[hyc6kyxXf;QMpm <7G.Q=&=HÅ2XD+2saJ[pjET/vn^rO:ra2}jk{!HwΦWl0ӈYt(НZ9Z#x;Ofvܕ:Uk &0FuKگL&;тedf/]H;|&d(X;s3m1ji?@){VV 惎I/_}B[.6bl`AۜWe‰_$8vZӐ }F<ѱ`9zv??R5B[l4%}B&>:1utgܓGr+uW NWn2^ ^a%pz"5{m}y4_-H[8Ww@&d6 ;HcX0Z&e뉄x Si٦s$u;,U+oi\S_7;DkW"K'-؜Ze~@ M1$KZy{09Gn Uzu5zl)I 7 hl?)sDm8JSaF*Kӌߘy@Bjݸ=%*Kn{2ҢpT~օ5z@7#gƇ\۾wf1'^CҵL7W{hg:<8޻U?Ij&HsUGAn)ˍ%ezKUs535҃}S!ک Zw2—Wp0C8pTWlN;Ƀì %4m9n |ZCs4A.$m"L#1C F]b6y CM}9MSslIj,N gU|tZ,mouܴ@0{ruK)Ξ:RC%KYnh)ޛMSqEc@H>R"p*ƞÕsK9Q?+[Yؾ?j4 j^ H+x"i(\h=EYCJV2!H0< c#@@^ҧzI=o3J&,x"XI\ [!i|t$D3%=\N"\+v1SeX h q7,QKc ɓ[i*ĆY 2;u<13)#sh`Fj;ɏY *|9rI$zqO $&{T }V_æJЁ0~1uDI}eڷ!.ALCh+*.pX4rD<%R"Kp'3]w4mw8effn3躀 $-GtId̀L6 gqDR ǎQR X6 H+3d$w;2>yΫLT kDhi\.s~g^o`Am`, G&3!ᴚ"d~i;[C0}1nu,3cE8@qSnhaB/9"bQWbub` G2W[]f'4rEڍⶪVP GR-BI#Rh;bj\ ̒#.*7Ud@bE! F0x&e@;Q2X0u@K׫VRi OA= _ҽS6ɦ"ڭ3ȶN ;dCg v1>^pA.'+Fp_kQ5}B v7*x!kc3j$a/2 xΈ\ $0Yf55TGHL) ~h,)ޅī-[-_*YSZ&^p,3L~FGOt(pHbL@+|o,]ֳ-(ˉzYBQ"iwPbAG_ۂU6K4>񝜘fΣ6 r'4[撼iknuu^tLi3TJ}*oh=R녮+o0 Ʊ(~~ЂC( +u\xQp;N>'BAe |W& @МA@aPm[&qC4# iSd3g~⏎]ڞ%*l\o!O)Cn!>*-ORR:8n9? ?9ƿvC=fah/f{? PvrӽK]X_<#^ }ʇīoco8}N&e;'"=<1h&s: f?|1(G33 {zzd,G>}* DSE*JZa:YԽrd5yheq-ׇb~92akiʞ.tBhݚh 1@'ڙi@b%9I"]?I{,یvM1=Fc{8z᧮]|]^$% |Nv+H(Bb'@X8U&wp^\'IIxefY#<'|F/#,J7iî %""/̀{NShKu6aWhbɖ0PA 2H+gC]J7BD56r?HF;gMt0jrdTbkF1wIe!H8 LwZOcAu431A{ (f+:>VA/ zZ%lm9c?Zv 5{v#+jZClTl?RY)Tvx{ٶti3pEh^(~(g 6` mrV柑. -}IlFĩh#y\dޣ%]{]_T :7ʍ!|’0 .9 ľ79D.z;j_5?Jc>o-`VyB b3lrIXTg{+^dUZ{pi:(M.4Oi q δK= jVF Z.WNifBg/ʒ!ܤj^v8H5t)@5IU2O {UQdH_rb$%\0q"T;i('r/n6Lj_MhȾ7*$\VW 456 wAQN~&$Xk91>'Q=;r-xT-uIu!5'w"m U;3x$WP/Y+9ԗj`KJw\26%VK@GӀ'a|SD&v;p.k(je}6)z)nE5"ͽR o2js"3FoȅVnpPy-oXdSK|1{ǀv;b.BbpYڄޚ hG̓( O;*ABt~ 5k"+ !f !KR_D_"U 62 -,99 `dXJ~ C1r˟DekKa 3"'\mw4.EYH$Hk*C1`vE rEamM6}kVߍO6}u?˄>wM9=H] Lnz\ hE_cN\A-*,J<\~0;@ir.bW;F6Hݶ4X[6->a2 F&٩{2&vg6Z]+ p|F~qa5k9ll"f꾑AG!@F6OD_o ڥ~N~}:* wY'(*@Gm!,!5mG\r&: ?]~<5R(GuT} Wn%yB\Y yGG.YRKl0߯ZX@,;)wk婇п떃v$5CeH8|s =A{da)@{D]xiacF0+ ;FljrT"}-ۉئoL̬JXCIGʕT Ij$H]ej̤ۊRLZ''%ԕq=L"&bqhدoM[ p$HE&A+< pb(6aȑZj"hٽȭHuke? H&U;j_grjA]*w](Z|aKI|!yڇT:ҫJ LQr"ӂ|Qs< pbUεB}>:ވd?FiX}PL*ǽ|}(BfbFB\so8/fZʲʧǮ ΁|'$D>!+-^q& 3*K8fo7(CsG?.x8Vu1'a[ i3İ+9jv݁;JG&`P8ARE8$w10@eV*uǣyui&sBtmbA{SW7 3f, ^M\W:5`_~j;ЊaZNQ2|鏱pymN]O F;,KȋsMgNo$X v|H&`xS$9\fօ-vm on nܵ)HPQ{[C7)@I N_@؄4^uVk<&[cg'Iphqv=ia<>4.2gjy__o&כCB^3072m@SxUh9k D˘[/Y6]`_~=-?}D*]f?+x4ƽzG2X`"۩}'yW se6>BwH2cW&`@!*QI) h>@ ⽶/ןH'mJO "CB0Uׁt^~=t3/͡K9OKߥv)Oq>,D)T%-:)E 5mC)DIani=/E(U`XׯfKA\f8΢nj8| 8ar[ rxQ{_GoS*==;Bs:cu9 2sS֖t(e`#!|#VaZ H׍f^L=]jeL\p<`>n$F\6A<Hi&zq?7) J/*F|Y0Nߞ`T2'؝z|P7&>I#̬W&`B+]kAm(DA-H:ܸ"ƿN]Gq/լyZnGw$6ݍ |*+,w=~>FPC~mp7Hsɉd6v8ՈWQ-Bb$ڮ^D9[w$xަ< Ps{:mNrm x?^,W?9U#ޯ Fs7?YIb<No9y}v9Pyvpr[3NejzBpIZtVs2EDyih JW<9_R3VWYxh6Gًw+ջNC ݖ3+ AI_  •~!bP+,U7 texj0.S[:Qc ϱi>"xNsG[3'([h[kB%&DpMG;[) Ӑu1EYL@w}:*'i-p0(Ms+U*rUvh{ {X2UP/Hq~5ER(LDVVc$WmSܥS ! 6Q=O`{if{-x`ҝDω z(558۫d!TXuۙ1"4IF;iqCj6.O62r,Uo?ӘӠWsQA5vHE3!pvY;F1dp0f, BwNrtl0=k bbNiпz_ #h1UoסDm>=/H*u$Tob2:S7՗R _S!"mܿ2[y*=8W{V' m,gy\7&df'Na/[~mJPm*9"ʸ͒j#hBgX Cx06 +.^=3w@"ݲRNg@Ğ;Jio?I Iy%jL4MMT`ҝ%@HP>eJ`3ǦqxZݫ+,nC kJ/CįN@D8Us%-|1:b5EО.[^mfT> oŸ,^O<!4guA=^ġ`EwLG6Bjġ1}psE=oYbKaU l7E|ԭ<ἀѩKi^j Al[O93hcۙ IV;t0#<'\I@GEBJwH?S0}<rX```dYOX P6bO+1gFcX~X#"]FʖE͚mB|"hͨI: /]KjRS|XNWZOɺiaF䐾}ݼJkt`MŢSq4|M n^Z"فKcA:,ƀ戇UF(zگ&nڴ,5hYw/ Bw4=ƫ>{ ݥb39@FdNvL}ڒ31B& D4xs_J Gș IJ@*r<"ׂWB# ޽L.mx"Jzm *|ËYFIN} +kU4Z}эyMW=:lV$cǨ+'`iEO>M7 B5L%ݩ`)*q^+@?#忘؇g(DaΔd-yժbz^j^.r.di$Y!Llݛ6I~W@Y 5U?ݧGW)3Q*JF:h"Jur!Ζz&~UɼYS0"5MFyv|3j')K ikrnӟ߈6|z&eΎŽ`KSo*O*6x-)LH:вS 6Wn YުmJ!"_,@9+N L]⏑H23uq`JS پe 6M40^zn LM!ӕMx ,82?n>e\5:Eq{x6V˫u(,vAgϭu\2t319&U9NJA+aز_E0WH'@ k;߅ '00ȇ r] Y*J2ҩ'$ ׿o[溿>l,h"Djشm?)a?sҞzozsiM]KJscbp'8}`_q|؂r(UOQ0Uh`T*\ԟb]~Ɲ4oM+F=}vaH m9JapLCO"v?W V:*A-Jq.0a!.P=[-Ndbb_E/!<fB1B! si1; ̯FU^V!0Wo/_  BgAA<j񼿌Gg D.vY>|K *(ɢȌ)g46c츑 >>I N DvYa e\jD{kEb n) T"d8(-m_ҧNBrttAh:b{O3Ps,CU"0$'be-[0x$SV,x̨'$Zd\G`#3'/ 8{*_bDpe8GDύ菃oEհ%z^ 1B]r]JQ u@71Ȣ eAբ-OewDn'1V՛;m\2 OxN:Fje~(6˱ΰʆ!p?N$Vt;nú_gy-AqP ѡ:4S_xX:8!7O׆Jۇn?0(`h\&^OJR3aiΏڐԇ LЄ˿ҁk1|HǘQ JhcPm-Ԝs[7sheғ[C%XaXzps*ُĽ3z8Wޙ|Ij?)Y%T4$L%'.u=1(0S& F9vlY2Q |n?2&$Bہz00,Z'@kBYs搉aK: WRb1eiܸf;=8 &e+ c팾ؓLJg)!`GwCa30mx֙2VWE@W@Uו󋊜ua<.1IE,d v Z. Cc _"дW~G+T2؋lЗ~D}yb`*wԅ" {?*^Մ#vN_Jbguy;seMީu"9+:5k? WкޥKHcbExY5T;Ep m::^Ϡ#ud~+vo 8SVn@Y$Fq(2Hw€31]z;\56ctYǻ9 §1{u vSn"X̏v]@1fdd';\&ְ_.' Li/0aqge9Jyt:(/c8r2r{D"@xB"gQzWulj*;Uʓi9$7^NL9*$F}(M ֆP5jj(פ`|a {;X]eL9[@d'vFÑD˗j_`O%hNr}? S-J N4ѱ^I g<$y_e'&,uN@vGto g貅 \8*4|> mw3~=!>UNA mH"Opk")#S 9ė!9|Ca44oV RDXHɐ[mpqp'zaaߢt (3r I6'A,?P +}YwۧAUCCLB0{~2 o47SBozk΁4w`pW^T̢)ANVW4VyVWG"-u}ڄuHkY+o8Շ: L?BA_l. lc䓂ΡaX0e9,rј1cD+D=FJ艢y.kQV0>P2pU'Qqx=79q#7"oψK~ ƤPŗNA,{W,}C`ʔO9G2]k/\{}t6jqA4O\Kr7?A󃣖H9wTCU(mبü>rRsMp?ne[#}?@zXk nSOj#OcIbs&,5^)޿]F`^s#hQ qЧP> :[J>0j.:[a"4DJquf_<Ї&(1-9RYʎ[_n b2IOeLCc rLbEV[1:X0R_?m(L@ )$vSwq#Z9SVG{De#CtN[慺&Lf Ȝ+AF.Affռ #pO#r~˷>1`|8Wq4@ɟx$LEc;ęL ~T6.@bnAzwl;g^郾I4R3ʔw_41VDuہKbeف$sv1& B#=D1m4|eh=feim,N!kKN\P΂Eݚ<Ӹg/`%"#{T$1̤/sif)#-FDKl8C0 ,W|o+dټ3eǬԼbPsY @cIVS@/lYʆ8\/+Q|=mQtl7$:Qr&; E<#k8e_2)n*>+V7m4|s/j|ã?6.ۻ-d&Ӊo?^"C{Q`Җ?UJKLLa>C0 ~C536xcd'g }>wQqEsa_o7ZT}نxIJ `5kLŽvW{Ñ$;NDBe/$Ƞ%Y_f 3`J'm`lcLߎq5ހ> T\XvI_3 ;\x~( KRyLCY[tlƖ pf5ǁވIo:xY .:{̱yd.~<>k579WvA!.G~ѼLHPN hnG!AJ?7XKktK ,Ąj$5xx]} sYjLO).s-wX0:yP_\hK`ץu &L-rp80y2y9Juz  ᰛ65 s(cU÷īJatHJ{;a8֑gE~zA5&l\~"-tml)[]K/ I__QyTQk ʱz~ye2ןqHJ#:қlyiۢʢ -75Ov}N*:)ܭq87mUU )u!X81Hb02܄'Z@b}%ohv/d]Wqvt+QZL}Z_/>UpбUoWs24OEdQW=N#0T,w^xKTFCZE,&"+ Ι6nN0sߓ֠((vUr%T盝VoxVΦm?bni &xŷex+\8ލUQ7 X4=ƪ>Xxpצ,-yWƒYc xE*$ 7:VSY nf?^2&½E(AxΓT+U 2"jiV/yLUZf^)6J(KRRls|ǗƤ$f&ܾG/t<3:0jd-q|x{*wTn؜wM âeǮWl.w$@~tۛyׇ}-TJ㻣ʕwQAEf^l0oj?O#')wm*U Z]` ۺYyݟ܊gn6A}lX#0ɦJ |z(=0b˦X\JmJkɢbptN%]RP܃TW?!?2Yh:q.^$3N5ovqrl+nä+N5v]û~ ܑMEi̯5QpD_ R[5Ls "9PI#'맿:qP*FUBMJdYE1 =0ےOز%GqޑMA.8Q!߭9]#@Vh"cM㑗s!u>z25oU՛ݭ_'FX<&t{}k Y- ~%)7L x>2'';w,`#2Ge'_/-d}ǖߣMX$ۺv s83ĊmܙM\$OVZkkLjLJpv:+=IWP̣-VcX-{&FwD7\6lD=PvtNbF#@g=-@zo{6dl)moW[UKqzvQ{K郍Y9чq)32}{Ȟ]Q݊„|{'Ek:cIWa羟Pڻl }FA;޲bb]%q/>.F4,hJz 5(8}5!ǸJj| 2M8WPle U`_"w4;N!C u U:%E20JISG@y+8AOrq ECyUwbGHN#dHjE ؙHt*uLyl`įt̬1Jc G`6>tM^ɞ7 ơSĝQV4O:\i(p<ɣٕ]+k܄DiaLjq &.E1o{ ΦDHvfadAE?Jt_!?|T&%V2is\,pHþz\D RZEFq%[Aښ!7, Jghg{3fj|EzV9֖e䰛 9,ֽ#iIԸY74"ŏ~?,נQܡDD_GN':' '2S}#(12w4=OPǍO.#@Tg_KWbWF뀮4 Ɖ 2TݕU/ `aD&(ަyj(G9/]p#];ݿoP{Pڞ=2Kg43_h?-ql\֣zo|T;Em Ʌa*EiPD~j@/M°YO.q>xK.Qn+"?g0I-M'β0[e>{>Pߕ2^˦nzqk'&Sٴ =& Ec$͋cdсۭq%*M>ڇNwkfԁ.򕏖b .w NU#?[L),\ x.83 ſˣc*P+E  ^ w5vaGQP$Cb{ӡJ 8# vѪEŰ@Wn6:~P;/1n8*(^ᇊKRQIv%Ngz7gjw`DĠ-Iw { 쇗vʙsvSf{8fn'"ZՎy{Kgʽf&BJȏ}HOKPhr5`Z'ѴnD͹2%pTIc*R Ś oTͫ]d1K68oCՌ*DfY4 $!15Q%&;wޤyX&#)nxm薎Gs1 OPL#s7KxhSƗ]F'٢ŐDICnĩBNqY4 ).~꒒+OkU&mU\#r/z3> ?Lr8g2!Τx.{\sp) ˇuD&8󐈂ĎUxdm>]sklNӁ ?]^z!Tph6"ScȽS祛miHg`ز{'[i)-HOܥ^?aJHv a.4[sf1[4&ɧEV2m`ɵr`ML5$Dh9_߿cdBWWu篤¯<P# Z·U*2x9>Đe]_ {_f`& 0A5[AC*Y;tGr ښ z~܉׏r GOj<( cne`0%vWbl}Yx؊3ֵ*\1l&lc0mdN/PP̧.ڝ\ê^BX\!~o'vMgGLwfXb)fozh-ɚZmؒVi^ ɾ !D$7P?DfoKʐ^F%MΖ]uHY5h"K0FqIF;)^rP ~$ف5|7 0Ԭ)ng3NfiNG>;2>|bU x `X9.x-AQAJ4ι'zԕ Q{u_l bExÐrc-?O Ю~,? k!QOUCwȩT*9~U0_îTsnp.i8-NZ 3 -nhZJ̛PzEW^v_ٻ m~~Bo\ҶM]HmT;Gpfb3pH.@l3vM`D6`j^^*̳^!?6XKلiͿ&bFBd:wDƓC͋'%TZb12X3|⸀8܊jeEz]RDhuLzCxw Ei| mOC~{ Lm<^EAD3)1<ɶl#/_8FŤR^{ d?ssHkAڳ'6/dU}4