freeradius-server-3.0.21-150200.3.12.1<>,Gcp9|Td^aA FQ~j vOtx='#CxK?ZF"3=4;@yr1NjC"L\Fĉá64.3NfFeO΂FZgUK+)Bf_>O6?6d ) 7LPX\u     0 Z   ( - XĈ8666P\ӈ(Ӌ8Ӕ(94(:(=>?@BFGHdIƸXYZ,[0\8]ь^4*bcadeflu v`Ew <x(y0-z55555556Cfreeradius-server3.0.21150200.3.12.1RADIUS ServerRemote Authentication Dial-In User Service (RADIUS) is a networking protocol that provides centralized Authentication, Authorization, and Accounting (AAA or Triple A) management for users who connect and use a network service. FreeRADIUS is a modular RADIUS implementation.csheep142uSUSE Linux Enterprise 15SUSE LLC GPL-2.0-only AND LGPL-2.1-onlyhttps://www.suse.com/Productivity/Networking/Radius/Servershttp://www.freeradius.org/linuxx86_64getent group radiusd >/dev/null || /usr/sbin/groupadd -r radiusd getent passwd radiusd >/dev/null || /usr/sbin/useradd -r -g radiusd \ -s /bin/false -c "Radius daemon" -d /var/lib/radiusd \ radiusd # boo#912714: add radiusd to winbind group for ntlm_auth # add winbind group and fail silently if it already exists /usr/bin/getent group winbind >/dev/null \ || /usr/sbin/groupadd -r winbind # add radiusd to winbind group /usr/bin/gpasswd -a radiusd winbind if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : for service in radiusd.service ; do sysv_service=${service%.*} if [ ! -e /usr/lib/systemd/system/$service ] && [ ! -e /etc/init.d/$sysv_service ]; then mkdir -p /run/systemd/rpm/needs-preset touch /run/systemd/rpm/needs-preset/$service elif [ -e /etc/init.d/$sysv_service ] && [ ! -e /var/lib/systemd/migrated/$sysv_service ]; then /usr/sbin/systemd-sysv-convert --save $sysv_service || : mkdir -p /run/systemd/rpm/needs-sysv-convert touch /run/systemd/rpm/needs-sysv-convert/$service fi done fi if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" ]; then /usr/bin/systemctl daemon-reload || : fi for service in radiusd.service ; do sysv_service=${service%.*} if [ -e /run/systemd/rpm/needs-preset/$service ]; then /usr/bin/systemctl preset $service || : rm "/run/systemd/rpm/needs-preset/$service" || : elif [ -e /run/systemd/rpm/needs-sysv-convert/$service ]; then /usr/sbin/systemd-sysv-convert --apply $sysv_service || : rm "/run/systemd/rpm/needs-sysv-convert/$service" || : touch /var/lib/systemd/migrated/$sysv_service || : fi done fi systemd-tmpfiles --create /usr/lib/tmpfiles.d/radiusd.conf test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable radiusd.service || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop radiusd.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in radiusd.service ; do sysv_service="${service%.*}" rm "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart radiusd.service ) || : fi finQG!" Ok[ 4 e!%hE ` No<w_6jCd "004 L' 8z # t!( _ 6+ lfD .w Wb!4 j E( +JmVz!_ ]O6 F r$N  60O4Dm  !X&I8Ix)9J8J09@(Z))8J89p90()8X8I{9)Xk`9x(x9I99@)XjXI9I9)0)X) I(9HIS)9)0(9xI*3Y3Bl&17 *' j) E3 p.&!]M }O .=O)Eu "#B:J+&<FF7\n;{2=%F BuQDSk?wXV $F@VRxTkrSL kR "'YL61 emh/1kc_hn  aA5f /n 3AE)lva VmL?J] &!g9 U" S L1<aZ [ 'F[5 xxawwH' [ XYA聠A聠聠A聠A聠A聠A聠A聠AAAAAA聠A聠AAAAAA聠AA聠A聠AAȁAA큤A큤A큤AAAccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc^zM^zMccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc^zM^zMccccccccccccccccccccccccccccccccccc8a5aabbd908cf07b0f2e622477e2027f97cca4e54c2d651f6cceef1e0245abb9537dc913ca617dd3b64e0a0d6726a8d60661b44afd2836ca2e3362f5232c1af76877cf91d3f456bbbfede10b2104aef6f0543fb75c4fd1c77ed5eeb817362fd0a049f99bb80f2f16b953d5c5011fdbf98a3bfe2cefd963cab58546f17da83f60eb3e83e984887067ae91e3ef36553a3503292296c8d12d3b1d0d10c34b263ffe8ae096c15cc0e12c19fc104579a775b111be461dfc954d5067a0cc568f53f14612cab60855fcbae684e860277611de20ba736e8ade46571791d6def116d5ba4e9d4b49900dc46af19ace46878a20367408156166199dc83015c0c6c48c5323e11b686b70fb8cbd7c831698dd8ec6f8f53dbee942b683268aa7c0a19c408bf3947bb0950fd01b446eebd65c3e7eac66ffdf8a7067c006a034460cb78f3d3ed36fb863be3a8ece46366d50969cf71feaf2ae5ab38fe39d7021a63b679d16b2cbeca02caeb6df36f4ef5fa8e34b8b3e860968b7704d208fa59a06daecaa83ad33714f5007a8604c6e1e9ae0052713a65890c016d93dd2fd4de16cccf8ff8ce1a6728d792eb7d1b50d9da5ed3c89ba6e2fe415c37a918a687888d9b348af4ecaff9edc2d3545e0192a82d1ec1ea7d7c2e2c3a534cff700e1f6d6c0878fec2e0a3e9c1f2b05ce22abe7428bbc6094677ac16b00c86dc4e249aef6203742b277a2cb78bb5c7433891120096e7465aa5aae8662ddb72a3dd56676d523243d38319613ae90b2c361152d097cd025bcac246037ef28a422a801710d03e0bbf4618c61f7bea8537208372c09c8326b062b8a23b5cf08ac85ca77dac25d9739326c1d0a5a0d11e947a770316146f27e90e6164e2cd6d4bbb25fbf29b2219bff150fc58e05d4c8bfd9dc1f0588467ee2fe948f7ca3da2bda2ac55559e269c48c6276f58256d7aaf7dc46c2291470b6648fc7313e849a7db0730b25064529d19fe3c4612f0367113b3f0ce376e4acc454ded908f11fc5d73ce9145b8862aff6820bbbd5cf3dddca598d0b56b147c7b6633627643041391eb33b57af2173f1278c47be5a8b35960ce1875e81f35963033a71b46cd13ac21738e608fe3006e0af9e9cbdba2a17a72797aab1fcc7e66f306e48d3de55832d7886a071c5f9f941a1a871f2679b30314c4cedf0e7889e79bd3d4f23ca80f6cbe491aa486e7dd4d3e3359e05b5ec7e1f2fc4b9e7144988b03445c239d9d4b2e3c650048c0823dedc70d1378854eed596a0aa6e073400498c189d2b34f8ff4d1c3e0d05587256fadf737b53f780c8b4caca010f402df850d5c9190872d7df1dbbd2d57203bcf6ed127d0d012f1022221d51154149c83562329f1ee5b308d2f7990253770b325827a575a4f342b72b209cded3bc6435fe032dbfbddd12b60507a9de63ca436350d21f77fa901c8d0230a775c48be55250620694124e9582b09268b01406a8b1794adf8648c4488bfd709ee04ee744db5d7a30c1e9e6f5512c487a0e364580ac9c2c155306eae5fb2911c5852792cd6172b70305150d428e48b71de06bc0a2aeb212f735128735e0ba2e5be5a7ea54c6e3e1743154525f36265eeabd68dd929dea521f126426cb4cf442d73acc0ab0e1aaa5e97f39ef896a9eba5273df312212ba68abddbf497ed5244e5f624311fb4e4427558c8ac2db869bec2ab1118a5affa190ad23ebc39834dd22274bbe02303d7ec84e3ac96ffef1e4fa4942f60259acb64acddcec78ae4b961f49eb32e433ec3f9fe04530b8212d98ce0031a0c04c94e594941691d8c27f07c7d38cb1f1f46fe063a18d6acacde6eb155332e9004c935ac861b16b0c19b0f5fa237defcd03bf00824e13dbc54143ec4e2a6a9b1733a57f02b80f47967c47612f8eafcb5dec8a34f46c350b21224d0cd0d59d246e5f09fa120d74dd8af1c885af12e25c83cfc8520c2557e57d4e5a6ac740725a7a79fb9bda736a4336f0186044036b8837273ff2e4715ecd66ea703276208d9f35348541bc6c6a1f5a72b05542d6e5ca46374e11b94d501e1d803be1e311ecda722c5baeb89bbdf0e932ac460748c060b1ee65a84b81e75d13810894cddabaf7b3cd40ec218ad90d14b0edec0abd0f4c3e7346abcc30d1ef0e2cb8f38cfbff2b5161c1edd98253b9940dc539e8fa9967ff175fe1d2f72b48df94cde8484d1667b935326f51839c002f59163af879307334ca6079afdc06b31b2337657270ea117f2d0408ea93f7e40607ff55b8817e3348dbe9cb662b83d8797b5658ad0b6f31cc4daba7f5b54f261de25be6958f728b44070859c5564db0b1c2a02091f7ca30656a845bc01d2ecfd326c1454d6e9023aafcaa93905a86701ae696b4dfec480abc9e11042aab9aa7f2015b43b17b93bf4b9752e10d32ef5aef8192f95a52e736dcfe6914ae49e5e2b70b5ea578c9d0cef6642d68af6836c7cbc4e4f2c017969227754ebfd82e55ff169140b5553c2760436c3fe44d81376fc4729607735f711230e7b3584f2dc5bdba4a41240c1234467dd2a4e5a6d727ae10c7cd2e4c700e224e94bd4b89e7cad944e638d5357225a469797a11b727ade2666a29553b7e12ed204c88235ef4e36cf025b9830c9af1d01fce17419695b6622019af2e9753b53e6bb8f3317936202a51b848e6303dfdc082d0719875a82133ebe9001296d20f3304980c838313f41cbbdd4fe25e87efb91090ea0e40023b1f6c78a3999752c2f5829bf40f1baffaa2172ee6b27252aa3bb0e14ccdb88ba65fe5a00967b2e29b25e7320a8f43386cd1edab1781174cc8d3fb50e37632e1a296ef791f94e6f78efd6221f8984d19dbb21a231e1b340f061ab9e90b76c03faa5876c04526f383fd5ed6fdbe2c09475af49596d9ef244dc391de752a6ab6500853e680e32789b8cce3b47bb057fe5a828ed3b1ef3c512d47ace6ef63feff73d84a1efe4f7cef0951ba73ccd175eca9193bd344948545039237b3c7a260d9789c298a10d55ddef8cae92655565da9c62308e70717122f1ee89183ae518f56adf30263e6b491f8d24d51d6cb253ae62f5e362346328a6dd9cd929e48488830cc24259842f13e362b227ed79c6999e5882e3e9a9bf3991deba824dcfb1c532e6d2f0b142741544636f6ec2ad3a12b4257c9f88f2bfe5f1c8db1aeb5478b03597419591ebf4633a0253b448d5b2c66a9b6eaf94e0b2d14a395e5bf8d3b6ba14995a46195739d5b9f213e2dd236b4e25c04d940fbda7bf6a271843c644bf85bef7cdb3d7bab661395b7e076b424e07263e344f270dc0000468adf57142e94726ff9d1be37236c8b100047c811864b0b55920c1ebac2222a26cae07e0dcb4c58a23f1d349de31a5181903866fd9af6cb18f32eea957be776ae3eeae96e9efc73f8a894f3942ebe3b8a6925abdd3c56add0e58cf4ba1cfb1384dc276f515bb218c810640770c3a00d6d8bf069e3a02145e4961db39e3c7a71be428d19246828d2427457805e758300ce6f0fb67136812b0c6f55a117bedabb6073df5f1adc98f67f9f67a965d3e4d85372a1a4904b87e5217c904770adbba65b3bf0207b821cfb5d139f857d846c6070fcff545ec965dc1198895e37601b9ab056f1820dcec7ef2f5e13345e91761fdf454a38b09a4da70039f0a30ca7236827b364d95b8a591ea6ed66f2d3e971b66570dcd5a3fd9e479a81fe52b0141fa700bba14374f347b6b43b6f4a8800a12adfdb29a8fcc0f4484c4261fed88a6d5c377b1f2dd83f954dd9cea1345e05ce40438f5b045f4d92db6be31f22a160ed38126cd736d360be66c53e14548722bb10cb002e2a0c9ecb3fdd1893b4e97952222040f5ae2a745e8e22f5653bbeca416506f850783083598e0758a5c0385c22b71a465eddab5ce281b400caefcb14c09a2e50e14b2d872bd168b846edc1d5250d1add9dd6eb4e9b4de2e13c271e8a13f472ee5f0cc80d6897af8c5b2e0ae90fb92f20b9cc1104b65f8097a9c194369f06c51f67173f82423ba2ee84a2cc9522d40cfdc99e68b752a6d41e960263a373ccb0e9349323527b861ba030703a02da680b764976c7e6090504cb23aad5a3defe69d8f23baa1dfc3a571ff3b6efe294d00440ae45769a537f47a00cde9a92d21f0d3c474dd65b69272046cdc4d4750bb0449c3b014abf7848b1fa3fdb21cafff9efadd1226e408ec45ced777523581ce2bd68e0c5fe7b61b745268821681001e6fea4dedacc29a103317afa86619b88b32c317955cfd9717864940adee017d5205ab68298c82d348e3ba017cc908430b5e0ca77257083eda9e428d66bf4f60c76e0ab118e567d30cbe0e65bcb869f1daf94fcbf00f18291304e553a9b3bf5e8ba73a031af3ed70cf495926c798c1998a429071c6a9a9c12d5301262f28efc78e9871bb29bf1cc19d82ef20dcef84b0c8f2ad854ddd6608005e806ca2703a776759f81dd64cbca323e5f3e1623cbfc279abcbafbad59f44b6e7303b6590b0c818afb57f68c7a97ccb608c072542d5dadc3b83299f8115154851851da96240ed8a57ed750b659b18794e90ef897602df3dd83a57df4ed17c8553a5377d39d17a8fabca93890e91b4a4c411098c685b41f89be0b307c11130506b594b822535e760c058d305a61c3aac7d758e0d7033c95945a892c5df13cc423e4febdd8050175d6afca21467af23c8b55c1f2008d4dc16bf81b0c2cc2de4726a5088127c9f60f9741aeb82cae1d99e5e70a7e29072ab68099e69484c4b7c9d01bc9837ab4650e83f55ba466c9af4292068d5c9767849dfae027be2c73d68e98fac5361294f8c46195fd2a49dc43c04544ba86a6bba75937d6758de5dd79d2017d345d502346788a8da5225bc316be774c1971c97fd3d5f1f0f2ae4dcc1920bebeee6d15f99706a309ea843028bb7c2777179c8a7f4700b8587967def9561c0a8a86a416cfa8ea2061e699ef1a2fd9ac80c05cf6c71cf8e53f576069714247cd4a9736e72e1104dfcaba8be8ccf6f8d57abeed18d584f184d6bd3b20f2078b3bfb7a7cd2bdecaabf8f1e89f8d6a61666d3907ceedae8b665db93a0f6b3fc8ef21c8f70d61c331f51e705c8c11bb8c4a6fe1cd09e26d27a1cd29e99bb4d89b880002eb54d99d5567b553ce5a6e681e06048ac884a5789f9f121ad73d86f617df48b9ed955d669b216af18d3e770b6fd079dfb3760a1e1f8976dbf64dbcf3b80c295287e5ebe6a345120ac11f9752835f382fa6150ed4d3a5daa53f41b355e72b4dc2e6f8e7da53562fb4191369933b08ed25a8b7d117a09ae6d59d09c24e0ed65eb73128f866312cec1941b0d5222d8fa9bd842a55e079efdd6e287086bcaf6182fa41d96bade16e6d6f4bc0e7e117a2b87b16ef1c9a34ba79bd4491663fa6c23eedc86f7e81068c4eba56cd09a9bab6398289a50750c75e17fce9fb803ed2faa99d7c9a8687e4bd76d90441fa77920a99fc72e92e42869a9919e8381f4e8959577d4b2153370271d085e8c4488d1dcd0f92f177182b4593c0b68c89896d899bc2cbd37197efcbe8d16566928eb0cc1e86e71149a98358bde939a6e918fd6fe63eb3fc9632699fd99f2a80eeb6d48897f6daf8c718a63eec6c986a54eee2596a803436931a06efcd32ff8e9fc9338ffade69ce3c22dd65255a00f890938fea9918fe2ee1d3814d28e2414cb2a6e81d74acd62d8f6efe54ec38ef622c8580c205f4fe64daf2a46ec96819cd6ca8c1de3ffbedab5042908b909f86681c242a5868135643bc4b18cbc36af83ba9cccbe321e6c522ae1ebc2609a5fb751e91116f2cc9d11fcdf8ce687ce333c1a6d63f052cb47fac5f6ba1d744b3c08519d4f288e9938aa8da1700341f33e93ac4af48a8e3837ac6d21ddec906bf99e84d99d6e63a5dea16812ff583cb38a4e6577a0b18a809f98c34c3f7ba2d05d1995556d06d37e6ad241018f7f4d1e73fab24d534eb12765d5aefb877bcb5fa4e99240189ef8b716bce2fcc264fa228bd2b5d610f22adc261a9c37aca78ac3d23292c80f8014c53e10de98ebb40d6f302a316959c8301feb7cf29fd9ee9239afbed35417b76625d41c7ec1ccd3556fecd9ec9375b74a8ea403faddd7825a3f76fc9e3415cdafa98c5d62d432eb59c04498f3e8a46e9a7aa2d151be36072df097e8b9d2d423e7a6baf10cb408106e0a26ca1f4427a061b57dd9a2199e15d5a63e8c33f281a49fa3adf09b0d66e0aeed09cde6bb7880c91fed6e20881bdada310b6171e1977ea3d5672bd3dbc2dfe64b91cfb53bd3c9f46dd7fbe3584b9fafe5d32398c7762808f87cba0684e0ea1c1870ea92b412c21b829554d5fc48a7f825799f125b30adfdee54a4ae3865e7a75ad71b91c1385190a2d3fb876cf20cfc923a0890aa10f382f9cf032deb092e194c17d7588cdf2475e86294dca7f1c764e74eed85e7c6e70f22a62f3ac7d687475da182c4ce5cc2d6f19f448ab10094befd14adc6f1a2bafcd0d04b07714ac941dcde8bac591efda9f251c3402ccc0fd43602e4a0e9584e4461c5c18d146e71830f5281b00be9630b33bba20654458d23ced3678779aa926abe38b577b76fac1dabf50ac2675d791c469d6c546225ffab887b1166f4b1b3afd3ae6f301243e0e81b42d7f6563d8d92cdb93ce437de90ce7251af185d35898ff36648bf31ff5232b85f534c0791397cea1f4429aeb124f4e515b91784a2254c8107a15df5f87c417aea0bb3388fd0af28f9081b8d23d81b8dcd68f460b596aa3a2a2512038eb3e4e19b0797b14ceee2cc0d6cb9721d91c6cee1667d52dc5292d0dc4709b24527cf7e2c4dbfadcc324b137a7de18ea9ea6f937007728f43d4329b616bc19375972e27b31f9c0eb67f320a46dea73a8de846c28dbb9c586c5107800b63586220cc2b9cf1670fae4ac3557730d58cb8dd535fcc5e6f66adf08c0cab67fe476a94b2afcc5cc7862d3a0c33ea485bf942faae0d42305c8ccd9b97fc82e55eac7454ef6ee83a2ee680f0b1ccb0d66bfcf0048336d828cbddcf82ce7b7ee2883ca81454e976c61141647e3313b1564f827d840aee4f9f7f3a8c4aed32b93f496e4638c2fabdbca039a8f21373dc22e363a5323673d66780f336ce7e04fa57a077b715a0c65788751dc77067c24391dcbed4dc2def9da0a81da0f272f99d596c743235a0bb46db05baf8c9281b082af24530a781aca1bc3de78fb9aec85fc2719f0354c9c56f2bac4c23d257c6e0d431071dadcd2479dcd7264fce101a06b55be3208020ccaef69c156451bb11bb006d7d743ab6663fd5fead48020b7bcbb3d8d795eede5bae7abe463befbd51d3714157239bb496997e2f1b61c4caad979f7426497f632ee19901d26562ecabc422f709a6ecdd2e41bab8629423999ec0cfd4a8497e0de67e8dc7e00da9ac7d7805d1f25e04f0f2035bdf37d9b864c5737e047cc5989fa9d5e74a091dd6a74c4bbe169ce95a92f24d4ff947a3f438eff77d5e03dcd7342448ecdf1f6efca4f9a36680f95e8bf62130b7f8b930c7beb161937761e3881b50d5e0fcb0246a9d0385a12225f2864b09960d4b2f95f0d595306948d2c84f41c6471b89cf45450836840a5b532c2a69a22cb678a9fad02685fc2f35e4be267f399d486b887c422512a8c3b82096a6000bd87c0b5511af2f7f55dbcf1e855b728bed59b52407d5c47b6fc778d7ee166414a8ff4259db745783c1d6f93d349e86ea966b96978812c6715f8640eca00ac77244143483a7fd9df136cb1d1601895b49f240245c8aa4f7b2393af809d2c1537f466bbbb201ecfc8f8a89000d04d3d5164f07d6a94865a707c44932deeafdd899051da80b20e84e2e3f0531e6bc86f71c67d1249bdb8d02c6571598fa1730d8aca0a5e9a68f31c5149828c645473530bd5bc996989bb7f5123bf530eaed8ce10b29cc3703ec977848e38abe57baae737723bb751865ccf2df96dacf1f4c7bf73aba69d6e8f4866344fca9ed018fd999c4da352f74a1f7f19f3e8a43412e2bd11d38fcf3a99547af6fb62277ec34eecccb9d40df8883566acaff6719b755e8239e09392e9dde4ed14cf2b49f5219043b8cf5b21c3c876f13634b01469c96952c463b8531eb250f88a07571f51bec7dbb8398740cff5450155a121ad1604c548ce009d89ee31aede96051fa933eb1087d259ae8935e900717f6229cf7be87fcd9b3cc05926a0465e613091045d44797893c7a686a6fe93e021f90d734cc59a2cbd488e30ce06626ab7d8b67d3b0c011d3f10405b5f15f7ca90865ee18d7489b1d0b7265465926bce4c97415b8e62322ad6d532cd5b6f5a9819e3378984594b80dd831e26c4593a3fbf88e3bf71535cb262f2a0f50438577bb995eb0d9669c48cfbea1c04c5d78937b199ffa6e67f1d516723109c076c439430bde177f7fe6fed9cf148ed136e647eef9b4dd14c25d93aa6b02972361bb6b70231fe75a97a96bed3fe309c557656c85bf20f91dff65ff362cbf0c010aa2efd7b970ca0a8acbe0ae8cb5cacdea466629ce61595662e149346235dadada77c7305fb44f7971d352d233c30275b2372b411997c50c0e3cb978b5a38ef1db3d6d35f63f33aa511c866eb7814985853d1dc39b88d173179c0c0f2ee41e00f7aacf2cd750cff0549119723e892bd7e0cf0e9ef7663d32a24fc6a2c5d3f2b185f7dcf5dc204dba8efb64f0f5c7716d5de6f6595455e9622cc77f5ca52d2720b370d7b4ac9898c78f9bb4056a4116ecd1d121163638a16041bdff05ba721afb5330cdb731c9ae9848ef5645c376aaeb95ec77e904826f58dc2c7281e7ceeb9e6bbbf8ed40baa554ea78f1a69fe2a6912945d956285338d1849a8b0b07e8a5b6fcf4e8969b22800cd071f24b7aec7b0f5fb439dd784504fc65233b5c882d635670245865d181bb635c9a9cec65f0322f253a0c4fec6404ee299f04f97f2009998611b845a4ceebd62d954dd964fc70ce0bed6d9d976be005dd4bbcbd395535e9fab9176172cf6c90625060b4507e682b6427e9c43edfdbfae486080da36c6f0152928334dac7d773fcc47cb38da9161c0ef41c238882e1fc186fb4ce3d46684045e445ed001132731c64d054ea741db26427e9c43edfdbfae486080da36c6f0152928334dac7d773fcc47cb38da9161cd1e3ae7c32562723ae3a56b9153f7a6dbf2518ee7844d513b5fd02043d61f4eb8170a326d03bfd275ad0787ea81ab210092be7259498aa31fa0d1d654dfe86f58f223390cadb812db96c2d8de2411e785cde5e3f074c41478c7da963a7ad459136529c207f3d537a22f865916c81b611e404a31bf7dc59de44f111fc09b1c2fa79659ba31d6e74751a223e7ff36a2d784cae1d91e965ce9af08513a80ededdd740809687105eb0164d0a52928630628505b0b1f5f75d27ebf11bf20f25dfcce04d8bbd652f45cd366b79e185fb9589bfb98b6793455893767759e68e231938f855b9cd33c20d7f953921174fc221b4d72eb8178282186728199d0d1bcc52313f4d01b99f4c42ce9148858d22db6fe001745019a74b9c42c65c533f6454f751f2b0628cac686194c463c75a008032456f96dece439e82a96bc3c3da57189828c0d4b66d923f517f383164b55fea7b67f35e77208e72bf6f8d04fe07f6a36807d342f084c9d385869142e0d4cb034eda19eec8ff0b1ed1a8082848d253c05a4f28c5cbdf119e0c504a7ea2e70fc954bb50513f2d2973f8711e239ac63be25b39ccb30fcf48340a899b72da408c56b01f8c8889ea8d70032bd8333ddd8431f58166dd6dc3c0b0ac79139f42b5bc5e2b5bd9028b65fc5b82083b61e8a4d28c8522b5caa62ed22349968a1eb4dda74ecfcc3eb54443bd8affa43a8a3667042078daae3161b357940f91ce8e38b7861e18b06bc5e628078381a2914221b1986222ec9e8fd32ca89e0068dfb7127550fcf123183cc3ae270a926105d7acfb2d3d0e890324ecab633e2021387dc97dca3cfad1c5b8887dc7dcd5a558b39e48099d860b05f15f493c5a6ab75614ad25c3573bdac3be378b21108c185a64b803b16f2a93ed4114dab3f5600b28eb4efb2b0647eaf1039d8be35c21bca13f67177ba29ce8dc68b368d67808bb073da54ebe4d41da5dea5503236c671899d28f9ea98d13079c42f07c0f1fd67abf34b7ea6ac58c950e9f4eeaf5fcda2078bd318d6598b5e9cfa4480610a941518388343cced47c80ca9348297e4a3e1d61f9a964e480d0dc7ff6f8d200a428066a2166a96da5865cc1521ed618259112cc26df867378dd8f6588a3915fef12973d8b67ab54e8c513fb7057efaaf513477ce4bbab4f1a227f069506b441b95d327dd5e268b9df1b2a8958395a3f8fd70472824a1a4572540dca3a9982bba40164dbde4085753eb058587c8f01f123324b621612a2193e9d518d9c9c5a529efca8369a5935bd95f5b2334a5ec8da7dce0f62fcd0f318bd3421f45889aac6b21f7bddf11add045a69dfbfa9f3e5e83c56fca3c659b72bc835697d2c194a7882904e6be48d1122c737d73b99ebcf30aa657c3287ae0c5000cdf0a049af584d275a6e5081841a9b7db2c4d2d7c2ddda1d9c05808382a7d50bb0b9f69244697a934dd9f7418787a18faa4ec90ebe6b83d50587f2cd99899cea23300ab2a53ac4995bc2b9450f2cbf9f835e1092678d5ceae054fc600cf647a2a793d9b6aaad7b3e770b7f840ced8f169e094246663adccdd98870bee4494ccd5f6538ce2dc320d338da3259a7f0276b0daf3358d3448579a8efa1365d6319989b303e5e463c7ff4d2024f2694b5f302ca301dbefdb9efc1eae6247df9a00028f7fe3acba40290743cc857ee6e0ee36289a7ec69292c0fa22ef4c16cb324d34f16fca9ae7a0a1415667033a29a41d2d3e47a71ef126690cec11bc3909eebc068f35a0e2dc1e8203bf0dad4a4dfa49490916fff4dc9fef87bf8d3b74c2d8cac018298e7bd4c6ba57ede9bd447603a078d7f32415925a6f60316508cd65aec8152ea0851821a5e9f306c31556f8b9d1997d8135080beb2a518e8944f547d6b89ca5a66508c9f1d4609ceaee0f4f2df85cac13f8bcbae5b1b28b1bb9beb2dadcf9b1900239670bb360d1f7ff155c27beb48162bd407c148f5bcecbda471160ad0c206e1ab4c74ce545e69eab1bd8f39f6fd138d5d3d75e1ac0cc6ff9da4601cee0b43cb516ba9b5468d392811851dceb8b538a532a595fb4c668ef39f8e9a6ea27420b2b4dc412afd1e91d149fe4b1c8224b4e148d990b9e5a70202aed37beb6fff679928eb5e4a9c7dab3a43ed30efbeb42b6014f3ff7d2832f5c4c5408701d6dff6c7114417fe3e4da7fe146a14dba2aceb1677a110ef1196122df112453a1c1cdbc2dfa293ba65126e25891f5a1e8de5cfb8c18dc2f75837ff39ec5ace9021667fde13f9d543199b01338eddc82d5ee57d480376fc548ef8ed0845a66396d60f42a822d5e43be41e47c8c5961fc2dd33678d3f15e805f97f9f7e1a67b8a2fe70f418ded8078dd9c1368475fce3d81e336031d7a3e74931bba8b8b80abf1f623f4719ec41ce860c42f28aa44029cbb1b69bc7ce335777b4cdc7814f3480fd4281c57a72e663c2e34bfd9ae2a12c8e9ed9cabcc081d650ffc52aefbb10620bf8408fbf648840019a1a6b7656fe30253cd05a5b934de6037130161a2a045296e9336c7f12b7bf2e7b3ebfc0f476a1e1e4b2111afeaa05a460a9d84f6b79033c1fae23b65490455d95204c45d23d84cfb3a6984d916bd874b8a4342f7a6839fe56ad9d4aebe7c58ab264d5225cafebd632cc5a41afc086c618fa08461a054b1e50d2d40554f6bbe38d099f899171969e8974ef6d217e90d063f5854cf4d14a1518010f323f0596daf60225db8dce8de83b7b9fc889cf301b494865e500cb5fab0febbce9fffc073a1bf235c34e44c71d1c7375c4e4a6efb3b6789523143110c313ca11e15089cd429a7b059cdc621ec20be865e51f0c0c9a539f871a00e8014f679c32b35cc946d134b81410f9ca6b4a4d1a03659ef693ae91af5f40b922aad5bcf238337a3186c72ec7d7e9f49bf7595ce351c374303ba82f6140066dbdb713032ee64925af1a1ba36ce97e55121e84abd525e300ac7bb3ec031b42e7aa289e8d18f2c7d74b23393ea0abc3c5d1e2d66446ed84c8b5c7dbb1863e42f6626b708e91e8f4bb7454bdd7de70107b720ea2fd6585475cdb33350d9178463437e48e4f9b353057beb000a2557458f63d4179238bf28f2e0ef2545612b0e7e895eefb0715fe5dca032e9f0c69d235f5bfc86bfbde1a2fb5e896117b6412511375620bc0d9a5a52d28d6bf054079093672d136a4a4e24ac4930bc80be39f07b700ed47600e5e258558bcf04476b59da329892db70fa8d46f9a5fdbf0e7d3a32b2f7819427486b6aa77741f1b08331661e3d78c9294360b4df4013aa64bade84d8526941435842381259708ed6b05892ca6001e8c3f2a95035750e35d0ec8cad9fab977061d86d530c57818f37c94978fb1a51cff91731273347681a489f424ebb0dee0ec83765a0ccec9a8258a5bd89a32b47b4576e29f716e9bee1a7ecdc6771a28673afe4ceca4d354119c913bd8ac4a97ac43a666acecfdd41a615af9fc2abcd8f47ff35c337317610efc619eb3a391e87bfe18a721cf39e7c57e78467237d7c1cf4316221cbaa71c778da7d0831a1bd5c1142f92d9d325da962d4772be7958e83576c95150baeb88adaf9184b23868ad1ebb2e7a9051b549afee519dca76e7d3ba1d0e66430a129091a82db0436c025cbfcd74fb839ac7eb538b709a64bd1468c9cd79b8b4338115e64f1a097bc524f57e1990c913ae87e8173133be67b6c58cdc913c37e394651daa9e519e1ce409ef86504ffc850490cae8b498f21a6784fa84d375443483812272a35decc7ec6b807ca3126521f0fc11fa2df6dde6dbb4ae6962a01a4d08fe78f1d243e73d5b272c863681b8d9b727cead04cfb6652b74166429147837d9d38ebc51f2f83c339793c1b9f3567df34683290de24fbf7b357b5cfb8db15f05ed1acb10820b9d9b24e36330c0337c394a8491494c4ab9cd877af60ff24c1f107efcfba8a140b3d9e6de66f995b0b0c550934a129ae045544a21b6e89e42437a4df641d15a24ac9a8cd987a2ad9a8df1fa333caf87f9c8b402f9a4a474a079cb2d78ef89c22e497a5a7dabf539bc17af6f516fb3c3302cf8cc5776318b31cb859dc696a2702c18505af6796f35dbcf6cee29f17e409546db7b7546f6d10947093d6ae0bec924623261c3e49420826bb73f3b6d7d423eb1b0f6569eced0ff1637d54db5c968b71c6ee9e7aeca25047ac769cc072b5dfc65fcee22378553e98c9f2282d8fc8bec44ad5d85f636021d98dc9709d8d384a0621a65cb20eb7a09175325d641c15b3234c758120063a46e065fc96f4100e8f9543583a58784c69f6424ff4bed69d893c08b1e19121691932d09f6ed15e9bd277e13ed2a14ba99d82b2cfcb3568de59e9fbe932ab7ef6446f804ce42b693c36aa04e85749eef29761e5f4562cdf284555844409bb277e39eb0ac7ae9892f0cb8eb94abf7f296bcc6a4ee5fee74eda72b26c8040bf7277289c1887e19b37611eb8e62727949012d132d953559f4fb050d716777ee8510a363214101f2401b4754dacbbce9d8a4f4e39b79397cbe376d218c8620ae1ceaa0b74f7a2cfc184ac660ae15aa11a4b2659662152fac731f47deaa8f93def96477ea22326667d165c4e6015b630c19c46e83e70b7782cc93f47a380a3aa412915314db98ff3a9135bf646c8dceb9b77e74415e86f57704a66005bd4c0d93e2e9514244bf5e7767f0d68ee2b112148ca1b1d4c6357391d79046bb3f576838dd6c5667bd69ef2e05ab580d2b5867d6df09062b1623fc0f41cf482353f7c6922debd93be9b9dcdc8cf9434d1882346e570f7dba5a45fbeef5a8d4927fe4d7532bff7f2360789f1290b4a3e6e9907d091b4061c9c87a1c46d4bb13d60519b0a70211acfb84fa3fd31ebdbed10779844440f86cff0c1cb8188c7e549d44a175c2805e5474a624301405ca8b5969963f6ef956da0f0c4b8eefd2a9cd9eaf1825540eea76eae03337701581d0ca366b2a4a8fb6b8c3f52f5858a2ca6d3bcfec005c3183b634810735a0f6e470dce8d9da8b96ddb8f86a67a39a70d955a37918f81499016af8f44b73a26683674457d206905df84cde6f859aa24ff1c95a23047c79da4eda1e52951c90059c80896b0885e79ae7bf7e0351b707f62d4c7b40b5ea9038563242ead18b7cbe64ccb07984c9e9fd8e822c5bea73e80d25cf99301df72d341892c709454f16c115068f93d7b036de7922cd996fcd5a67f69be99c7e16af06065dc6876167833c9ede293b7d9582266b12f360dbc3a8686a6b47989c717c8d8589ff99195e7f186aafab1327c4c0424d0a8fc73aaee79a97a7cc9df952b1d5c06ea145d113ebf98bc9619411f56fae726e785e346e27d1ae96e58b102470a42000ea9222d58a03d014c5431701a918216e87c433a929ed7f5d37097dfa721da22466689dc5fcd6572f2e1c14421a3b9865233375622ecacda1badc94b913172289f03a895a12df94ab3608e13c2d60a702706de6c341227e5e1288e5759dce4bf687e96be18953722fe8c80902be281129de0cdf44ff1893654c367541192eddbafc71f12a1c60461c87a085ea00f64a35f84cef22126bbf1905c81d5e32dc47df07094c3a4340b9b10874a0a1872b61a600b26d516a7af040451e3027b0592b7299538362366bf0a064c2c4ec067bb4d2e0dc46314e8e13cf78460e84b2ab294ab0b5db4a0186f9423ce6d8a70e22493d4538fd68b48b1ffe29f07d5e34a597830827d4c3d63bb6ee0b9e554d898624ebd81266d1c93fec58153c0881c9b6a4f1df10c4111ec26d8b849096c5945d427fc3a918ed7a650907e0ef50ce646c11819a90cbf32c1d6abe1591d26dbd93773ea20ac7f037a6cd62c87cd0bee1d15fbe7f18f8a829ee91267b432b09b40bd7b93a2aed3f8e59d9c1ebc92e6ba99da540d0f87bfa088c976df1dafdcaaf2ccc747f2c8f14b277d23abf2e0fcc8e48ba16f37e352fc65ef294f77da9d6c8fe88d1e59c23ac76c95cba97f29a890becd784b9f1c97f368e71d3ae696fcf5ca48f3ffa6f6297caea69bbc158e67debd10315d960ad09f3c9df7d367efd0c3e086a33883abddbda1636add0b8d16328f22595f915f1c05d766b68cd5017763afe39836623bb42618ffbcacda10fca203ce60fecb779a282cc3e35f5cea39092acc5f58300c20d13aebe76f9d47d29d4ce2081a9f2d93d4d749f051d206e5d44833515f014798a4d41e00f053f22e435148e91abe57d39619b61c3bfd2730650e5c9139eccfba965f36704a4f24bda33d2f4ff034434eec035e74e99e3aa117c3359b217261a254c50f544209076643c740e44284598809cd52554617db667b3339c8424dafcaf6b10269f8c9548a9ec05e9f6fbca2f59c2ddb8f6cca9a2820872a9ef0f122d8af0381919e4bfd290795d0dd5c9ba9c9cb582c22b007f088ce8522f5db7ecfa6e2237a307b14c10bd074ae9a7377c03672ccc5cf1d9c5baa9e4b39fba6ecba8c1b51b3d2e24f277c4d3cde2b5651ffa524c562e4e0b0607768f46c2505a0f5d6c6bf92b94cdc5864bd4d11a4f274001bbc7c7793bafcadd81f9422dc7123aa683402c8598f1dadc571b8f4ae971caf143f2418f2e07df0beebe2f40a7379dd9f0b0ca21b0c814669db768174f402824bc02d6206629abf2728bdae843bb26588ba4f42c5c6fe479084b28e220cd99ee0552b59ac168eeb1948776d31e48a0eeb07cd08f629c1492af6e304346369d5a140f13696bdf242cc57ea9c66f6ddf3f926398c89b782f3ab9c8fc0a21a9026ec029482d2892562e6728f4dc272b8d3d5a7483dead57f34c1927635398a84eec66faf227785d31d72127ca81713e2b6bd5752edf23dcd2f6be74884441f4d9dc464e03919adcc201e8316efaf2e488e82900a80b71ca1fc19a8dab4d95667e4f2d3ca8da770cc445ac2b8cb05efe24060f7fe5084e1bbe2a563042ef4b6edcdc462035ba31e84cbc0f3021dfee90ca78c4acbf46a3ec15312171494e558c51d56b8976c26a668d1d488bbe1280283f12c63ef3be148c38c204ff8aed77aead4d5cac3077d2ed454cbf03ccd675fd5006d9593edd68ff013c674e4169fdad21b938bd952efb4f13c2d1ab30db54ad55ce92743ea57dd8202dc3c1e2647832c5578c3ad4358cf37dd01522e3de358a16268ccf19eea0f55378b2596a9012496fce0475b962ac92d79e684c4fbc3887f23693781a9b31c65e3a2790d09fba56de41ea7a7bdf7dcc879e716e5eb61f15a1332ed64bc104516dcff6afb7679676fd329d77ef24eb1c91628025bc24001f7ea543a706418bf9a9c40c9df6c8b8632289efd17b70846e0acd5957531e01d43b0338df9d9414042bb4700abf1efef4e8b699e254b80e580009ae9247a2230a2ad5aecd5989c4014a4e45eb7c1c7090872674ef7edaf5a38eebf41e0bc917c5b3d215266a8ea8449d2a0dc840e83b7e1d28475e165bda6dece67683d363255447c415427ca66cc867332c888a52672190ee3cdefe9a55da83168f7d72fbee804d37695f6462c05a9090eede29499e915625ed99154da68806b963b3dcf6834b114925691fa293f5674a0498684045dd0cb071cb0daf49e557fcb2bb268a4da75d99d0f86f38cce76c2204cc961514f13af0a42e253f3cf1f04320316b59e1b11b16f0d930041cb9202e21a50f4fab2cb3bf35d682675dbf21c508b378748cbc422bca98cc777eb617ab0306af768ccd551d49807ac6937cfa740141fcadd448a2e3c71a9ba7c50d49d5d31281f8881c97e06a3e572ad4a1389bb21731230ed55e225fc4d84ce1cf61d357708ebddb518def97ed92db88a57fb4cdcc2698626703f1807bb5c019f713cd56247cd9de2a90ca80f802d9b73e3fdf55ede5dbc072953af560bcc542580ed663e3f10970fbe8d3dcaba0650c72da430faac7afd05964185d1a319ab86dfccb7507bf534c047b1059f6aa3db50328b69fefbd58b8d3d19d5be859732717fc59edb68b9b1ba500c3f12487935ab61f93c2efd9a1680d8b04f9c5a8213ef8b6a9b139ba23cbd39da287be88c98386e030f293343d94ebfb2c0587d2615d8088ab1193fcf0b15f7c313d10a7f73c04e82ca8c28888fda26b3d3a80145db0db4fefab54cf4d5b52050c5fc2a2d212c52634c1760bbb31b203675b1341fa8def79f23c2645411a6ca1936cc62b79f4a8de023ea2eb287b09d9638fac3718bed52b0ecd1ce2a8382d0ade43d08230aac937146cfddec8d7329c0cc7bafaac12bf430741c36596d7b64eef081c4421d6d54128e1be0638bd85a6349f000ad4e83ecd61eb57cda7c391fa54a265739ab927356e1a2135bf25f304b914c83e87a1fee3884d2cd374f12b5ed1ca5790857cc4bbcc8f1087f4517fb605403ac7de1d6830b4b49271668dca9cfc9169959a6b2c782c1f5db080ca19e013ac99592d690d90c5be986072b705dcb583e1ea8300f1fa67c2cc5fcc3857b5bd856499279357b340def18a8c6d05a52d546d8f3b6727634998e610e08f695a6e20bb756d636db2a2e719ff80ea03e88aee9208741d0e242b2096fc417a9b2beab03d93f30717458b034d2bd2eaed668754bf959e0ecfe98e17ec88de7eb2ad3ddd37845f736183b7d3b5bee00a0f784f0864dae6d092e1fe8af993c108928fd679b27a5f3b043e84a1fb5dd23f14b47b5d65ae7e127eed1763b39cf7127c4edfa9161810c013c999bb8a3a49ffc34e2f3cad2c9989f660c5846180443560de3181a5bd2679477edfb92da913cc67c845ea42b87a117243479add7b27dc743172481072fc0847829075a4ffa8e1779c016519afd7591030d85f9b9605f481895fa43b1a8ff73bdbbdb8862b178ddf8969a70d14419af5b6fa871feab87c4f808b68f13ce1ad05444137266619827ca199b37ba4c7a8c80ec46b7d2a4d9b390a94967abeaaba0608a5edad8c419e17977dd96625adcb7bc9cb92ad2e6fcddb1334cec48960a185682f133fec1040f3f1b0e93180da657792b1134e038658710c249a3981a4c781cbeb6ca000585fb242836a099fec8707d836678e8f7495ebbc296874c0a9409b00776303228ad61bd5b997d7229cf4780e528d5ac69401316c9638f163a15bdad8694e628406112d4a9e5f277ab88b23cb7c68bcc688381d1b659953534f26a589244b3872459577a6522364d86e864a32d85fa99a44ec146d1ad6923a6fb7a796760f31b2e28d584ab813f0e0ae8b5e6e5ec7e7ec93d469d8090ef4467190b68ac7f0c8cd986962efdd0808a7390469b6276b7258d16d883879240f8e598fd8ff5f0badea9775fb31a932e232dfb212c223a27322758c1908703881b384576158e28bf2e0afdc7a59504b146f31936e4633555bb63c7033746d602f3b87f201aa5d064848777271d8035b2dd1523f41ce7f219aab232bb5fb5e1632f47c3221360cd090d35b0c7bb84a069439d0f27727117e8a59d06d348051a746f2432e129f60b66dbc82089d54e5bc064a7629d666303afb1f732689f7e74a7457a01655a50c18a2bd32d9573f861343be4693d7a3bb1f4001ef0713e8dfee0f45f254e10349c416207199bd38f9fb8763fc39f323cc0a4c45fa1046da746f0ccab220f5dd456220cf4698f3c38d701b1eb2ccc6f8b394c29df366f6050f3bee46b9a4bc5a2a8ee50fa860fe5a9b947bde6b1ae6a1bc94be707d72866e9da7f9c84e42348fd8919b75f70a43e1e9810f5b5c93f9b7c2ac661d8b6bd97976a71cbf00c7ee2b36b5385a270d268e3a168343b852345eab5fde4fcb902f47b87f3b1f840d57a5afbc92fbb737e6201ff5102f8ad71fa86b92798adb25daf49733ddf5da69c940d962bb9f714868a40ed2318c7b3dcf918f9c008144e521a1b939306b6e2ef7d478f7746a434722086533484651c4a69b5956f3ec0c4da8fe96e0669548125ae6382f23bc0a83ae7af31c7271ed1dd2b7c792026772411d5deabacee58ce335f7f368cc1342b70a933c2871fc71a07a6bd181e132a674d31736d6bb2cba7c35f491001b32bb4ce9a157f40f696cbcca1bf5de9ce95042f7088a3fd35ff777065d9f9ad09860784a990f7d2fd2fcd2b30ef219ae3cdb8e92fb843c64abe619db490d19230a1fea6b851fc079265eccce108402512a0ba02cf0fc0f3e64d0aae5bee23aaa53dae89ca0d86c930520bfbfd20873b0b79e08e0e405a5592947cbb7808b340b7889530a3819c21071d8ccbe1a60c8ec30049a4552ca4b0e790edb73337ae152883141cf198660d45e69cd12ed571753ba639c1e8c3889c41eac7179c5e574d9d95e78a2923fb576b0635b47f5b615a0e492c806d42884c2fdf477f2ee6b2b2a9d281dc3ff11563b6f86b697a8494f9ac3ba90e8ac4f8b9cc1e5d41938be45a368f126a6d1fda03d60a3d622dc75e776be4e90c2d2c6e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb490c3b6a0d586bb9dfc845b236cd88877065f84483e3bea2153b4b831c34c3055a449d1cc40adc7e874d81fae1ab82c35ce2a0a84cae7141a582eca2b26e94fce81b0f8d115921fdaeee8ed6c5f2f8ba09da74658bc3f1cabeccfc908a891b04354b2d9bafdf8fea757bab853b1cac4c7df00b2256460e95c7193a028e1917dce5a517d0766fad40dd7abb8dfc75b687bf505cea3bf4a099a14f67ed23b18b15d94ab6def9ab2eafab299f858750ada144f1ad8aa9e42828bbe7dd063003eee8189bda802c3e35623236807dc79ef77f294376add03f2970d4fa96ea0fdd4fa12235fe0f36703db6976777df545a48790a918cb27dc48e3017e5baae6c4a0917794cb58892c0b0361499056ffefb9a7a4a3de3b3044d3618f9c277719126154309e80944c93f907bff96183db70e139d0887c167d4ed6047f8c24a4e703ec34feb912fcc11dd1f8b605914b19fd67e4bf66a19b57b1785b1b0664b81a6cd2946d6d975091465cef959e073fb2ebed32d043b06727f31d316ff152731ab8d7b39d0cb8b225676c8487997f15132b44256786f2b0cb73950832080a884d31c1a66b6afa1792e427bac44a074273293fb9a1c9f7eafb75ceec91121930cf0e5e58ee17eb0afb848744651f08d895e5ea0eea2ec6e692cd11e988fd8ceb24c996fc3fe2244f9a8c0a9e09b39ea53083ba528ddb4c7d4366aead52621621b03d9c037bb0e302a80bc4bd241b4c28ed1fe72a0e4738e9c2da636b9bda1be63f446cea1e158a6010210a214b120e06fd3e478982c43f588917d1d0fbd902af162b0d096b8d0de22cfe0d0e9e28f8defb07ed3ea9566aa218619912817b9c48f2876de538f9e8914d01ed80e90541a91004b6b5cb86dc9855fc5930f1580a7878088be094b0146a1cd7b177d7b250c265e27a65b154e24f193a7ef85682f7ebc62a0bbe64aea8322d23b9784eb36af0b639c9738ad35cd71f5cb79b3acea344a48ae19f0321a8f2c8863fdc7c7efb652cd25eb62a3120ebe02c0450c30735b839c813427a20da414c79a46a3304f60b896a6b3da0bb0b63c590d16593e70f0e13cc70b7bb6cbb927fa47699e24841fb7c297355fd24f40c835d42c2fe873f8eec453cf784f32af74f6596f6f832397eab7f15c793af1a06a2dfed2910533b65a78a78a422cee268c7c30e91e3b88333dc55b86c9c472d007f86d5762f6f461117dca84de98d76fbf811c4179dfd9775d3aa635e005f4d8fa251cdd4c8b50987f5eb15bf1653b6cb7dab9742ddf9b1faaebf1ceadf760731dcb3e3028f9e89c156fad6cdc22f91501b7eb343884cd47243de731000d4628ec0620458e4bd2226e25fc922e8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855mods-config/preprocess/hintsmods-config/preprocess/huntgroups../mods-available/always../mods-available/attr_filter../mods-available/cache_eap../mods-available/chap../mods-available/date../mods-available/detail../mods-available/detail.log../mods-available/digest../mods-available/dynamic_clients../mods-available/eap../mods-available/echo../mods-available/exec../mods-available/expiration../mods-available/expr../mods-available/files../mods-available/linelog../mods-available/logintime../mods-available/mschap../mods-available/ntlm_auth../mods-available/pap../mods-available/passwd../mods-available/preprocess../mods-available/radutmp../mods-available/realm../mods-available/replicate../mods-available/soh../mods-available/sradutmp../mods-available/unix../mods-available/unpack../mods-available/utf8../sites-available/default../sites-available/inner-tunnelmods-config/files/authorizeservice  @rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootradiusdrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootradiusdradiusdradiusdradiusdradiusdrootrootradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdradiusdrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootradiusdradiusdradiusdradiusdradiusdfreeradius-server-3.0.21-150200.3.12.1.src.rpmconfig(freeradius-server)freeradiusfreeradius-serverfreeradius-server(x86-64)radiusd @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@     /bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/usr/bin/perlconfig(freeradius-server)coreutilsfreeradius-server-libslibc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libcrypt.so.1()(64bit)libcrypt.so.1(GLIBC_2.2.5)(64bit)libcrypto.so.1.1()(64bit)libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)libct.so.4()(64bit)libdl.so.2()(64bit)libdl.so.2(GLIBC_2.2.5)(64bit)libfreeradius-dhcp.so()(64bit)libfreeradius-eap.so()(64bit)libfreeradius-radius.so()(64bit)libfreeradius-server.so()(64bit)libgdbm.so.4()(64bit)libmemcached.so.11()(64bit)libodbc.so.2()(64bit)libpam.so.0()(64bit)libpam.so.0(LIBPAM_1.0)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libssl.so.1.1()(64bit)libssl.so.1.1(OPENSSL_1_1_0)(64bit)libssl.so.1.1(OPENSSL_1_1_1)(64bit)libtalloc.so.2()(64bit)libtalloc.so.2(TALLOC_2.0.2)(64bit)libwbclient.so.0()(64bit)libwbclient.so.0(WBCLIENT_0.12)(64bit)libwbclient.so.0(WBCLIENT_0.9)(64bit)opensslperlperlpwdutilsrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)systemdsystemdsystemdsystemd3.0.21-150200.3.12.13.0.215.26.13.0.4-14.6.0-14.0.4-14.0-15.2-1icradiusradiusd-cistronradiusd-livingston4.14.1ct`@_@_FN^y@^p^h^@\\v{\u*@[<[2*ZZWQYY@YlY, @XO@X@X*Xh@X.@W@WiV@V.Vf@UĝU@U@UU8U7@TZ@TTT~@T|X@adam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.dejcnengel@gmail.commichael@stroeder.comadam.majer@suse.demichael@stroeder.comadam.majer@suse.demichael@stroeder.commichael@stroeder.commichael@stroeder.comadam.majer@suse.devarkoly@suse.commichael@stroeder.comadam.majer@suse.demichael@stroeder.comkukuk@suse.deadam.majer@suse.dejengelh@inai.deadam.majer@suse.demichael@stroeder.comadam.majer@suse.demichael@stroeder.comjkeil@suse.demichael@stroeder.comjkeil@suse.dejkeil@suse.dejkeil@suse.demichael@stroeder.comvcizek@suse.commichael@stroeder.comtchvatal@suse.comvcizek@suse.comdimstar@opensuse.orgvcizek@suse.commeissner@suse.com- CVE-2022-41859.patch: fixes information leakage in EAP-PWD (bsc#1206204, CVE-2022-41859) - CVE-2022-41860.patch: fixes crash on unknown option in EAP-SIM (bsc#1206205, CVE-2022-41860) - CVE-2022-41861.patch: fixes crash on invalid abinary data (bsc#1206206, CVE-2022-41861)- logfile_secrets.patch: do not log passwords in logfiles (bsc#1184016)- freeradius-server-radiusd-logrotate.patch: move logrotate options into specific parts for each log as "global" options will persist past and clobber global options in the main logrotate config (bsc#1180525)- freeradius-server-radiusd-logrotate.patch: fix permissions in logrotate global section (bsc#1170505, bsc#1174905)- update to 3.0.21 (jsc#SLE-11896) Feature Improvements * New stored procedure for allocating IPs with PostgreSQL Rates of 1500 IPs per second are now possible See raddb/mods-config/sql/ippool/postgresql/procedure.sql * Add SQL IP pool support for Microsoft SQL Server See raddb/mods-config/sql/ippool/mssql/ * Added RCNTEC dictionary. Closes #3168. * Added Pica8 dictionary. Closes #3179. * Add TLS-Client-Cert-Valid-Since attribute holding not Before date Patch from Boris Lytochkin. Fixes #3157. * Generate attributes containing unknown OIDs See raddb/sites-available/tls * Update the WiMAX dictionary. * Added ability to rlm_python(Python2) show a stacktrace from errors. #2979. * Add WiFi Alliance Policy OIDs. See raddb/certs/xpextensions * radmin now shows coa stats, too. * Sample schema extensions for summarizing data in SQL See mods-config/sql/main/*/process-radacct.sql * Update dictionary.aerohive, dictionary.fortinet, dictionary.arista and dictionary.erx. * Added VAS Experts dictionary. * Many updates to RPM and jenkins builds from Matthew Newton. * Added %C (time now in seconds) and %c (microsecond component of now) back-ported from the "master" branch. * Add reload capability to systemd unit file in Debian and RedHat. * Increase timestamp precision in postauth to maximum supported by each database and simplify (and make more consistent between drivers) the timestamps in SQL queries by using expansions. * Option to set dictionary path in raduat script. Bug Fixes * Various fixes found by PVS-Studio. * Set permissions of certificates in bootstrap shell script Fixes #3132. * Increase the 'nasportid' SQL field for 'varchar(32)'. #3141. * Skip processing proxy reply if there are no home servers available. * Update SQLite IPPool queries. Fixes #3177 * rlm_sql_unixodbc fixes. Fixes #2822. * Fixes when building with LibreSSL. * Fix the rlm_python3 build. Note that this module is experimental. #3183. * The rlm_python should append the 'python_path' paths in 'sys.path'. It fixes the expected behavior to use the existing Python modules Fixes #3180. * Fix rlm_python to print the script errors properly. * Bound total query time for PostgreSQL. Fixes #3253. * Many fixes to Oracle sqlippool. It now does 500 IPs per second without any tuning. Fixes #3270. * Reference sqlippool by it's correct name. Fixes #3272. * Revert 3.0.20 patch which caused crashes on duplicate clients. * Update WiMAX-MSK attribute. Fixes #3280. * Fix crash when trying to access non-existant regex capture group. * Use timestamps (request or server) rather than SQL NOW() in accounting queries so that these are stable when replayed from a file buffer. - freeradius-python3_patches.patch: upstreamed- update to 3.0.20 (bsc#1146848) Feature Improvements * Added Force10 dictionary. * Update dictionary.hp with new attributes. #2690. * Update dictionary.aruba with new attributes. #2696. * Fix side-channel leak in EAP-PWD (bsc#1144524, CVE-2019-13456) * Relax OpenSSL version checks, now that their API is both public, and stable. * Note that tls_min_version/tls_max_version also support "1.3" Since there is no standard yet for EAP with TLS 1.3, it will not work. * Added tripplite dictionary from #2760. * Switch to the async interface for rlm_sql_postgresql so that we can enforce query_timeout. * Added new LDAP option 'allow_dangling_group_ref'. * Updated documentation and functionality for EAP session caching See "cache" section of mods-available/eap. * Tighten systemd unit file security. Fixes #2637. * Disable TLS 1.0 and TLS 1.1 support in the default configuration We STRONGLY recommend doing this for all installations. * Add expansions for *outgoing* Radsec connections "%{proxy_listen:TLS-...}" for TLS-Client-Cert-* and TLS-Cert-* attributes. Fixes #2839. * Add %{listen:tls} which returns "yes" or "no" for TLS or non-TLS connections. * Update dictionary.lancom with new attributes. #2847. * Added rlm_sql_mongo. See raddb/mods-available/sql. Note that this module is experimental. * Added more documentation in sites-available/robust-proxy-accounting. * sqlippool now re-allocates unexpired leases, to prevent IP pool exhaustion when clients perform multiple reauthentication attempts * Add support to radmin keep the history in ~/.radmin_history. * Add support for ENV and LD_PRELOAD in radiusd.conf. See the new ENV sub-section of radiusd.conf. * Update dictionary.aptilo. #3002. * Update dictionary.airespace. #3039. * Add sites-available/coa-relay, which makes CoA easier #3045. * Add example stored procedure for IP Pools in MySQL See mods-config/sql/ippool/mysql/procedure.sql * Update dictionary.dhcp dictionary with the recent hardware types. * Add experimental rlm_python3. This should largely work the same as rlm_python, which was Python2 only. * Add Dockerfiles for Debian10 and CentOS8. * Add RPM spec file compatibility for RHEL/CentOS 8. * Notes on certificate constraints. See raddb/certs/server.cnf. * Add NAIRealm example to raddb/certs/server.cnf, for RFC 7585. Bug Fixes * Allow listen.ipaddr to reference an IPv6-only host. Fixes #2627 * ERX-Acct-Request-Reason is "integer". Closes #2635. * Fix a slow memory leak in the file management code. * Try to fix file permissions if they get modified while the server is running * Fix slow memory leak with clients. * Fix request and connection timeouts in rlm_rest. * Fix systemd issues. * Fixes from clang analyzer. * Fix missing include for the dictionaries: alcatel.esam, altiga,alvarion.wimax.v2_2,aptis,asn, audiocodes,avaya,bristol, columbia_university,freedhcp,garderos, infoblox,motorola.illegal, starent.vsa1, telkom, wimax.wichorus. * Fix internal sanity check when running with "-Xx". * Allow "inner-tunnel" virtual servers to work better with "accept" and "reject" policies. * Fix dictionary.huawei data types for Huawei-DNS-Server-IPv6-address and Huawei-Framed-IPv6-Address. * Framed-Interface-ID in postgresql/queries.conf is string, not inet Fixes #2817. * Fix rlm_cache to complain on unknown attributes in the "update" section of its configuration. * Add configure checks for -latomic. This helps on armel, mips and mipsel. Fixes #2828. * Add support to Oracle 19 and 18. Via #2857. * Add support for decoding tags in rlm_rest. Fixes #2848. * Use correct passwords when updating CRLs in raddb/certs/. * Properly separate "originate-coa" packets when accounting packets are read from the detail file reader. * Use the correct virtual server for pre/post-proxy. * radsqlrelay fixes backported from "master" branch * Fix DoS issues due to multithreaded BN_CTX access (bsc#1166847, CVE-2019-17185) - disable python2 for SLE15 and Factory - freeradius-server-enable-python3.patch: enable Python3 module - freeradius-python3_patches.patch: backport python3 fixes from upstream - freeradius-server-opensslversion.patch: updated- Enable memcached driver on SLE15- Add missing BuildRequire on samba-core-devel required for windbind support in rlm_mschap.- update to 3.0.19 (jira#SLE-5890) Feature improvements * Update dictionary.cisco * Update sqlippool to allow for stored procedures with PostgreSQL. This increases performance substantially. Patch from Nathan Ward. Fixes #2540. * Re-added "show client config" command to radmin. * Cleaned up mods-available/sql example so that it is easier to understand. * Added pfSense dictionary. Closes #2581 * Update dictionary.h3c Closes #2592 * Update elasticsearch/logstash config for v6.7.0. * EAP-PWD security fixes from Mathy Vanhoef. See http://freeradius.org/security/ (CVE-2019-11234, CVE-2019-11235, bsc#1132549, bsc#1132664) Bug fixes * Update dynamic_client module and server core so that the functionality works. This has been broken since at least v2. * Fix crash in sqlippool due to escaping changes. Patch from Nathan Ward. Fixes #2532, #2533. * Fix systemd notify, watchdog and unit files. Fixes #2541, #2499. * Fix erroneous length check in EAP-FAST. * Update documentation to remove old "ignore_null" configuration. Fixes #2578. * Fix default POD port. Should be 3799. Fixes #2591 * Correctly encode vendor-specific "encrypted" attributes. Fixes #2600- reformat changelog mostly by wrapping lines - add missing bug numbers for security fixes- update to 3.0.18 * cleanup_delay can now be 30 seconds. This helps with proxies that have packet loss. * Do-Not-Respond policies can now be set in the "post-auth" section. * Encode / Decode ADSL Forum DHCP options. * Fix module ordering issues. e.g. when "sqlippool" needs "sql". See the "instantiate" section of radiusd.conf. * Add Big Switch dictionary. Fixes #2252. * Add sql_session_start policy (raddb/policy.d/accounting) This minimizes race conditions when using Simultaneous-Use (#2257). * For rlm_perl, all variables are now tainted by default. See raddb/mods-available/perl, and the "perl_flags" configuration item. This change should only affect people who are using variables in insecure ways. * Allow "sqlcounter" module to be listed in "post-auth". * Add support for IPv6 attributes in SQL. Fixes #2280 * The server is better at handling fail-over for outbound RadSec and TCP connections. Fixes #2284. * The server is now more aggressive about retrying failed outbound RadSec and TCP connections. Fixes #2284. * Add TLS-Session-Version and TLS-Session-Cipher-Suite to the "session_state" list. * Add expansion for Radsec connections. "%{listen:TLS-...}" for TLS-Client-Cert-* and TLS-Cert-* attributes. * Add notes on running "ldapsearch" using the parameters from the LDAP module. * "ipaddr" attributes can now be cast to "integer" type attributes in an "update" section. * Move main thread queue to using atomic queues. This should help with contention in high load scenarios. * Add "recv_buff" setting to listeners. For more details, see sites-available/default. * The sqlippool module can now use attributes other than "Pool-Name" to assign IP pools. The "Pool-Name" attribute is still the default. * The "unpack" expansion can now unpack substrings. See mods-available/unpack for documentation and examples. * The preprocess module now does "ciscvo_vsa_hack" for Eltex-AVPair Fixes #2301. Vendors SHOULD NOT USE THAT KIND OF ATTRIBUTE. * Allow for -LDAP-UserDN. See mods-available/ldap for more information. * Add sanitizing of control list for moonshot. Fixes #2318. * Update rlm_sql_mysql to be compatible with MySQL 8 Fixes https://bugs.launchpad.net/bugs/1795310. * Allow logging of only Access-Accept or Access-Reject messages See radiusd.conf, "auth_accept" and "auth_reject". * Removed Connect-Rate comparison. It was unused and broken. * Add dictionary.infinera. * Use OpenSSL HMAC functions instead of local ones. * Some SQL modules can now use "auto_escape" to escape unsafe strings See mods-config/sql/main/mysql/queries.conf. * Add wispr2date conversion in mods-available/date. * Implement dictionary-based handling in rlm_python. Fixes #2334 See mods-available/python for details. * Add support for SKIP LOCKED in sqlippool. This can improve performance by an order of magnitude or more. See raddb/mods-config/sql/ippool/*/queries.conf Fixes #2383 * Allow PSK and certificates at the same time Except for TLS 1.3 which does not support that. * Update docker scripts. Fixes #2306 Patch from Matthew Newton. * Add crypt xlat. * MySQL connections can now skip verifying the server certificate. Fixes #2481. See mods-available/sql. * Add better mechanism to detect MariaDB (Old MySQL). * Add RFC 7532 "bang path" support for realms Fixes #2492. * Update dictionary.ukerna documentation. Fixes #2493. * Add support for systemd service and watchdogs Fixes #2499. * Check for openss/rand.h, and allow building without OpenSSL engine. Patch from Eneas U de Queiroz Fixes #2517. * The default PosgtreSQL queries now use "ON CONFLICT" to better deal with issues. This requires PostgreSQL 9.5 or later. Please use a recent version of PostgreSQL, or edit the default queries to remove "ON CONFLICT". BUG FIXES * The session-state list is no longer cleaned in the inner-tunnel. This lets the outer Access-Reject section access session-state. * Fix typo in lock initialization for TLS sockets Found by Sergio NNX. * Add check for crash when home server down Fixes #2233. * Add username key for postauth table. * Better libpcap checks, when the header files or libraries are missing. Fixes #2245. * Allow building with old versions of OpenSSL Fixes #2247. * Allow non-FreeRADIUS State attributes to be used with the "session-state" list. i.e. State length != 16. * Be more aggressive about cleaning up zombie children when running in debug mode. * Use LTDL_DEEPBIND, which fixes issues with Oracle libraries exporting LDAP API functions. * unlock files when asked to unlock them. * return error instead of asserting in map code. * Don't write 0 bytes to SSL. Fixes #2270. * Remove "expiry_time IS NULL" from allocate_update query. Fixes #2262. * Various dictionary cleanups and consistency checks Fixes #2281. * rlm_python has stronger thread locking to prevent reported issues. Performance may be affected. * Don't allow Message-Authenticator to overflow past the end of a large packet. * Fix crash in sqlippool when SQL server goes away Fixes #2300. * Typos in man pages. Patch from Nikolai Kondrashov Fixes #2303. * Fix crash with CoA packets/ Fixes #2304. * Fix crash in rlm_exec with CoA. Fixes #2328. * Print errors while parsing the log config, and don't quit when deprecated log settings are found. * Fix DHCP encoder xlat so that it can be used with a list of attributes. It previously only encoded the first member of the list, and now encodes all members. * The "expr" module now skips more whitespace. * Remove internal FreeRADIUS-Response-Delay attributes from attr_filter Access-Reject. * Don't send junk to redis when maximum args reached. * Small updates to IPv6 for accounting schema Fixes #2364. * Fix OpenDirectory integration in rlm_mschap. * Fix slow memory leak with dynamic clients. * Don't artificially truncate debug output for long strings. * Fix memory leak in EAP-PWD. * Fix crash in "hints" file with Fall-Through = yes. * Fix crash / timer issues with many CoA packets. * Fix attr_filter so that it does not treat vendor attributes of number 26 as Vendor-Specific. * Fix reconnect correctly in rlm_sql_mysql. * Fix rlm_cache to properly use Cache-TTL < 0 Fixes #2485. * Fix rare occurance of bad xlat expansion. * Check for rare race condition when a proxy reply arrives too late.- install license as %license instead of documentation- also fix ownership of /var/log/radius in systemd unit- update to 3.0.17 Feature Improvements * Add CURLOPT_CAINFO. Patch from Nicolas C #2167. * "stats home server" now supports "src IPADDR", to specify home server also by source IP. Fixes #2169. * Add Dockerfiles for a selection of common systems. * Increase number of permitted file descriptors, for systems with many home servers. * Add TLS-Client-Cert-X509v3-Extended-Key-Usage-OIDs Patch from Isaac Boukris. Fixes #2205. * Update main READMEs. Patches from Matthew Newton. * Added dictionary.mimosa. Bug Fixes * Don't call post-proxy twice when proxying to a virtual server. Matthew Newton, #2161. * Use "raw" string value for shared secrets and dynamic clients It now parses strings with backslashes and "special characters" correctly. Fixes #2168. * Fix RuntimeDirectory for RedHat, from Alan Buxey. * Relax checks in 'if' parser from Isaac Bourkis. * Minor cleanups for %{debug_attr:&request} from Isaac Boukris. * Be more aggressive about cleaning up cached certificate attributes, due to deficiencies in OpenSSL. Reported by Nicolas Reich. * Be more accepting when parsing IPv6 addresses. Bug noted by Klara Mall. * Fix double free in rlm_sql. Fixes #2180. * rlm_detail now writes empty Access-Accept packets. * rlm_python can now create tagged attributes. * Don't crash on duplicate realm + authhost / accthost * Allow partial certificate chain to trusted CA. Fixes #2162. * Treat SSL_read() returning zero as error. Fixes #2164. * detail writer now checks if the file was renamed or deleted. * Add User-Name to Access-Accept if EAP-Message exists, not Stripped-User-Name. * RedHat Systemd updates. Fixes #2184. * Use correct API for State variable in rlm_securid. * Remove broken radclient option "-i". * Fix "users" file (and hints, etc). So that it does not get confused about entry ordering with multiple $INCLUDEs. * Fix rlm_sql to expand the un-escaped string, not the raw string. * Link default and inner-tunnel only if they exist. Fixes #2206. * Don't use both IP_PKTINFO and IP_SENDSRCADDR. * Always install signal handler for SIGINT (needed by Docker). * Fix intermediate CA flow for OCSP. Fixes #2160 Intermediate certs which are not self-signed will now be checked. * sqlippool now returns "fail" if it fails IP allocation. * Fix rlm_yubikey to look for correct attribute in replay attack check.- update to 3.0.16 Feature improvements * rlm_python now supports multiple lists. From #2031. * Add trust router re-keying. From #2007. * Add support for Samba / AD LDAP schema. See doc/schemas/ldap/samba/README.txt and doc/schemas/ldap/samba/ * Add "tls_min_version" and "tls_max_version" to EAP module for Debian OpenSSL issues. * Better documentation for client certificates in PEAP and TTLS: it usually doesn't work. Fixes #2068. * Distinguish login failure from AD unavailable. Fixes #2069. * Update RH spec files. Fixes #2070. * Run Post-Proxy-Type if all home servers are dead. Fixes #2072. * Print offending IP addresses when EAP sessions come from two upstream home servers, and rate-limit the messages. * Minor packaging updates. * Better documentation for rlm_rest. * EAP-FAST now has it's own "cipher_list", so that it is easier to configure. * EAP-FAST now forcibly disables TLS1.2, until such time as we implement the new keying mechanism from TLS1.2. * Add documentation for allow_expired_crl. * Update Debian logrotation. #2093 and #2101. * DHCP relay can now drop responses. #2095. * rlm_sqlippool can now assign Delegated-IPv6-Prefix. It also now can assign any IPv4 or IPv6 address. Based on patches from maximumG. #2094. See raddb/mods-available/sqlippool for changes. * radeapclient can now use EAP-SIM-Ki to dynamically create the necessary triplets. * Explain why many LDAP connections are closed. Fixes #1969. * Debian build / package issues fixed by Matthew Newton. * dictionary.patton updates from Brice Schaffner. Fixes #2137. * Added scripts to build "inner-server.pem", and updated mods-config/inner-eap and certs/README to match. * Added provisions for using an external CA. See raddb/certs/ * Include dhcpclient binary in freeradius-dhcp debian packge. Bug fixes * Bind the lifetime of program name and python path to the module FR-AD-002 (redone) * Pass correct statement length into sqlite3_prepare[_v2] FR-AD-003 (redone) * Allow 100-Continue responses with additional headers in rlm_rest. * fix corner case where detail files were not being locked correctly. * Fix (SQL-Group == "%{...}") checks, and same for LDAP-Group. Fixes #1947 * Clean up exfile code. Which should help to avoid issues with reading / writing 100's of detail files. * Fix build for winbind. Patch from Alex Clouter. * Fix checkrad for Mikrotik. Patch from Muchael Ducharme. * Fix home server stats lookup. Patch from Phil Mayers. * Add libjson-c3 as an optional dependency. * Require LTB OpenLDAP on CentOS / Redhat, to avoid linking against NSS, which breaks the server. Fixes #2040. * rlm_python fixes. Fixes #2041 * Typos in "man" pages. Fixes #2045 * Expand "next" in %{%{...}:-%{...}}. Fixes #2048 * Don't add TLS attributes twice. Fixes #2050. * Fix memory allocation in rlm_rest. Fixes #2051. * Update trustrouter for new API. Fixes #2059. * Fix SQLite issues on FreeBSD. Fixes #2060 * Don't do debug logging of bad passwords. Fixes #2064. (bsc#1099802) * More graceful handling of "die" in rlm_perl. Fixes #2073. * Fix occasional crash when using cisco_accounting_username_bug = yes * EAP-FAST fixes from Isaac Boukris. [#2078], #2076, and #2082, #2126. * DHCP fixes, relay, #2092, add run-time check, #2028 * Decode multiple RADIUS packets at a time in highly loaded RadSec connections. Patch from Jan Tomasek. #2106. * TunnelPassword is not "single value" in LDAP schema. Fixes #2061. * sql log now opens the expanded filename, not the input one. This was a regression introduced in 3.0.15. * Remove unnecessary UNIQUE constrain in Oracle schemas. * Fix SSL thread and locking issues when modules also use SSL. Fixes #2125 and #2129. * Re-add dhcpclient "raw packet" changes. Patches from Nicolas Chaigne and Matthew Newton. Fixes #2155.- Fix permissions of radiusd.service (bnc#1053654)- bsc#1055679 - freeradius-server does not provide winbind/AD auth Added libwbclient-devel as buildrequires- update to 3.0.15 with security fixes for issues found via fuzzing by Guido Vranken (bsc#1049086) https://freeradius.org/security/fuzzer-2017.html * CVE-2017-10978: FR-GV-201 (v2,v3) Read / write overflow in make_secret() * CVE-2017-10983: FR-GV-206 (v2,v3) DHCP - Read overflow when decoding option 63 * CVE-2017-10984: FR-GV-301 (v3) Write overflow in data2vp_wimax() * CVE-2017-10985: FR-GV-302 (v3) Infinite loop and memory exhaustion with 'concat' attributes * CVE-2017-10986: FR-GV-303 (v3) DHCP - Infinite read in dhcp_attr2vp() * CVE-2017-10987: FR-GV-304 (v3) DHCP - Buffer over-read in fr_dhcp_decode_suboptions() * CVE-2017-10988: FR-GV-305 (v3) Decode 'signed' attributes correctly * FR-AD-002 (v3) String lifetime issues in rlm_python * FR-AD-003 (v3) Incorrect statement length passed into sqlite3_prepare- update to 3.0.14 (still FATE#322416) Feature improvements * Enforce TLS client certificate expiration on session resumption, and Session-Timeout. See CVE-2017-9148 (bnc#1041445) * Updated dictionary.cisco.vpn3000, dictionary.patton * Added dictionary.dellemc * Lowered the log output for failed PEAP sessions. * ALlow utc in rlm_date. * The internal OpenSSL session cache has been disabled. Please see mods-available/eap * Update detail reader documentation. * Make outgoing RadSec connections non-blocking. * Add SQL backing to Moonshot-*-TargetedId generation. Bug Fixes * radtest uses Cleartext-Password for EAP, not User-Password. * Update documentation for mods-enabled/ linking. * Enhanced checks for moonshot salt. * Allow session resumption for RadSec connections. * Update "huntgroups" file to note that port ranges are not supported * Fix OpenSSL permissions issues on default key files. * Certificates are not required when PSK is used. * Allow SubjectAltName as first extension in cert. * Fixed talloc issue with TLS session resumption. * "&Attr-26 := 0x01" now produces useful error messages. * Handle connection error in rlm_ldap_cacheable_groupobj. * Fix endian issues in DHCP. * Multiple minor fixes for Coverity complaints. * Handle unexpected regex. * Fix minor issues in dictionaries. * Fix typos and grammar. Patches from Alan Buxey. * Fix erroneous VP creation in rlm_preproces. * Fix MIB. Patch from Jeff Gehlbach. * Trust router updates from Alejandro Perez. * Allow build with LibreSSL. * Use correct packet for channel bindings. * Many fixes found by PVS-Studio. Thanks to PVS-Studio for giving us a test license. Please see the git commit history for more info. * Fix incorrect length check in EAP-PWD. This may be exploitable. * Stop rotating session database files (radutmp, radwtmp) since these are not logfiles. - freeradius-server-radiusd-logrotate.patch: updated- removed obsolete freeradius-server-fix-cert-bootstrap.patch because recent /etc/raddb/certs/bootstrap simply works - update to 3.0.13 (still FATE#322416) Feature improvements * Add dictionary.rfc7930. Note that we do not implement the RFC. * Added 'cipher_server_preference' to mods-available/eap Patch from #1797. * OpenSSL 1.1.0 compatibility fixes. * rlm_perl: radiusd::xlat to evaluate xlat string within perl script * Allow authentication retry in winbind. Patch from Herwin Weststrate. See raddb/mods-available/mschap. * Added "recv-coa" method to rlm_rest. It behaves the same as "authorize". * Document Trust Router tr_port option. Patch from Stefan Paetow. * Update elasticsearch/logstash examples so that they work with elastic stack v5. Patch from Matthew Newton. * Print information about packets, replies, and contents in the detail file reader. * Update abfab-tr policy. Pull request #1893 from Stefan Paetow. * Reject packets which contain User-Password and EAP-Message. * Add example for filtering Access-Challenge. See sites-enabled/default. * Pull symlink fixes from v4.0.x. Fixes #1859. * Add systemd reload. Not everything is reloaded, but some is. Fixes #1662. * Better documentation for listen "ipaddr". Fixes #1921 * Add dictionary.cnergee, updated dictionary.nomadix. * radclient no longer needs -x to print statistics with -s. Bug fixes * Minor typos. Fixes #1763 * Fix typo in RPM build. Closes #1767. * rlm_mschap check for password expiry only if password was correct. Fixes #1762. * Update debian build. * update rlm_counter "man" page. Fixes #1775. * Remove erroneous assert. Fixes #1778. * fix mschap password change test. Fixes #1792. * Cleanup config file on data remove. Fixes #1795. * passwd module returns "notfound" if not found. * Check for old OpenSSL, and don't build rlm_eap_fast if it necessary. Fixes #1803 * Cleanup memory better after ldap version query. Patch from Aleksey Katargin. * Rename lt_* functions to avoid linker issues with libtool. Fixes #1277 * Many miscellaneous fixes and typos. * Allow long strings in %{%{foo} bar:-%{baz} blah". Fixes #1866 * Fix filtering operators, along with more documentation and more tests for them. * Fix OpenSSL fixes. Fixes #1876. * Finish SQL select queries even when SELECT returns no rows. Fixes #1879. * Set Module-Failure-Message for more EAP errors. * Correct typo in dictionary.rfc5580. Fixes #1882 * Remove obselete systemd syslog.target. * Client-Port-Balance load-balancing now uses client port. * Radrelay examples fixed from Alex Clouter. * Update systemd target. Pull request #1896. * Trim starting whitespace in xlat strings. * Get MySQL result lengths using normal API. * suid down after fchown(). Fixes #1914. * Fix cases of comparing pointer to NUL character. Fixes #1915. * OpenSSL v1.1 fixes. Pull request #1921. * Better Handle v4/v6 host names. Pull request #1919. * Remove "Auth-Type = System" from docs and examples. * Don't crash on malformed %{home_server}. Fixes #1922 * fix erroneous use of talloc destructor in rlm_eap * Issue trigger modules.sql.fail. Fixes #1923 * Document python_path gotcha's. Fixes #1845 * dlopen() the specific version of Python. Fixes #1592- Don't require insserv if we use systemd - Remove require for unused fillup- Merge changes from SLE to openSUSE (FATE#322416): * freeradius-server-radclient-init-error-buffer.patch - make sure we initialize error buffer. bsc#911886: radclient error free() invalid pointer * freeradius-server-opensslversion.patch: remove OpenSSL version check and assume we know what we are doing. (bnc#1013311) * merge .changes file, mostly. - do not attempt to detect "vulnerable" OpenSSL versions. SUSE security fixes do not necessarily bump version numbers as does upstream OpenSSL (bnc#1021375) - do not generate certificates in %post. End-user needs to do this manually. - keep FreeTDS disabled on SLE12 - we never shipped it enabled - require OpenSSL 1.0+ - use pkgconfig(systemd) instead of plain systemd as BuildRequires - don't list manual pages as %doc- Remove --with-pic which is for static libs only. - Use SUSE RPM group names. Trim filler words from description. - Do not hide errors from groupadd/useradd.- Add upstream keyring - 2 new modules: rlm_sql_freetds and rlm_eap_fast- update to 3.0.12 - still fate#320481 The focus of this release is stability. * Feature improvements + Add support for =~ and !~ in update sections. See "man unlang" + Add dictionary.checkpoint. + Simultaneous-Use prints out more information. + Print WARNING in debug mode when packets may be truncated. + Added expansions %{home_server:state} and %{home_server_pool:state}, which show the state of the server / pool. + Mark rlm_sql_freetds as stable. + Make rlm_perl less fragile. Patch from Herwin Weststrate. + Allow extended attributes to have "encrypt=2" + Update dictionary.aruba. + Add support for EAP-FAST. This is an isolated feature which does not affect anything else. + Update OpenSSL vulnerability list. Use a version of OpenSSL released after September 20, 2016. + EAP certificate verification is now done when "verify" is enabled and "ocsp" is disabled. + New dhcpclient and rlm_rad_counter man pages. + Minor abfab and moonshot additions. + Pass CFLAGS through from environment in RPM builds. Allows more custom builds. + Build with Heimdal in addtion to libkrb5. * Bug Fixes + Use correct typedef for older versions of sqlite. + Update mssql schema to add priority + don't complain on /dev/urandom in ldap + fix == operator in update sections + Don't create DHCP strings with many trailing zeros. + Allow MS-CHAP change passwords instead of complaining on large buffer. + Allow assignment or equality operator on SQL. + Update aclocal tests for FreeBSD 10. + Remove occasional hang in rlm_linelog. + Copy VSAs to inner tunnel for TTLS and PEAP. Fixes #1544 + A few minor bugfixes caught in v3.1.x cleanup, and back-ported to v3.0.x. + do_not_respond again works in post-proxy + Allow realm "~^.*$" {} and User-Name with no realm. + Fix leak when creating unknown attributes + Fix Debian / logrotate. + Make OpenSSL error functions thread-safe. + Fix crash with rlm_sql and updating SQL-User-Name. + Debian build updates. + Allow regular expression comparisons in radclient. + Fix memory leak on unknown attributes in detail file reader. + Update example paths in "man" pages when installing them + Build fixes for rlm_mschap. Fixes #1489. + BSD build fixes. Patch from issue #1583. + Be more careful about /lib/ when building. Fixes #1585. + Correct ifdef placement error. Fixes #1572. + Allow for more files in internal "exfile" API So it will be possible to open more than 64 "detail" files at the same time. + Remove support for statically built EAP modules. Fixes #1591. + Many fixes to rlm_python from Guillaume Pannatier. + Use correct week adjustment in SQLcounter. Fixes #1608 + Minor fixes to allow compilation without DHCP, VMPS, or TCP. + Fix checks for module / config file change on HUP. + Compile regex comparisons when sent via "debug condition". + Update filenames in documentation and examples. + Don't crash if SQL connection becomes unavailable. + Disallow originate_coa when proxy_requests = no. + Free rad_perlconf_hv in correct perl context. + Multiple fixes for Debian builds. #1510, among others. + Set OpenSSL FIPS compatibility flag when necessary. + Pulled fixes for the build system over from other branches. + Fix OCSP for RADIUS over TLS. + Fix skip_if_ocsp_ok behavior. + Better fixes for systems without closefrom() but which have /proc. + Minor build fixes back-ported from v4.0.x. + build --whout-ascend-binary. Fixes #1761. + Be more aggressive about not opening new connections in debug mode after CTRL-C. Address #1604.- use %{with} macro for conditional inclusions instead of hardcoding version numbers - improved package descriptions - fixed builds on SLE12 and SLE11SP4- removed installation of experimental module rlm_sqlhpwippool.so - update to 3.0.11 (fate#320481, bsc#961479, CVE-2015-8763, bsc#935573, CVE-2015-4680) * Changes of version 3.0.11 + Feature improvements - "unlang" comparisons of IP addresses to IP prefixes are now detected, and types automatically cast. - Allow shorthand form of ipv4prefix values e.g. 127/8. - Add "auto_chain" to raddb/mods-available/eap, tls subsection. This allows the disabling of OpenSSL auto-chaining of certificates. Which might be wrong. - Added printing of coa and disconnect stats (radmin). - radclient defaults to expecting Access-Accept responses to Status-Server. - Updated dictionary.lancom, dictionary.starent. - Portability fixes for Solaris. - More errors from ntlm_auth gets passed to MS-CHAP. - Update abfab-tr-idp virtual server. - Added "filter_password" in policy.d/filter. This removes embedded zero bytes in User-Password, for compatibility with broken clients. - The server now issues a WARNING message if duplicate configuration items are found. - TLS can skip the "verify" section if OCSP returns OK. See raddb/mods-available/eap, "skip_if_ocsp_ok". - Set TLS-OCSP-Cert-Valid = yes / no / skipped, which is the result from the OCSP check. - Interoperate with AD and "LmCompatibiltyLevel = 5", by always setting WBC_MSV1_0_ALLOW_MSVCHAPV2 for native winbind in rlm_mschap. - TTLS and PEAP now require "virtual_server" to be a real server. - Print WARNING when TTLS or PEAP identities are spoofed or not properly anonymized. See RFC 7542 for requirements. - Various rlm_python fixes from Herwin Weststrate. - Allow setting Response-Packet-Type in "Post-Proxy-Type Fail", which is useful when the home server does not respond. - elasticsearch updates from Matthew Newton + Bug Fixes - Fix issue where field nas_type would not be accessible via the %{client:} xlat, for clients loaded from SQL. - Fix compatiblity issues with OpenSSL 1.0.2. Ignore calls to msg_callback with 'pseudo' content types. - Data type "ipv4prefix" is parsed correctly. - Use correct talloc context in rlm_exec. Fixes #1338. - Complain in unlang if "else" is used with no previous "if" or "elsif". - Send accounting status packets to the accounting port. Fixes #1364. - Print out CFLAGS when doing "radiusd -Xxv" - Fixed bug with coa/acct stats value #1339. Based on patch from Jorge Pereira. - Fixes for LEAP proxying. Don't use LEAP! - Fix issue with "directory already exists" seen when doing "make install". - Fixed bug with radmin related to the option "stats detail " - Complain if the detail file reader does not have permission to read the "detail.work" file. Fixes #1398 - Fixed SoH. Attributes were not being copied to the virtual server. - Used a wrong list to global statistics in "stats". - Create EAP-PWD identity correctly. Prevents segfaults. - Dynamically validate authentication types for PEAP and EAP-MSCHAPv2. - Fix includes in installed headers. - OpenSSL 1.0.1f and 1.0.1g do NOT calculate TLS 1.2 keys correctly. See raddb/mods-available/eap, "disable_tlsv1_2" - Allow password change to work for MS-CHAP. This requires 'r=0', because password changes are not retries. - Fix home server fail-over for home servers using TCP and/or RadSec. - Special characters in expanded regexes are now escaped e.g. User-Name containing '.', and comparing /%{User-Name}/, the '.' will now be escaped. See src/tests/keywords/regex-escape. - Use correct authentication vector when sending Access-Reject replies for RadSec. - Set FreeRADIUS-Proxied-To in TTLS again. You should use the "inner-tunnel" virtual server, instead of relying on this attribute. - Fix debugging constants in rlm_perl. Patch from Herwin Weststrate. - Add samba-dev / samba4-dev to debian builds so that rlm_mschap can automatically use the new winbind API. - Automatically skip zero-length attributes when sending packets, instead of erroring out.- fix bsc#951404 * Rebuild of freeradius-server package fails * fix source url - ftp://ftp.freeradius.org/pub/freeradius/ + ftp://ftp.freeradius.org/pub/freeradius/old/- update to 3.0.10 * Changes of version 3.0.10 + Feature improvements - Do more optimization of unlang policies. This makes run-time a bit faster. - Re-name most of the functions in src/lib. Third-party module authors will have to do the same. - More documentation on contributing and how to write modules. - Update radiusd.service for systemd. - Open IPv6 proxy socket if the server is listening on IPV6 auth / acct / coa packets. - Create debian packages for DHCP. Fixes #1125. - Add more tests for "update" section parsing. - Update "man" pages. - Update attributes for Alcatel 7750 - Add dictionary for Boingo Wi-Fi - Add support for DHCP lease queries. See raddb/sites-available/dhcp - On HUP, check all modules for config files which have changed. And only re-load those modules. - Allow FreeRADIUS-Response-Delay(-USec) to be set for RADIUS packets. Patch from Herwin Weststrate. - Documentation fixes from Alan Buxey and Matthew Newton. - Update "logrotate" script. - Added more RFCs to doc/rfc for new standards implemented by FreeRADIUS. - Don't crash when doing "radmin -e "help hup". Patch from Matthew Newton. - The dictionary parser now does more sanity checks, which prevents run-time problems with invalid attributes. - Update debian packages. Patches from Christopher Hoskin. - Many other debian packaging fixes from Matthew Netwon and Herwin Weststrate. - Add "session-state" to Perl. Patch from Herwin Weststrate. + Bug Fixes - Fix rlm_files so that there are no collisions when loading 10's of 1000's of users. - Fix radclient to use our internal v4/v6 parsing functions. v6 addresses with ports now work correctly. - Fix sending/receiving packet messages to wrap v6 addresses in square brackets '[]'. - Check for sasl/sasl.h when building rlm_ldap, and disable SASL functionality if unavailable. - Fix issue which caused a non \0 terminated buffer to be assigned to attributes if the value being assigned contained an invalid escape sequence. - Fix deadlock when reconnecting connections in the connection pool. - Fix potential overrun in functions that used fr_utf8_char with a non nul terminated buffer. - Fix decoding issue for Tunnel-Password type attributes which were very long. Found by Denis Andzakovic. - Fix radclient issue with TCP sockets on FreeBSD. - The server now creates ${run_dir} and ${logdir} directories in daemon mode, when running as "root". - Handle tags when using maps. Fixes #1191. - Fix crash when CoA packets time out. - Fix parse error in rediswho - Fix regex support in SQL radcheck the "users" file and radsniff. - Register listen xlat earlier, so that it's available when the virtual servers are being parsed. - Parse Ascend-Data-Filter when given as "0x..." - Print Ascend-Data-Filter correctly. Add test cases for both. - Allow old-style clients again. They will be disallowed for 3.1.0 and following. - Complain instead of crash when "else" and "elsif" are in the wrong place. - Clean up memory more aggressively. This lowers the maximum memory used, most typically for TLS based EAP methods. - Prevent the server from unlinking the control socket of an already running instance. - Fallback to using the configured OCSP URL if one exists, and no URL is provided in the certificate. - Return CoA-NAK if proxying CoA fails. Based on patch from Jorge Pereira. - Lower peak memory usage by decreasing size of internal memory pools. - The control socket is now left in place if a second copy of the server is accidentally started. - Allow virtual attributes in "switch", "case", etc. Fixes [#1240] and #1265. - Many spell check / typo fixes in comments and example configuration files. - Better handle multiple DHCP listeners. - Don't print secrets for old-style realms. Fixes #1267. - Don't fall through in empty "case" statements. Fixes #1274. - Update EAP-TTLS so that MPPE keys are correctly calculated with TLSv1.2. - Always delete MS-MPPE-* from the TTLS inner tunnel. This allows TTLS / EAP-MSCHAPv2 to work. Fixes #1206. - Fix off by one error that caused some MSCHAP-Error messages to be sent without the password change version (V=3) and the textual message component (M=). - Always include C= V= and M= in MSCHAPv2 errors. RFC 2759 does not say that any of these fields are optional, and not including V= caused errors with wpa_supplicant. - Do not include M= in MSCHAPv1 errors. It's not supported.- Fix boo#912714: freeradius can't use ntlm_auth * Create winbind group * Add radiusd to winbind group- Remove gpg signature file * The gpg signature checking is broken and doesn't work- Fix bsc#935573: Insufficent CRL application for intermediate certificates * CVE-2015-4680 * freeradius-server-CVE-2015-4680.patch based on https://github.com/FreeRADIUS/freeradius-server/commit/a03814af310bb3bee74ea012546d99c48b0ea5c3- update to 3.0.9 * Changes of version 3.0.9 + Feature improvements - Make "pool" configurations more consistent, and update documentation for them. - Move connection pool logic to "most recently started", instead of MRU. This should help with pool stability. - More VSAs for 3GPP2 - Added examples of multi-value attributes to rlm_perl. - LDAP-Group and SQL-Group attributes are now dynamically allocated. - Only the "sql" module registers SQL-Group. Other instances register "instance-name-SQL-Group", similarly to "ldap". - Unknown attributes are now complained about more often when used in unlang statements. e.g. if (Foo-Bar == 3) used to be a string to string comparison. It is now a parse error. - Rename RLM_COMPONENT_* to MOD_* in the code. This makes many things easier. - Move to C99 initializers for modules. - Load modules in raddb/mods-enabled. This allows attributes like "LDAP-Group" to be used in the "files" module, without explicit ordering or listing in "instantiate". - Added 'bootstrap' section to modules. Third-party modules will need to be updated. - When adding clients from a DB, add them to a virtual server if that virtual server has a "listen" section. Otherwise, add the clients to the global list. - When reading dynamic clients from a file, don't expire them if the underlying file is unchanged. - Allow the server to originate CoA requests from the post-auth stage. - The server creates ${run_dir} and ${logdir} in daemon mode, if they do not already exist. - Add dictionary for Wi-Fi Alliance Hotspot 2.0. The server now supports all mandatory and optional attributes for this specification. - HUP now re-loads the configuration only if the files have changed. If all files are unchanged, HUP re-opens the log file, and does nothing else. - Much better debug messages for EAP-TLS, including which attributes are cached, and when they are retrieved. - Increase default max_requests to 16384. Memory is cheap now. - Added "stats memory" commands to radmin. Debug build only. - Aptilo controller dictionary updates. - SQL modules now use Acct-Unique-Session-Id everywhere. - The redis modules are now stable. - The LDAP module now supports SASL "interactive bind" method. This allows Kerberos based administrator and user binds. - DHCP code is now in libfreeradius-dhcp. - More DHCP encoding / decoding unit tests. - rlm_replicate can now be listed in the "accounting" section. - Better sqlite debugging output. - Remove "required" option from many sql_ippool directives. - Set default CA "basic constraints" to "critical". Fixes #1073 - Updates to help / man pages from Jorge Pereira. - Added more tests. + Bug Fixes - Be more careful about unused config item warnings when using -Xx. - Move more defines to be auto-generated. - Allow virtual servers in proxy fallback. - Allow %{module:} to work. - Don't crash in RadSec. Closes #980. - Return better errors when a unix group / user is not found. - Re-enable detail module "locking" parameter. - Don't crash when logging replies from Status-Server packets. - The couchbase module now uses "update" instead of "map", for consistent with the rest of the server. See raddb/mods-available/couchbase - Don't require NT-Password for MS-CHAP password changes. - Be a bit more careful about decrypting MS-CHAP-MPPE-Key attributes. Closes #1013. There is no perfect fix, tho. - Fix security issues with EAP-PWD. See http://freeradius.org/security.html#eap-pwd-2015 - Fix dynamic clients read from SQL in non-debug mode - MS-CHAP now allows retries (i.e. password change) when passwords are expired. - Allow "user=radiusd" when the server is already user "radiusd" - suid up/down works on non-Linux systems. This means that the control socket should have the correct ownership. - Fix issue which caused the server to sometimes have problems when a home server was marked zombie. - Fix format.pl because Perl is now more picky. - Fix proxy to Packet-Dst-IP-Address, so that it uses the correct destination port. - Fix corner case with cursor functions and removal. - OpenDirectory fixes and documentation. - Fix leaks in rlm_redis. - RFC 6929 "evs" attributes are now encoded / decoded properly. - Fix talloc pool leaks when receiving malformed or retransmitted Accounting/CoA requests. - Printed attributes again use double quotes instead of single quotes. - Set X509_V_FLAG_CRL_CHECK_ALL, and add "check_all_crl" to eap.conf. Fixes oCert CVE-2015-4680. - rlm_expr now errors out correctly on malformed attribute references instead of triggering an assert. - Make "break" work in "foreach" loops - Allow dynamic expansions to work again in the "hints" file. - Correct minor typos in comments and examples from Alan Buxy. - Re-urlencode the path portion of ldapi:// urls before passing it to ldap_initialise. - freeradius-server-rlm_sql_unixodbc-configure.patch removes hard-coded directory in configure script of rlm_sql_unixodbc - install new module rlm_sqlhpwippool.so- minor adjustments/cleanup of spec and changes- update to 3.0.8 * Changes of version 3.0.8 + Feature improvements - Allow syslog_severity to be set in rlm_linelog. - Allow defaults to be set for bulk clients in LDAP and couchbase. - Updates to dhcpclient. Patches from Nicolas C. - rlm_mschap now supports direct connections to winbind, which is faster than ntlm_auth. See raddb/mods-available/mschap. Patch from Matthew Newton. - Recommend /dev/urandom for TLS randomness, instead of ${certdir}/random - Allow TLSv1 to be disabled via "disable_tlsv1" in tls{}. - Allow Expanded EAP types where vendor is 0 (IETF) and type is normal EAP type. Supplicants sending Expanded EAP types like this are broken. - Add support for server side sort controls when searching for user objects in rlm_ldap. + Bug Fixes - Don't complain about "authorize" in "server {}" blocks, but only if there's no "server" block. - Fix cosmetic issue where debug from the first packet read by a detail reader thread would be emited during config parsing. - Fix ASSERT on truncated detail packets. - Don't use main server log functions from within panic_action, as in the case of syslog this would cause deadlocks if the fault was triggered from within a malloc. - Fix issue in "switch" when "correct_escapes = false". Fixes #911. - Fix sqlcounter configuration to use "%%b" instead of "%b", otherwise the new syntax validation will fail. - Allow forward references in configuration items. Modules aren't always loaded in a sane order. - Fix more escaping issues. Closes #912. - Decode MAC addresses correctly for VMPS. - Fix memory leak with TLS connections. - Fix state machine threading issues for conflicting packets. - Fix copy_request_to_tunnel issues for tagged attributes. - Allow "ok" to over-ride "updated" inside of Auth-Type sections. - Update state machine so that post-proxy is run though child threads for performance, instead of blocking the main thread. - Allow "netmask" to work again in client definitions. - Relax restrictions on SQL group queries. - track outgoing proxy sockets and clean them up more aggressively. - track proxy statistics, including CoA and Disconnect. - If radmin has a connection failure when running a command, it re-connects and runs the command again. - mark home servers "unknown" less aggressively. - Fix potential SEGV in PostgreSQL driver on error. - Fix issue where fields like nas_type would not be accessible via the %{client:} xlat, for dynamic clients. - Set default busy_timeout (of 200ms) in the sqlite driver, so writes don't cause selects to fail in multithreaded mode. This is user configurable, and may be increased if required. - Convert Password-With-Header attributes to binary (from hex or base64), in the authorize method of rlm_pap. - Fix invalid assert in state.c, that could cause abort in post-auth. - Fix double free when -m flag is used, and connection pools are referenced by multiple modules. - RADIUS over TLS accounting uses the same port as authentication. - Regularized return codes from radmin commands. - Fix RHEL spec file so it works correctly for Centos7 which uses systemd, and didn't like the SystemV init script. - radwho and radlast now have a -D option to load dictionaries - DHCP packets are no longer checked for duplicates. - Don't crash in sql module group comparisons in corner case. - Calculate MPPE keys correctly when using TLS 1.2. - Fix load-balance sections. Closes #945 - TLS certificates are available again in the post-auth section. They are not available for session resumption. - radclient encodes CHAP-Password properly when using -c Closes #955. - Fix issue in rlm_cache_memcached driver that caused variable length values to be truncated. - Fix track functionality in detail reader, so it no longer fails with a "Failed marking detail request as done: Bad file descriptor" error. - Actually add the peer identity (as User-Name) to the inner tunnel in EAP-PWD requests, so it's available for lookups. - Fixes to PostgreSQL queries. Patches from Santiago Gimeno. - new set of consolidated patch files: deleted: * freeradius-server-2.1.1-logrotate_su.patch * freeradius-server-2.1.6-rcradiusd.patch * freeradius-server-initscript-pidfile.patch * freeradius-server-radius-reload-logrotate.patch * freeradius-server-var_run.patch added: * freeradius-server-radiusd-logrotate.patch * freeradius-server-rcradiusd.patch * freeradius-server-tmpfiles.patch- Do not disable as-needed build - Remove the with_sysconfig switch and just stick with versions- update to 3.0.6 - fixes a segmentation fault in PEAP module (bnc#912588) Feature improvements: * radmin / raddebug conditional errors are printed to the output, instead of being discarded. * raddebug will exit if condition set with -c was invalid. * radmin auto-reconnects if the connection to the server has gone away. * rlm_cache now has submodule support. See raddb/mods-available/cache * New memcached driver for rlm_cache. See raddb/mods-available/cache * Add support for &Attribute-Name[*] in conditions. See "man unlang" for details. * Add &Attribute-Name[n] which gets the last instance of an attribute e.g. Module-Failure-Message[n]. * Allow for redundant string expansions. See the "instantiate" section of radiusd.conf. * When checking IP addresses in conditions, make the right side be parsed as an IP prefix. * Support JIT compilation of compiled regular expressions when built with libpcre. * Support named capture groups with "%{regex:}" when built with libpcre. * Increase regular expression capture groups from 8 to 32. * Emit error markers for badly formed regular expressions. * Allow 'm' flag to enable multiline mode in regular expressions. * Support limited implicit attribute conversion in update sections. * Support casting between IPv6 and IPv4 where the IPv6 address has the v4/v6 mapping prefix (::ffff:).- Drop .keyring and .sig file: freeradius-server still uses MD5 signatures, which are no longer validated/accepted by GPG 2.1.- update to 3.0.5 Some of the new features: * Allow LDAP to specify arbitrary attributes for dynamic clients. * Allow one level of backslashes (finally). See radiusd.conf, "correct_escapes" setting. * When supported by OpenSSL, allow TLS 1.1 and TLS 1.2 in EAP methods. * Allow multiple new connections to be spawned simultaneously in the connection pool, to cope with spikes in traffic. * Use kqueue on systems which support it. This allows for better scaling when using many sockets. * Home server "response_window" can now take fractions of a second. See proxy.conf. * radmin now supports "show module status", as thee counterpart to "set module status" * "ipaddr" will now use v6 if no v4 address is present. You should use "ipv4addr" or "ipv6addr" to force v4/v6 addresses. * "client" sections will allow "ipaddr = 192.192.0/24". The old "netmask" is still accepted, but the new format is preferred. * Allow custom HTTP headers to be set for rlm_rest requests using control:REST-HTTP-Header (attributes consumed after use). * Extend format of %{rest:} expansion to allow HTTP method and POST data to be specified and urlquoting. * Add support for aliases in rlm_ldap. * Add support for connection pool sharing to all modules that use the connection pool (pool = ). * "tls" sections now have a "psk_query" configuration item, for dynamic queries to discover a key from a PSK identity. * Preliminary support for EAP channel bindings. * Foundational work for dynamic home servers. They do not yet work, but this is now only a matter of updating the "realm" module in a future release. * Support &attr[*] syntax to copy all instances of an attribute when used with the += operator in an update section. May be qualified with a tag. * The logintime and expiration modules can now be listed in the post-auth section. This makes some configurations simpler. * rlm_sqlippool is now IPV6 capable. Set "ipv6 = yes" to get Framed-IPv6-Prefix returned. The SQL queries have NOT been updated. Please submit patches. and numerous; bugfixes - remove gpg-offline - create /run/radiusd after install - drop freeradius-server-opensslversion.patch (upstream)- freeradius-server-opensslversion.patch: do not check the minor version of openssl, minor versions are supposed to be compatible. bnc#906682/bin/sh/bin/sh/bin/sh/bin/shfreeradiussheep14 1670847468  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     3.0.21-150200.3.12.13.0.213.0.21-150200.3.12.13.0.21-150200.3.12.13.0.21    !"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""#$$%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&'()))radiusdradiusdraddbREADME.rstcertsMakefileREADMEbootstrapca.cnfclient.cnfinner-server.cnfpasswords.mkserver.cnfxpextensionsclients.confdictionaryexperimental.confhintshuntgroupsmods-availableREADME.rstabfab_psk_sqlalwaysattr_filtercachecache_eapchapcouchbasecountercuidatedetaildetail.example.comdetail.logdhcpdhcp_sqlippooldigestdynamic_clientseapechoetc_groupexecexpirationexprfilesidninner-eapippoollineloglogintimemac2ipmac2vlanmoonshot-targeted-idsmschapntlm_authopendirectoryotppampappasswdpreprocesspython3radutmprealmredisrediswhoreplicatesmbpasswdsmsotpsohsometimessqlsqlcountersqlippoolsradutmpunboundunixunpackutf8wimaxyubikeymods-configREADME.rstattr_filteraccess_challengeaccess_rejectaccounting_responsepost-proxypre-proxyfilesaccountingauthorizepre-proxypreprocesshintshuntgroupssqlcountercuiippoolippool-dhcpmysqlschema.sqlschema.sqlpostgresqlprocedure.sqlmainmoonshot-targeted-idsmysqlqueries.confschema.sqlpostgresqlqueries.confschema.sqlsqlitequeries.confschema.sqlunbounddefault.confmods-enabledalwaysattr_filtercache_eapchapdatedetaildetail.logdigestdynamic_clientseapechoexecexpirationexprfileslineloglogintimemschapntlm_authpappasswdpreprocessradutmprealmreplicatesohsradutmpunixunpackutf8panic.gdbpolicy.dabfab-traccountingcanonicalizationcontrolcuidebugdhcpeapfiltermoonshot-targeted-idsoperator-namerfc7542proxy.confradiusd.confsites-availableREADMEabfab-tlsabfab-tr-idpbuffered-sqlchallengechannel_bindingscheck-eap-tlscoacontrol-socketcopy-acct-to-home-serverdecoupled-accountingdefaultdhcpdhcp.relaydynamic-clientsexampleinner-tunneloriginate-coaproxy-inner-tunnelrobust-proxy-accountingsohstatustlsvirtual.example.comvmpssites-enableddefaultinner-tunneltemplates.conftrigger.confusersradiusdradiusd.serviceradiusd.conffreeradiusproto_dhcp.soproto_vmps.sorlm_always.sorlm_attr_filter.sorlm_cache.sorlm_cache_memcached.sorlm_cache_rbtree.sorlm_chap.sorlm_counter.sorlm_cram.sorlm_date.sorlm_detail.sorlm_dhcp.sorlm_digest.sorlm_dynamic_clients.sorlm_eap.sorlm_eap_fast.sorlm_eap_gtc.sorlm_eap_leap.sorlm_eap_md5.sorlm_eap_mschapv2.sorlm_eap_peap.sorlm_eap_pwd.sorlm_eap_sim.sorlm_eap_tls.sorlm_eap_ttls.sorlm_exec.sorlm_expiration.sorlm_expr.sorlm_files.sorlm_ippool.sorlm_linelog.sorlm_logintime.sorlm_mschap.sorlm_otp.sorlm_pam.sorlm_pap.sorlm_passwd.sorlm_preprocess.sorlm_radutmp.sorlm_realm.sorlm_replicate.sorlm_soh.sorlm_sometimes.sorlm_sql.sorlm_sql_freetds.sorlm_sql_null.sorlm_sql_unixodbc.sorlm_sqlcounter.sorlm_sqlippool.sorlm_test.sorlm_unix.sorlm_unpack.sorlm_utf8.sorlm_wimax.sorlm_yubikey.socheckradraddebugradiusdradminradrelayrcradiusdfreeradius-serverCREDITSChangeLogfreeradiusdictionarydictionary.3comdictionary.3gppdictionary.3gpp2dictionary.accdictionary.acmedictionary.actelisdictionary.adtrandictionary.aerohivedictionary.airespacedictionary.alcateldictionary.alcatel-lucent.aaadictionary.alcatel.esamdictionary.alcatel.srdictionary.alteondictionary.altigadictionary.alvariondictionary.alvarion.wimax.v2_2dictionary.apcdictionary.aptilodictionary.aptisdictionary.arbordictionary.aristadictionary.arubadictionary.ascenddictionary.ascend.illegaldictionary.asndictionary.audiocodesdictionary.avayadictionary.azairedictionary.baydictionary.bigswitchdictionary.bintecdictionary.bluecoatdictionary.boingodictionary.bristoldictionary.broadsoftdictionary.brocadedictionary.bskybdictionary.btdictionary.cablelabsdictionary.cabletrondictionary.camiantdictionary.checkpointdictionary.chillispotdictionary.ciscodictionary.cisco.asadictionary.cisco.bbsmdictionary.cisco.vpn3000dictionary.cisco.vpn5000dictionary.citrixdictionary.clavisterdictionary.cnergeedictionary.colubrisdictionary.columbia_universitydictionary.compatdictionary.compatibledictionary.cosinedictionary.dantedictionary.dellemcdictionary.dhcpdictionary.digiumdictionary.dlinkdictionary.dragonwavedictionary.efficientipdictionary.eltexdictionary.epygidictionary.equallogicdictionary.ericssondictionary.ericsson.abdictionary.ericsson.packet.core.networksdictionary.erxdictionary.extremedictionary.f5dictionary.fdxtendeddictionary.force10dictionary.fortinetdictionary.foundrydictionary.freedhcpdictionary.freeradiusdictionary.freeradius.internaldictionary.freeswitchdictionary.gandalfdictionary.garderosdictionary.gemtekdictionary.h3cdictionary.hillstonedictionary.hpdictionary.huaweidictionary.ianadictionary.ieadictionary.infineradictionary.infobloxdictionary.infonetdictionary.ipunpluggeddictionary.issannidictionary.itkdictionary.juniperdictionary.karlnetdictionary.kinetodictionary.lancomdictionary.lantronixdictionary.livingstondictionary.localwebdictionary.lucentdictionary.manzaradictionary.meinbergdictionary.merakidictionary.meritdictionary.merudictionary.microsemidictionary.microsoftdictionary.mikrotikdictionary.mimosadictionary.motoroladictionary.motorola.illegaldictionary.motorola.wimaxdictionary.navinidictionary.netdictionary.netscreendictionary.networkphysicsdictionary.nexansdictionary.nokiadictionary.nokia.conflictdictionary.nomadixdictionary.norteldictionary.ntuadictionary.openserdictionary.packeteerdictionary.paloaltodictionary.pattondictionary.perledictionary.pfsensedictionary.pica8dictionary.propeldictionary.prosoftdictionary.proximdictionary.purewavedictionary.quiconnectdictionary.quintumdictionary.rcntecdictionary.redcreekdictionary.rfc2865dictionary.rfc2866dictionary.rfc2867dictionary.rfc2868dictionary.rfc2869dictionary.rfc3162dictionary.rfc3576dictionary.rfc3580dictionary.rfc4072dictionary.rfc4372dictionary.rfc4603dictionary.rfc4675dictionary.rfc4679dictionary.rfc4818dictionary.rfc4849dictionary.rfc5090dictionary.rfc5176dictionary.rfc5447dictionary.rfc5580dictionary.rfc5607dictionary.rfc5904dictionary.rfc6519dictionary.rfc6572dictionary.rfc6677dictionary.rfc6911dictionary.rfc6929dictionary.rfc6930dictionary.rfc7055dictionary.rfc7155dictionary.rfc7268dictionary.rfc7499dictionary.rfc7930dictionary.rfc8045dictionary.rfc8559dictionary.riverbeddictionary.riverstonedictionary.roaringpenguindictionary.ruckusdictionary.ruggedcomdictionary.sangomadictionary.sgdictionary.shastadictionary.shivadictionary.siemensdictionary.slipstreamdictionary.sofawaredictionary.softbankdictionary.sonicwalldictionary.springtidedictionary.starentdictionary.starent.vsa1dictionary.surfnetdictionary.symboldictionary.t_systems_novadictionary.telebitdictionary.telkomdictionary.terenadictionary.trapezedictionary.travelpingdictionary.tripplitedictionary.troposdictionary.ukernadictionary.unixdictionary.usrdictionary.usr.illegaldictionary.utstarcomdictionary.valemountdictionary.vasexpertsdictionary.verizondictionary.versanetdictionary.vqpdictionary.walabidictionary.waveriderdictionary.wichorusdictionary.wifialliancedictionary.wimaxdictionary.wimax.alvariondictionary.wimax.wichorusdictionary.wisprdictionary.xediadictionary.xylandictionary.yubicodictionary.zeusdictionary.ztedictionary.zyxelfreeradius-serverCOPYRIGHTLICENSEcheckrad.5.gzclients.conf.5.gzdictionary.5.gzradiusd.conf.5.gzradrelay.conf.5.gzrlm_always.5.gzrlm_attr_filter.5.gzrlm_chap.5.gzrlm_counter.5.gzrlm_detail.5.gzrlm_digest.5.gzrlm_expr.5.gzrlm_files.5.gzrlm_idn.5.gzrlm_mschap.5.gzrlm_pap.5.gzrlm_passwd.5.gzrlm_realm.5.gzrlm_sql.5.gzrlm_unix.5.gzunlang.5.gzusers.5.gzradcrypt.8.gzraddebug.8.gzradiusd.8.gzradmin.8.gzradrelay.8.gzradsniff.8.gzradsqlrelay.8.gzrlm_ippool_tool.8.gzradiusdradiusradacctradius.logradutmp/etc/logrotate.d//etc/pam.d//etc//etc/raddb//etc/raddb/certs//etc/raddb/mods-available//etc/raddb/mods-config//etc/raddb/mods-config/attr_filter//etc/raddb/mods-config/files//etc/raddb/mods-config/preprocess//etc/raddb/mods-config/sql//etc/raddb/mods-config/sql/ippool-dhcp//etc/raddb/mods-config/sql/ippool-dhcp/mysql//etc/raddb/mods-config/sql/ippool-dhcp/sqlite//etc/raddb/mods-config/sql/ippool//etc/raddb/mods-config/sql/ippool/postgresql//etc/raddb/mods-config/sql/moonshot-targeted-ids//etc/raddb/mods-config/sql/moonshot-targeted-ids/mysql//etc/raddb/mods-config/sql/moonshot-targeted-ids/postgresql//etc/raddb/mods-config/sql/moonshot-targeted-ids/sqlite//etc/raddb/mods-config/unbound//etc/raddb/mods-enabled//etc/raddb/policy.d//etc/raddb/sites-available//etc/raddb/sites-enabled//run//usr/lib/systemd/system//usr/lib/tmpfiles.d//usr/lib64//usr/lib64/freeradius//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/freeradius-server//usr/share//usr/share/freeradius//usr/share/licenses//usr/share/licenses/freeradius-server//usr/share/man/man5//usr/share/man/man8//var/lib//var/log//var/log/radius/-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.suse.de/SUSE:Maintenance:27107/SUSE_SLE-15-SP2_Update/ea436a6cecae00bf250af9f8b03f03e5-freeradius-server.SUSE_SLE-15-SP2_Updatedrpmxz5x86_64-suse-linux  !"#$%&'()*+,-./0123456789:;<=>?@?AABBBBBBBBBBBBBCBBBBBBBBBBBBBBBBDDASCII textdirectorymakefile script, ASCII textPOSIX shell script, ASCII text executableUTF-8 Unicode textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=5e3856e2389eff2ad9bb8d8af59741a54d1119ff, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9797d6fdc42d9fbf98e17f87253fed30c7804247, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=2055f7ac163ef3c69a6281722cefb62ddc37658d, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=b39fad827a25441a5dadb8cf6308140047c3747e, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=f9a12303b33e60ad0b615e9347dcff6b5cbc4c45, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=ecbed8780e4c476f2d11230383f8284bae9af202, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=1a7dab1b5e2ef844222106417aead9bd787dfd12, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=a289dd229903c0396bb549215a5223061d1fea16, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d6a9c2ed4a212bda1e808fa62194d0a36068c62a, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=5ec96c8269528bb1bd7b0c00a1c9906edb7a9921, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=2194285039db13f922e8a2eccfd83f959bedda3f, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=eac19ea37b7eebf1930260c48cc5cbc537e5f27a, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=2432cf76e130d88364701ed27314afe019fb5b8e, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d6ea631684e8df86e5ef341f43169a4cb5136592, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4fcabb205f953203e5722596482d3aec453dd686, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=6fe7737d483124a03927e6690786eae705b8dabb, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=ef843186a89aee1504bcc0b37273d6d3b6e6bb49, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=3edd88e905d6efd8d0eb1fecef012c4347f1914c, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=c854464266b88534ace71d5bccb22686592b22db, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9b1a6d0ff2f680fc33c045ce7cb5820aecf975c5, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4831cfb89a39559ba0be80ac67304e6585634cef, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9d18e7717572fc2da0d09b3d037bd09e6a098515, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d30d24cbf2c5fe8bbbbaa3a649a9788e105a05d1, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=bb7361cbeac4b221a028785f8f0bc06981a376b8, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=a7a7fdfe47625939213fbe22e46846af4c06ca48, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4074cb4482f49c69fd60816570ba9dbf184127ea, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=1ed90b7e133547e05ffcf20012a41f0815a8b9f3, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d6da9099c9e785591e3a815d625d328f7b780ce2, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9a54881d98692801ad89f9c5f097921e8de87ef1, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=5805b6f094dfc376f5b67d45c7f169ba9cb17eeb, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=b16bfe2ccb12846c8d73decf02a78d4bd86a9d6f, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=36d57ae0265c031d6eaa5838fd6d9563cea2797f, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=716698a5e36394988e099fefdf3d65b30ca50074, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=048a5948aad0436b503740645a725bc1453114a6, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=ef08bd5d36d9d8a5aa25c05c98d364385761bbe8, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=dbdf2f1180b4e8d002ae8e644fd535fbea96764a, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=e96d2a243add1d18ea8c990995d236b5abc12df0, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=54bbd7baf2d9be31c44c33e13250925b4f8171df, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=63ddeb224350dd7994c913e1cb6071183020e49c, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=234c9f2f289c48dd398d029e40d96f52efe162df, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=c8d57f03d5ff5f9395e1e5dabb0f8be7003b8993, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0cd5b80745a31b670106c7a33cc41b64e061916d, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=29ee3bcd6be78c80bbc9a4513d6abdf27ba680e3, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=5e846cd01a37746cb270cab7aa89b51ac9a72f8a, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=1caf012d327ddbb9a0060c7bde328bbe809b7d31, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=6629f33345764aa14d50d1c8edb45ceb98f5c49f, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=1bd531dbe23845d8c64d434556b580219a9a41a1, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=da4ca98cbcc9b5879b65c48451b89aee79d11181, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=dc3b8372099e9b6a764395d0d28ad788d017580f, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0053276cbc72c6bc527eb9b52819754f10d89988, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4b2fa7874a78c88d742a544c2a50bc57c3c26318, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=77b370ad0dbe50e796f0a611ad495b9886274a70, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=c14028791c992889fb44e7a0fb3d2c1445c898e1, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=3f3ce8f3c62e407b8c6c34817ce33495afc91883, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=34293bdf24ef0ef2e192ff1eb4bcdfe86a399847, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d76e8e357cb6eb1e332a3f4c241e95f563e4b8ae, strippedPerl script text executableELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=0cc7ec18bcf38ce69682dbdf8cc16f34696599b0, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=9a367e826c6c9a48831a201bec545fe44d3c5c93, for GNU/Linux 3.2.0, strippedAlgol 68 source, ASCII texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)troff or preprocessor input, UTF-8 Unicode text (gzip compressed data, max compression, from Unix)empty  #)-04:?CIOSW\`fkqtz}  RR RR R RR R R R R RR RR%R RR$RRR RR R RR R%R R R$RR R RR R R RR RR R RR R R R R R RR R R RR R RR R R RR R R RR R R R RR RR R R RR RR R R RR R R RR R R R RR R RR R R R R RRR R RR RR R R RR RR R RR R R RR RR RR R R RR R RR R R R R RR R RR RR RR R R R R RR R R(R'R RR R R R&R RR R R%R RRR$RR RR RR R R RR R RR R RR R RR R RR R R R R R R R R R RR R R R RR RR R R RR RR R RR R R R R RR R R R RR R R R R RR R R R R RR R RRR R R R RRRRR#R"RR%R R R RR R RRRR!R$RRRR R%R RR R RRR$RR RRR#R"RR%R R R RR R RRRR!R$RRRR ۀzQ:logrotateutf-82daf77bf32e2686cf029cea249730dee54da5c49fe7ed4f4ba727ec5366711e1?7zXZ !t/]"k%T܍{ȳ>C9%7, [U:9]kpZt'L@sʡdw_A$TbAedq!qwwWir9ACƑGFOsHB\7Y ^n~ǯqʗb 8!z%}iemT?BX^i)6ik( <#-4hu[8L|#-m++V<{`rLxO4oj1|U[q`pn |إ2=`\pq1KV%7ҕ s`4S\‡[7@=EmcHL!} uʗ^0IxB!I{蔚ch8C-KTND_3C D$< cPLVofܷq]75~r'u ͟;?Uթ'>Y!UHN-11xDV*H QZkm&Ch1 NuӬCrќq]GTȳ\ aDX~sY&3x7hrEB|=fjrd:nÚ؂J'O}h~@ȸ `h~"Jkۨ~Z7E0%\ru,t"yD2!j`.Qѯd{,(jyu$ZIu(% 87{GW#dnd_e] pS wb3qb_FQ7ʹ#u/JE[l8@-Z+p'j#KM;SCl0MEН(5uyK<^mnuז `ϱ1ySEcǠSo4 cW?!>ԧ͗Yrh21G(lsUEz6,,G;UDͮ#}2p-.T]dR`J\l|N],6ŵ6/=tB,(Ltj_jHq~st{$%v;䷨/rP2e9{~tLK:1݅kDgQ|<8)ڥIYuL^)$~G;X[=;s\<,eytoS;H:$TiZCio@H_^dJ<ϵ$<$OŮ<+,li*%f*[yc7X6~u6 KM Rԏ8RdWn..'E3WJݞc6P hgXB53Bӫ1^kX )+G[ԷɹY.4`,z5k^dX9O'Q\RU1H]! A`A H0c}B]2gt{8]*̨ WRwe,AH0-8}ͪ^:/[!76"/KOBIټ/ߑjLloy(Ȝ˜"Ii=+ŚDUW*֝m%4TI`'r>)Rȵm0&ձ@t>tE f봼9Cz7Mc\c؄⫙G'B%f۠l_ރ(;ccƙRE~=M%NY(snF*˒˛zwxS"{Ĩ&ݮt*WmW7Y򡬞@q m.& 8iUBSzίk?d{x8FO#)?*t[!/#(q6=]Cf@˪RI Zhk70)>zr9^Z#q48pkuzvs5igBNh㒶_i j٨ D/Joa ƞEozG4DyvnXM8o_~C0?E$B@(xoWiY2U'8CL9gg%ٹDm.]p?zfxT~V*?K@IT"V76ۻGr שw6fJpp=ҜNYr a #c3 jy)ZXדּ*KLͱ B2v'kz6KS̥r(}w"bQYGn2\/9k pƭ#i0/vI'a`B`0b{,s(7 YO i{ .<S䛐'h>-="_{gk?8RXX8…;@aJa/" #d@ǥA:IM| "M$*nBNKUHћ._JoN`\/ ^$gIGǨ|׃Gziqk+EE[;O]q>^!+3u hAlT[xd]zsvQtQ6RQǸ։>%͘eV'1>](I; $;j]h)&U Ŕ#,aPG\ff85Ժd$Ee<13ȢÏy7K-x,I#fXʸL-?KY{(D 0 x3t%IcO'Ywy׉?0*BKx NG1'ϔ4Op0ρ1 w%Lz˗yN8y&mQspI%vq.AcYi9&&@/q|| 3sg\wr+E@qbKDj`YHwg1Hk"/\wE ]R|"ke*U"w!;,#|.q" Taf9쪻=Wэa~?е?5>9Ad1/}G_N6xYUdRKkTP`1."[)yZr (rmd=OUTA?N)'Qx b}hS`"Fn16*F&-/d gû#͵U$̩rKL ':N2=~ AtHt@;lΪNťof` Ga`'̠mǝW=u?0nmVh4 h1!]7_l0ŋhO:T'!144>)%еv$DrB4SwA0 \&cӝ:$#:f*%%&!Ŕ,cwNڀ{bT]"Q|qhnQ457Hbp9f&h*Bdq6ed:;lED߱9qWIEN'e48uaˁR7K+/tWWQ=ͭ,5so1ԄKq3Tc^HI16H5ZD 5 x b`l4+ *s\c$PPBLb/:Vd8c&F$r_k1m|P.hSχ^I1˩$`^2pH2y%OsE" IIfT[c(I fDz5& FR5۫a%9U̯ )w5;\K^96j;s9@l'|w=+2dqtsdr,u<1t'WU1I5:Ľyo@K`fM"T\b70DR2 J~5LEQZW3ϓD3B!l_Ap78v)~,E-?B-7/O k07dg2MG*E:یB!<`KZ2'hR&6⑌0PV:T4ƨ{n:] RۤWVۿȘ0zD#M߿+1as7`pf\eJOLeab)ɉ6ƴEN' p@_&CFϑe-SPbtI/TD@)nQTI (@%(1}uI|$,đAgli2EdF;Շ^%+]凰 G/|26a~ɲcX?BLUdDʌCkvw&Eu sE} a‰l,ihϛ5e-xf9mHI6doOZ@sЬևU}?ɚ2\sv8Fë_&ocƌQ @jߙJGM/W(xx\O=+j3ҋ'h*NIU] ձ"?f2"Z΄~%*S6 'c*O$8&&D]zD[/9h?@USR jd&?&ή~,f2rAq{޾4xU7Rp"+%- {85 iRE"EIڛњؽ?WzT: Sa]xE B9㔅pۿ.,X6d<xlYlѠji=N@ U߷|0*[8J(V΁Hf:S񻇙̥J@m@?v\zzm4}ʗ9-nUmھ[]dR7Qo:VZ婹tZ$w <2?Y%ؒ|԰'Bwma[1DM @+NUu9`-ein8o5v* o!6э!(8 VpœI=`K]"}M6Na@6pqei! @xiEh 2`Waμ52 <Ҩ%L$<Ľd6Գ5&픂Zxv7kzJ50w*02cOl8Rs2?ax=~ճ ܣQIỘm.jt;qJ3e嚈0$KZi qGW Lm< r>nkB XG]猉9'{bӑ {$D;SHʪ6\统[gv_{rj,dQ%>-_컊n*zð}4B_/Hvg&{Ƴ$ctQu^J,~1&K ׶׆ؒ*^ӿ̭1 nkD5D9U;p׳џeQzv'0fdՊ-9_IvzK%} q_sBrêRVI3߅" Bz ;Û"DOʅ͙E ,1C8fg3lh[Q6S 97֑2FURb Xq>8℧,-lβxw-nf .B,Vf`O;,TgR ICDG9*E$Ya,+[H<\cft#Լ9!+PҘAuB)AA^2'&2i:rih_f{Ht~}C)Yt@淶v$i 0.w\iH5%łVwxXG~_[tpϒ Ci򤙥9^Li ڞ(q,v ,3,Α0@ˉR08 &_z|@=}g)&'P7Gji!ey՜GW cwIМ:YiB?F7U|K$@ȧr~e)7OqF֙/pD*4،+ewd\ΑB4Rw8Ɛ68vئBBT1)+8- [VZ"B0/nl4սJkZd­X&D]CmOZ ѣÇK 2τ()X#n۱\хy1^K#"5z~8zV<1_E,) S@ ʮ2%tbޛ kO3LxzU۪U+ P9Aj@X16o w9^,'du:NW)^ Xի:/"n|2/̠IcO{*ѵxϖZyk:PwZA_|3d$1'fw'ͤEu)l!NzF*E"J:T{x4w0ƭdl ُCJ9U(R;\ISOl7! Ddl=-5rw֝{7|v |lQfw!쌎큳K |z6/{4txת'ٞQr{ >D!r;4l,Hֶұvޤl#ꉷ̶VX~1ل #](jc3S_VtهQO] D!@"Ma A;9…˯^@Qk=ڼC~28R_?Μ3\1hu⊴-P96ÄrwKl3jWSI\7aLhOׂ<C YirVQa6(}[ 2=d@cm ltUͻ ʵzK 2<ʩ?3f ̺בb v+1{tJRI~ iP#;}p֗}J0..*x] _c%ґ-M끹rBF&ʸ\gHۣ:jVXPKű)~WsYߦ+xcDyۜQ`^ܞfpjR r's%?.05ES>?}66a{M_kHʫqɃ< =KWWPMqveG rGp&O+ r7٘XؿQY7LѪLk bP?mzzz  ŏ@Ζ|jiCИ D<4P3[< ]%'2 ˉ9PcfyyPQp!@SE_zP|QٺSm"=SjmWH7ge-xNZcS,93󍽜[J%ܾ=Γr|B捷֍"\3@9!&vT?FI]CTho ;+2ǭpw֌Kmaݶxl-Z^ %!@bEl?Hj7@*1xuKyl܄#m n qf;vB73#xڰk0b^@詬x<5~US@ϗ & YNRݬ]FZȦ*FpH@culv-•U?#{'}6Wm=gX ]Db'5n>;6/+ښ%}MjANJST +u gє,k{4`ۋx V0q^g)LꮱWDzp /_DB!;=eD;u"MzB`ioKz Muܚ"aWywf"|'$6\liR 1CPJmA` $6n>y"i9Ҵ a b6[/s%) xG2L&0p'$UK0f3Ԏ4bc6|(FLQx){uLڂ )n0{ә!zϸe129yI8,AMfBexʠ)&&xaAD=QBOUzp9"av{ªN>Ξ.\h'{\svA 7)fP'ÑV'H S7f$Ld3 U\G6-U1o&NR,{ֱXvdh.kW6QXUmfĢ%̥)Kp:kGM:l!ie=RŪI T( ͻ1Vw4br\`(BAĀ<Ɍ}#Z-'>QaJ}pL9'7屴kPkA4puC2Bwؗ5p9dy / 㱎ޢ}~(*Աn4]S̼ٓ%h̕$R|)]ع#DO&7?bFJٱH2)?y)0}{7an'nX{~Mc24 ]FS4Jpmr% ճ0v ܻh<rltPfSj?̶lôN@ *y9edΗAKz .|MKrxtg h+wk ?lЫG%Ή*;;G/tP~OD7^F'K`C>fE48wЛ_io['~u.G]1'@#LMYh2k8PzF)93ش72Ԭ7bB/g(:pZ4@GXG̦V (n9_x^[Ӣu!k,V ؘz| UvE z&GI)Q3N܈Mʒ6Gj0}KeR7\xWt.;Q8@:@斤E^D`t9pBҸMG}d)y?VرNFMq? WO0.FKv(";ssBЅJxngįxݷg=ҚCkb!:IXq.D|Qua"ڐa(lsj=A{$^_/{f'?\{/I|6RTa=^3hNF_ cUQZ䙙~>vH%Vw8gC8 0 TT4 C;зԤ7kq@.`Tu<Td!HEytQ>Lb S(>B:ؽ><28*2|Sޛ]l*(ʦ'"y {J_yp06KrQv`[6|wȑ|Ld"**n\Yxf <#}HD>PBMoYⷵ Dna8X3v*T$ٿ;\3#9!*fojHjEcU skxSʗGbce%HG:|zlSc>7Ɂ:/jE؜g.w`p;i؊mШUoR(0yCiΜRo o([/;5c -[9% ku4G%ׅY`7s*zԀq.߯$5=. p ڹ԰10T<[ #ahH녧2JNJ$KS/u~ 9CaRAsnq,9yV#l~ .f <m_t;Խ{F/͑YGOAI^ޫzҨ"X)xβ(8*fv֍r_"+VGL)6tjjq$\"77kx#=G@Vd U|gIkUd7hw)<x8P-CKTfy%{y{!F^+0k@Msl^I]Q1C.GviJW_v{~]x3]-i\p%̎eݭt PHLGbCBھz?/<{瓼Ԁz Ϣ,;].~EKGq$j0xI"~=htZ*Z6&{|(\OѩDp` uB%t] 4xp3Kz6>X1qN≮ڻMNr5N9Li,>bqqijV2N>3'@g_$ =-νI`nwR U?C|L3<BP> xj)VAB(ƨ?^S.9@3qfbS~O4(ڵ1lg|j'Oxeӟi V$j_@/xI@$|OC"};?M,D; rh$D- __06ٸW2ni{7}t/#<εsg` 66Q27U3yIogX 4z>5)6F_k0$̦U \ u#Y|hAV_|72 HpwO^0-·)_4A=0 >h큦~߸S@>d8yynxcl7e{p}Ő݌-$?CqYc SԷQNHEHD!@MaJp5ofT` Sw"ؕthqIS~,V+,NSFnTHHlV6>[Sw.I@EDIC u=tP~I/4]'4آ%+<'S9?>(iU^PG8M SViVFt?JE#y~ybqԚn꙰}0ن gl)2[/޻W@yA 2lXžݿ#\Ve}RPNqƎk64g@n~@?ErS_c$R"hbjxBnhjWO+s g5S5>%TԞ8d<9.#q E*1N?W]n2$mvSrY[?a}8!FȻ]i1{.f@hjy1N7dx< Hۗњ؛|jITe=1wt83G/bAbtN ̑wkN~MFU?&"+.D-dRqXK}]{+20oݐ9 cݿY; #H}L*Ktnie4[_%;x~cWzlR4Hh*O>b U&<^@f\ɵh3C[z`iۏՀ;K*A.@sɰw7Lɂj3}w+lyl@+9FF۝*gMLicٜo];yl yĕoE2(v/U{w %0碗p#x 명ziIXHx+vЧX۴{B9j#Y{F&(L\4~& 'w8#]1;|E(Б= jjǴi ]Lo 1޿< ^8 lŀD(39qnͼxB$Vx⩎*_6c"+mͯ߄k7*rf5, cSgϝr(i} s!7VR~8%sL%Z\I?]B753}B)pKɥ ڒӋVg@9V4Zov/]+3#@Kj!Q϶7-(̖#P3Y3HJt[RɠAT<D?l%u<]ɞDqlI0Y($Tc{1ǿx0hyR#;L)Gb^Jz%Wy"^R{R #)+)uZ}Yr#爔'kQ' ]{C4Ex8{ZQa5*;rG'Q lw7Yh._e6R>' ),M0\:ՔRW 3T1᧋/}N> a0RuA5]jJo^srւv'PmiNˆXi&_qKfM3 V{kYB߱4mEIXqfSѽN : \l:;X6v0'U=9L&,8ZaHGӫH|,81t`F 輾bA1|(ZnɜSPԂ+lM&Cm?vrvq7A'Иvf ;RKxȋc| @t-#K* ~tn&-d8#l ȐTdLsi& T+ CØZ֚^EĖ PnA6J $2D̔ɘe;8 MN&s[nBr^&\ 8XޱQ; 3ˊt"9vzvR ߵ_`CoX#9y(['G$\ y@b³CTb; qK!u*p$.f4ERFgSLs\| #bmbYlrC+'@kE텚9yw|ETIµԺwPQ*Y1$_anm ոG! OB+嘒m02ܵ!havum  a TT?ke$I-s5S罌0 !d0H,YK6.ӋLe7; DVzuē$CGS XB"i!-τRbzPg,<[T@-e6 O'P^toNU)Uq7 r3f7_HiX'AEZI%:LUl"% Lϖ..6ꯍKduw 7c sa`2SBQRq,tH&1Zx!DqõXf.F]e|%ݣ ZJN3>`\y#~]QH-rH QmCܽz+H[czܿndrY!*x 8c 1԰ v) O;͗'؛ą[ &h$1*J*rX"ةD|>!}mp&}O?~Y}G:B T3vqJִr Ca΅K|ι^>#m;G? oJ,O;mo:2!!I_m\ so+(7Gܛ79ഷ Oy!ck!õe+v͈ 1Y$0r]̥E0jсb.6BHrp,qQq- sK J"r#nPobfJ* KGBflݓx!r@?d.+iqaƵa*U:B H6HmR¹/Ǹ Bb GٔAD!dHlvB 3=X"%'&,BÍ2vNPh&F͢^%PkV_/({Rx#qu8İd^?2sZJ=s:}6|{܇!ǝjۥ)`3:,d*Xʇ4q-r"~^αNjP_~1#nJz6zPm٧iPIsZm'KH+"]ɨV܁"(N6 ۊ`57@vPZ{)y/{ E:,CisE>ߍ|IBlbA2*Դ)#TSe&ƞpY\"sںKI:2^Սb:WYPgZj֫ 2N{w׾۫cruК_!ɅOo GJt|45T\wL'qնT'c1@Sˎ'ɳ 2@4|]hoQԏdͪYL~r *4uoҨ{Wps'; 4 Ml̨X҆N(g> h%ZO$9u\f-]F~J/AJ6k'Xx_HD o71k~NH(!B/nibeu-i*R)d몯K%pT-pCܼH[Xҧn % /ϧ#j&2Z()+fEw=gqmw8'Xo}5Y='qK \xyŸ!͠BW2f^@cV OӉDnӱW<(shDX"%zG\y/J,ɧB$Uʀw)Ϲu+G~~Qdig蔮h٭1 ^m89mb9_2CXg> f5B N *@)q *rfjx![IN= w1Vi/KqpV(`%,67Ƈd'@Z u4 ݘE"[d@*1,@hT cqh]x r㗟E"ix|pIl Išh4AzpٵSCК&g91Hz!D ~Yov4|GWAX)uՂUy&qAFϭ_ Lđn ˠsЄA25dZW#]O *8l3. `tAf [LzfFTLl= f <k<`58`XD'MmUʨT=[_K.6,.qh}:7 034 “cם/p3"!@Q.,=_ǛaKCION \'ÆF*?X%en0޴lnEy\"FඒX#rp45՚'T׮!Q&~\@uOy|:y\&&56h ; QEA܊v~6 IT-zÕs.Zp 7f -aܮcv*/J64M*Ta=-|^FƝ`NN->HsEA(4}J1W&FZi %0 (򪣱uMS5 cq[0D^ԡ :+_3; xIN?6_*̛j٥%֒'"D? ;=UQLӤղ+mE/ "ލ8:`L5}iqK ]|"d @A Yo/ ~;oJfbpQpHQpMGY}, Zu*ߔ&~cрU}OCpΔJa# ;~KDD4lܐX.} J<#oJth+Jfr⁻cseo1ژ0NvJ3 Ai)nLӆQћ!*vyZL,-j2HۥIzqXgohO\YsAlf!nt7In1N"3 0}XL|-Jip%\K#/rA$F&zި.<CM-] dW0Æ dWj/,9[YX?YTZ6@nB, ^U`z>%L]Kpr%.u mQ]# &ZSy٤8ۜM@gO8ҹz]~"ySq5Y$9uafGgNKee6c>f >~WL^ForB4}Cgi@b!xBn*LgabQiu>F#;ڛeD$1l 3_6L9&*NyN}uv"ﷁ9bz›C7u &NInB>J*_,U ^asSe ~n}U eu'$IM?Wh +@Bdkɍzs܉,_TtbT̬ݲљξzի,Q\(B?F.p`Vp֪-O7" !2uF1:C $a00'|CGًv$:JQ^(Sz듹ӑ=GѰoڔZ KRL]lj@ۚkvQ\Lyr6&t"E񯱷ML5k~%D?M6˺] ~;8b$6&Bo~Amz/0a1@P\ɴn#<3}az^e]@f / 0^$iuaFAkݬdV4&8܄ވH.5 fE;x (eJj;`<>B2M#pZ \:Je9m8|G}OYHD]jQȭ=\]UD;^nfFBqKpy00/9[oתي>݋ẘ9lG%Ţ:j|1B2d~ P=9W<PM 2EyJ9Xsgr'iUPHVLMC3~Z2*5/ ծp>X*>?V&78HsȌ<؇µu. @~7eK66FbsDVLu$0ޓiAP!aE;le2vTO{F]ZrbmŝH'ْ>ϔ8FAV۹-YÀccEFB[*l+N^80}6iE@A-g[hPߩu? qʶUQ젌zؘnh]OLʽ!Xe:=G=^Uk0Xa5M a-/j#hڕУp7C~tiۈ9G gM$t`$2FUPϚ.l&cX$N&6@~b}iS?ȬGp<{TK2\C69<;Y$h Nl㋒dNSDsCp`q5f) ~'£Rx7͟F6i^Р3Vj0W4%q"m7kTPU烩8s"/!jx( ^) H:;" e4)f5yj(2X(k~)(J*2RYO~Ng2 ez|οpmAgl'e[ ]JGiaPy(\s90ѻñzxdmPZsM]X)]}V2?b|'8UZcNԀtS1^Bu&ܫhX(<[ꜷ R_stPY"[O VN,-yŗj DAtjSw܃~EJp5g<^iivoMn:%{ME'w7 D˱l yJ>ٍ`8]WchH>B&Pڴ91T.'V\Tr&0V ZjS%($oQ'F$7U&ye-lM[WyF6r7`]sa|ŀ|L遪#R`yyo9Z+Z<3\agy{n>x"AA[ 9'+$/$R6Z[2)e]9C%W=5Dt*Wd $/m9o/ įm7sxj1jF|O+fBV3py]LœǾ `\1c+B5[^]M=@G[a&HX/lIs2Pq#F>Epb2FWr|-hܺ=B-p l+SALJ营lZW$:`L; sO%"=lMI?m C4'A cU9?}Kyӡ;V%`ڥIA;y(."<`HR)hY"~h}wA;ĶB`'(l$?%ܔ\|r]qhW\+"F"xBhF?{~:wM uϗ%S C@p59_۫Gc _q)VKՔ=wS욕fSmCRDQn5WM¾G6fA5Q2a4*x`(CBOpyp FGڝm]^vg-ĉ'YY)BR6icI7p.a GC Fp[Y޺˯9tSbx|E/ͽٞuL.qn5:JQ6~1O"$*jmiYJԨԿ4Y 7u/ϋd $v'8p΂kv}|ш G4] 1.Z%[Aj|=RfY3 R)HDG }װŚ3ƐX|(+p|آՖX jGd>k".߲ߔ-ّ5hqd|(I2J]<\;oSkoY93 o{o,ϨD?"AStRBL#l|ƞynkU*فD_O$M_kI'YMcxUM}t.ĂM3I4PރLLY4tv?vS%d` zcZ !P,-ػ:Xɫh`<oG1,D{I!/ a8B~9b}KnsAFy)t=_\U~P}TLېiMu01fm-+&!EK[2Hsgo8~7`2E֊LGɁ IĕR'x-$;oNRl␓H&I}C[2jWvmp[ۘQ;{⏗qH8[TNYqhW= 9JoSJ!FιZ21Q9*߅&SRG«]MK`8`\N$X`K4Pf~5{!):^Bwe()]'Trpœ(6L_5y]|yN3a`$'o 8oׅLjL?'|!A'4ic&b<zVy,IY-tnp %1]aVtBOjJ <'.|lU5V(*y%F ͆⦱s 5i,6+Dh/Un*q]9E7ŏC1) T]4'sDoRflE[}%_n~\aru;IBtTK?h &nREVy1R I-窑xG:gl'[рP b1򻘡-otlIJDſX2A]Zv*o?E1O RJpQI_/5 *_./zG(@\!K^X,2cP\a8S 56gsAPL=bpq>6|(dti8!.6֤Focp&wDidƩ%$-pʐGX3S,헏q>Eê;fHVX'o!XPʍ L2]}H`Òja b\⭚ޒĻgU+g k4*!-JYfq_An;Ax$kh{@]怠נ;:$A[;N  \$^ rS4$ӓ2nd¥rj:$O2]*lmfz6X5Β&?Iї.y>s$vҝk'Yh$`c<p,#$ӾtL_cBJ׺r鲜H.n BF.&b`o7yw:e֥AP 2r'qnu &mPo.-BOCϘaqKEIb?BA:iS,̜{vLBjݬ#*AtJ/ 맬4g:ß\\^N$"oS"n0Jݓ\ h6vd{ηi 9L讹:Yj”{f8U?./[N[A#@}`7P2=%q(~A%M Oa/ANrSv2}KDSI*^oRKr٥?] :W7R盃=/r#X O$vWI&"X )LIg^Xifؙa]-#|e; Eǩ < 1Vi3eӏ _@v+^|&zMրOYEk<HE9 <^N4(B*o_~'gS,p6)Mr&|:WIm1jOE)t{M&[b&EE7 M0y]lg">yu-?4u\\&)CDG l"%- GAATb}ho`4O#yuQb=j3` Zh`5"5!ty R C\׃d%.ءPZ̛[[T'Ҽ`lɭYD+&sqUX#eiA:k2P"[cmr^_g ;*[{d|=:̇5@Rp>_t+WG߹"_"dV9D)yHb93}/J[|v4ﲑ5_/NU7Os0Y3S-x  9}*x Yʷ"tMÀFXyrQUzVO r_O݂݄v2GNjp"ڟo5&ۣH dZpCy{+>e( 욡s<(z-:վ0< dS&`QuR7xȪC-*^+Fhdc֑d+ 0z2+0aaB޻H9X]kgWY8?*BZGkYk6MP>!JmrP..XK^}_41 jk*g[{uxUx5׫͞Q!g^ֿ LIʑ{Fupi<3ޘo@sJy_&JGHF-s 0WTepp$<F;\0lٝ-uHN<d[/q_\3InaH pIlMQ⩔6$Yk)Y˕s<7v,$mG-j6Ff3tI<`R@ wY"˨ Et6o ٬@g@vPA挠`o)(wNv V`F - iFAwIVZVFwN⽤ a5Dpt*+ |g/a> ` 0D^wrΡ;  va3Z꼲~sGfw3JdvRf=w6ԥtW*x^mZ;نMe@V&{kAO<:b5?#!v alhQ;@Ő3:ZDQ"*KPb"aStp H~kxH{ jǩ~*c`‚(| ^j="E8P~T|ʓJN$Qe!5Hr2*5$7 %C`|i_i{?m JAXCaGᤄSweY^ R=U4/%E'I'Xldy9EzS WB,>Cӱ~}dX:snmmsPw $otvhBe$ZR~ Y⑦T 9`En[e8WfV$x K8g|˺A`B\1H xuj#k+U}a /l6GukF9[ڴY2@E Gķ%w7fsN b}WU7x IqĐ` /Rئk.->I`ռM%S]L;1Q2ZZbMEWۀ豭9SkJC$XQ*YJ ?.KP8.w" lC{*`1>ZJ]NEK\5 LzxS*gF㌔V&w8v<ݑKGX@>au7cj _hfXKQh[4]`d=opcg]x7Fma|SS9Fs1qan98u8hsQu5~Oed$Qt4_*yxפnP a\9FFhDN#9k+~a;2il$mZ"ཚ>,J@rCQ7Ik9xδtc 6=0ۭo#s YY};Ouz S;_.Iϗ)A)LVn8exSs9GOq`ʑkKm`,0H^:Gy)kT²P6S6qUns׷[iahPWfצfMxcjFfn{'j;{(Dq?wX邶8Z1LW_SDET2g"Agh!KA HFbe)8 .MJ5C/Ȅ$ގ{?UZLrYEJWe4)]ԣFyJZ Yδ촥u+j24 # 6gAT#!a23Ҝ_$v%6CdQX4XcQ+<Pn7 1!ۜv =>AEXTI-' lI†~~=;]0yiҍOϨ HTSO!e1f:0,(%ۀ)9H-יU!|/x 8|2;e>ޯpfUj!q0S)k˝/^x#g:Nxv.d~\cJBKSVs2"!~ZY@Z%=67?]}L1J.(ߐZHAc rMWsW`vahL1*ȋM&]pJ H=.ęA][SY5%x2Aa[#?% hZlZE7G.'_XruӢq@BQ|@5oaCyR!c:#BIl%[ی7 5_r4SôJ[zwU , ՆٟwhB6`\KϗwznK@ /.ÔW3营H^y쟌`5_e׼nȿM62@9X6UYD۽P"54FԀn[X^e.\q}nMqT6Ce*j@&-\ fџ׺MkZ1D3#w7La\WV p $LpU7d0Npfl7BU2D ͚+TVaT>d:6EJ]9s :O3kDi"8/v'IfZ橾7waώ)^CCm`LC-[ ( Q]Q+EnݛJ)W7n˚hIÇ|MY>s9ahZc`}ac3t5YΑ @ɮH~) s%ABg5Cq;қ.P"yDq8>~472:qй׊ PQ0߭ϢZ.( u0O;nj̝ T0*vwonjpIA 4 08H}-M;03WԳe$h$'hL/쁂3_MB*~3z i@OD17fj wUR} !]aF:,,,J0pKf}-`- 8?հ G_nL:K 29d`iԟ8"bAJf:t l+A*ǒtIn^%>BҁPչLq+T:Y~SE'ك`[@܎|ێнNpaIo?lj+-umO9rX<Ȇ˾zx{s<ڴ]킫݉GEs%PKiͽEn2vs#k,$؍̼ʠjT9"H$](?czПPЛc_nDx cw*]zYy$we <eѰշp.dX񪜆): gI`.}ohN ]𧟂M?:P{qx"N=q77]+@hʲWy)\%b=ky1($fZ]O< }wI.(G/zT|?~"cqX;%L.P͇W2Ik vJV?! HNw1Q5%0 pFYożuLIE@ %ڊ5 9 1W6 abEU#M#c 07ylya?Nؑ? Q QZu&;c_EdLPNzISc`E"I($%Ɲؤ+I[{/LP߇r~h,V3qPKWck%NX::~r-Mw(]{,Mnd.߾ n3țLV)}/y t#ʲdBaYz+-R~w0 c`TuHm]n Wm 1*/AĤ;KEw lZJdRf%1έ k yLAor!03z(%L#h' xW'6tumFn]ޤ)gFYmڂuݩBP &T QtE/6.roߑX:zA)W$1 B*9_I5񴫞mdϼZ $QGkAWIe+y^ɜ[(LڋK8RdlBSyCS>wFp67zE\3!A6|ۻD# <}hPt|WQƧoHdBFY4k-Xz&'pZ49#QĀŤ )IeL>0x9G:^hF yVũ~g}^jMbhL I 4Bʽ{7p9TQȊcҳ ¨4|ax^!wC-|SAw;@sS)6,Ӝm5ʂUǶy*ZAeͺiTJ#LCqH)7HPc~k!Οv.FI"-~[?*tijy#kdV GΨU?߶5(2dkWγ2S87BflbLQ=37eaK5pn)Loz.mE4S7M*x-+ֽ$=SI%=p 2Rc') iU[2qShni- pCa7:S w{g%y,U5m3[5_o|mmR$BɖgHd_DCERWZ>G!S*@oloTaKXi#۫]Ll-IawB2)+Յ`3a/(euzSyw r6E?l>rxU|"N;2{<ȳk*Uy2@XXMR["߃89++5( tЪ?]R/"NiA?/3X3t8؟iE:;<ޟ/9at[~+-a^ɹAt{z;,GtS,l_"'kv\M@(A2@j9C=#6ÏrJ@ěL}r%,e޻}ݹff ؖtAҶio1b+VP8+ҥ&= CDH0Ľd?^QJT"0w =Ngw z'>'}ʽpEe(BjDwMd `Oj>WMY)kr: !KKL:}":^VzҟTo5{K=CWz l3^.!rmY/׫ϵq^^NW xZuY.f+,/]11J#՟I1b`D6ۂr//a;Z b6ΡrMvr\h s&K`/ā GrR2vFEHH 1]I,]C_8y? C{GĊ d?GVÈ \^FAc@P޵Feۅo)(nZ _(t]S𙀖bdGkHxn~}&H* "PSKf}[@Xmln|`;1JD]#c m'G9}M6u=Ŭ7y JHvkk;|l$`ΤcdzE&Ւ> VPxj۰@ m} m5x Z4 ~"dO &O0/^|/o'qNޕ$SE*+r+ ;ŵy̒DI͜-?jTʑC 3Hs &*#7Gy<[\/F(zv>3CyMOsZهk>< F'e7kg~Cl?!5LTLʌj{JaѪV W$$u侼>F(Uf$-3~+ٙGmoՈXt ُ;Z‡Is5[38V H$2W'hEU0[pƏ'? ek ()_3Li934?_+ңa3@jnm1\Z r~2ib1M'3a_bn73A<^ROɇt[HVh%N->@:4fDo9h~M6PB]Dw8Q82ܓiyy7%Fo&$3"X+&h:0?Ms3 A5DoK. $^ʷ~øhIw1x(hw XC:M{b{,Ѭ>;0)t6Hj|D{ҠUh4Օy#e|L;`|CpMwŲ\L?HY5EF qg̣-l9,[8Gls|φ!t2 wB2~3&qB_%l+1&ucM߷+ rЬDˊ YbŅ(0"J=оvsO5EKz~dkJZb*bbOB͂\c_`vJם .ƕ2`: 8Îy}XqwI>H94R5H8!2AÒY?rA,=U'6L.k*=;nxLR(ff21sƲD_Brө4Rt.'}rJAܟ҂}X^GBHu!KЎmquu{jxv(B{2- z+wodz1dfPiZvdd2IupPG;7+*~S]/}‚س/~7kV 8:z?\~0L}mi %#M;3h>f"!KICuew'LJ\_HID o11v9z\~yqK,l8feWZl$Ieӽ ȏ^ٮSuޫxQȾU48yp0\T4]S;Og؈IԀl=2[V7DBPm,]GU%[),h ,C]jd%٭ 0h^O;\*ދ*·çw5H9'捈ʂȭAH"h1l](( |o rfe76H n66Gm* hved_PJXFhJԭE݅(fNLŋלYcdcs[%΋yF8nWJ31Юlc^noxv|V]A(\鵥*km#\]Av.I;*.^Hx׾q#0;[\+DKԒ:t{=JPY1JbWS9?r;',rR^#Zs,81R,&l^oJUqioa֤(dF)KS8LumtGxYիڹ5(Y\,!`u7]ϜSY78ܘ6DŽ.fNێ鼰Y30Bh1\Mssi/$|m]{XcHL.u`w)xz7I%-;&bj?V5 RŦ6j^UH+o Dj38‡p$|٬-=kmk+ٿLDU)r3cHo7gAKuVR Ds;3ۡ 5i^շ6pIMz*7R2T8J M?M:!Y]4io/zIbuU LL2ɤȞSe2oOjm pk}w Okht5(=9na'MϺ.̟NY}M( A(SVl+ʏkG Z0%Ƕc#IP.O`?uVQZlj">Z ,='+Lg'75I,<CX}G4߳COMv/C}¨`FjLnSkzlǽ Sq`9Q MQ$q#>7Vbed 󼇒I*?O_L52/ޔD;lZ9T 6ķ ι蚬jBam\K +HQ upI嘑U| T% Qa6 s0+P/!m8 &}Tt16'' c|Eip(/m a'*,BuogNyi|F2P%cncx1H.ßh rK@Ž@8|9c(S3S9q b@G2wKYd?9I Xǫ>e1*jܔ=W%sVlCg Ht=av¢s A}Bq*xg&E-i}䱼sp$*\sM MY-+u!bF]jE 60mx]4 95ru,pi1:QIFNɓ$BhN?wi![|j'yg[-U7<-mi*61 Dx8 V]{}#xfʨYڹ BxW{X]ʹV) ӊ{}G#($}6hE9V<܎jZKgT;ݴ`%y0o]8-b*Q 93>q CY}d'W] 0)v5u 9,t`vƝ%^=XaÅ=);M~*'ع|OWWL~.k$` ֮j {f'ߘCMccTsq1XO[Lkx* u^>$hA(ɕוR(K(Ψ,|ϧR '&AC7:d|O a2w{%#; Xt[]5ðƭ X|4moiZ[HޏI?rߩ>q<ׯ `%b>xsQ`6oO9̕o";ttht׀w(TC6E4+V5NFυ0*VGʩц"d2G7t0ނ!$Sl߄ xjx+hڋN:0xs2U=m/18p r~B/&"]Sn0W!щigs#.&VbˢN^~g+;syB٠-ũ)`kt]%\ĂʒnN}}fOapyjwt[D{ʡ.7P$L.>;'dHs#_5pϬkeC00:|mQOCI!ȿ,eJ2UgU4{ >41xin %.%_JC]GY(#Ay}Fx8ZOQ)s1J8XL'>zmx=8ʝe[]-1q;:'p;HwwV+B5^!KNn|s)3ߺG*9cwwv?OzD$th͟3Ozo#\Jw#eG2Of.UE@SFP]!O~6c>w&Kk4Z:pl]ױ/<_2R׺QFeWӦuG.inWiiBXK%$ج"?Ӆ`iu+10.Yp"j[4VwѕbT"h`%f}ժz)?:d*ܪrM!^-ߤ( XZ+Z f5UC]͙GT&RZ99՛sma컊qL7 Уb7/@ߴXQ%J"c0nw6iq|[cbv>ir kN!_H_',vTϓ&&<_=*4,՟4#u s[wrfF6$=#2,,ǏmÉ[;Pc\ܢ?"Ne@ or^i|Cc4i7ruxǶBԼ8gP+#KD2Ȳ|A4"ymZ~k5 Mh (QaJJkn@. PoM+3(E42%Je巕WOZڢUBkQҖ#r4@EAb`LM^:\G8Cc NIRŽS4ƀMC=A u.ϛ'<\6}_t-,pzRƍ4F-[zaIr(32kT^滢z Lr,BOMx]fٲ!ZF\§NcS6`f 5eI(N7轖@E4g4d&wuٵw{XȢ5>G a#.$:A,0TT؍mc#;2 #P_.NA8&GLK*4,ֲC5O-N$K~A#Vs RـvHk[WG"t{Aȼ`%lP(p_e17I'UbwvDJ<j/"ζj_mkNS<$l2ӽ' m`0~2V!T O#>)S 嶑>3xޖ`jT6 ]RQ.e$Wdxcy؝΍vté+J6fB>y6JB_D*+PbқV\*{2Ҭ]Ks'a2y+LHtdEȼ>iCmp}+mG© SXpaEϽ|nO `5uEh.G// SDVe>݉e^sd1$Wn`ʩO?}/xC ҼE! jC0z飹T̚՛F:mor\8fv4dך)r,`=.˿zh2\OM qBP SVGP! ZW6 N(A H Ȋ|b%6Ĉ=ո(l(>s)%Q>DցR1؄m\#+jD9Wl=ghQ?0BL ϱ\bk3`@ #7|Gمf^fq ߼/~0¡f@" @p>tKMK6 ~ (:SZE*(&bJ>"_[Fi|',`P*i5z{6(I+  )E[?ėrHw6uw LJvYʢq"P1yoY[=pC遀s ol /!I+XPmL+T-Pf*rREu#Y W͇G0}SﱏW"jtAHrcr\iQƞՋ{އ.3/YzE6#;Yq@݀@W& o'?<-wk21M mt\ )vz#@ޣH:b %S%ͧQ(++QPb5` }mP i1KPHl9Ax?yݛIyMěNKƃu舯%'-5`5!t ;ܞ?:gie1*[Arqِ =KǦT=kNzȹ"G* ޱ𕱁P\}(jg=&\MY D?ȞH%ܡͳ)buL=h4v+,|[&QIjKvpᄙv0^Qe=1drUwm:JU R~ma̓COqEz`Z|h)EQ~suK*а9ήdmE)G YhX ' < Xm5:g1_Bl88hG@zq~@y55AaK FX?r+m PT8el5Kf8k8.-0 2!+\pp}PJqJev:k M&*: U< D;ɞeYUZ|zTv2iU1o!C`C$40y(DIԤe;v5i'r{*`UvTLYt̸:6¹dmxP[X J=Onzp{[Aطӝ%yj*n]E!a|ۜ B|+<.zP ި F]IPM {sg+=s lT=<jFB8cnq{l+Ϡ']G_Sg!v[K-4 KE>֗.AOgXlbḦ́0#23xZUM_5d)RI!Rqvs|(MPnd<%yD`" dVE޽d0t1Ti;5Mt[sɑ_Ve75 1 "dfXӴ(?Clq|l?亟֛MGγ8\mV+?= a= HI*H TÛ"CxL: 'L1='EV(]`NP.ҹR{طiWH`LTv|KAu|ޟm>r̥`;^w'S /b/4sF6zM _wB7wWl%>F0-aJaaUOC$Zv`Of A6j/ Ǔ%mu >B~06%%Kϕ7ݴ#Z@L(Qb( 1Wmd%ߴ6cnʨǩ^>{?+ہc`p"x,bIAVP,_F61v>ǬWT$UcY8d Uw ?'Id?P6DEDB]kI> ytE=qMxlj˼て/(~Rbhܻx٢kUDhSu-:FE^:k :RAj#PJrpܝ ۘ3Fewn Q9 2g0(~O逸Wu4\"u䜐z9ĸNpn*gqpn"ڀjB|Jr$n^e:w#͂bDKg]>1y1phqgOl13xe?R9_>( 7ӹRx$߽ #*- ROC7tNxU9۴xU5W/;U{C^?8bs:f9g~V۩U"}h<kۀ}$ΉVH*X5M+u"}r#IEѓ3۩ikz[t~AZA`y*u !xvtq߁MrI o Y`Q{YO2C8$,ivz_yOȄif*!ƕy ߬) xQܭg,6m+)+e@H}9UbkX@ S9%" \$ՙF6*HTet[cحx*%_ P>%W>^cN~/l$Ui6ߌT\bA@y}|S[Ǣ2R _ͶCu coXcIB_ppD(o B,R22Xn)*k$B&*Z5nMSbN<WGxVAad J@}O)͏P8F N_XD~tx`rK6^ҹ _#”Ipㄏ8|rM\NNu`oܬ9@_!, Y =CvgҮVc'CF6kaoKxJ3<`1eP^`u/F~nZD,\f0kQ:"/jȬɮqD[!}<-_dƒԊICGJl]EF~tJ1ٖxToQ\,Q*dHGIKvE&MYWlw@~|Nl߯ވX;6䐎{F,S9 1;~?`;xw 1`hJUo]{8iŘ 1pǜGmT,_ɧH`#inv@4 m7?z2"&s1lIzޑfyXUr#V`+™^ d9*) 76PE!l߰`_hs;kG26F&f%\:mzGV&P(yw.IXTBVC粳Q/R1V Wƪ@}# nbG|{,7kYRJ{hq RE.5\s>t.[B`Qv,< BEhd#';WtEtpwk V4U-(; ,~dQp E Mgݓ읾ȳÛyc=- 4[rG\skNzqT Xռ#ݻjӻhPTjleTަ q3ƃ4Y{"C'Lb8]cڙNs$pTD$?k0&"kE,wÎTLJ9 9))TzpIhhQ՝lY;]!8Vsn+xU^HwyFz~ =ÖGS>9z $ftb@k^|jS:A{HH?jj.54B [qNⲈ%g s^5 Zp~= 9(є2ƟfYd3CF(? BN"D;t*^?x/CYB9Bղ`r?uSx8$>JלL(Ur8VvURyZ+"$w +٦› f'xld}6ޟ PU Ty7N]~&-cvWiOP"ftZf4~%ٯdST]pdI3_1OQ1wo%mB$w/vkL_7 0 ĭ}~- ꇶ4QύufKxS0jZާT6̻#T'ېuLl6?%Jެ^0btmqA*2.Ev:D8uh=u͞$+g*WKnozIk |8f,QttM޿rR֜k`+) SJJ1]=ە4XFuCx sBv+{Qtⅿ4l]0_T~UӕyF7AHV ][~!>m:3}tQی\_K;F&Ž4ʪE2$ڴbd[#9ó\M>I~-v '# Ni=FJEĉk٪Y br6f. ֧kշLq4} r0N2dinYo.,r],fUCwaa(9$bK8EZ$@ؾZ )v5g}VxT<&VG 6'd)y4q:/pSIyɏRӃ]}%(r*x/cOܺV]*0)[3&+؋Nl@Ѱi@5Iϼ8/E`)0B-tM!^^RяoVlX~4d{F6fۯKGvT指}}W>|b=q2uP3XjAc9hTF%jpikgi%X9)vjaj$FILjmZ&\&q0 F-i*얛QULP/ !Ț\ar~#Nj2"B!q\>y\7h^CGIrhk"6`bХWMojqɣ3Zë13cp#@0֝wzQP .Xo<@<ԇom m /jQ#V;UwfU|[ՍOEm`nb^t{1"Vy,5 .;έ丒0R08*Dp  AQ"~ TQOEY0_};Rn{.rr;;[ !g3l/O9.!~un9Ë@"ƣކO_@bEz0bv܂ T2O)YvrOeGzcYX:yu2 ió^Jmg/B'^ DUm 'Pw Fp3 =)`VbZp{!t`DFbYwTX9xU6⟶ẖH q b?Z޺MZ+ B䌒ɵONbΈ%|~0J}A $ -!,`}~Qztc//VjKI^t-d=7=s@rTS^_!M5׽S?rҤ"yF}e6UIc .tTu z3ĝĢ!*$3#NS>?k~#zJRKgځ5(Z=ǾrS :9|ӝa?FؖرER_2?kK %h8{9la<()Ԓn_A_sbN[&$mBmc%d=q~Mc7 ļGy B*rG~dV)T:b/\ǜ'lM\ؒuA"p& 4RҀhԷFjd=K\WXAAn⌯zꤺq nn(Y2'p6LdIGN?髠>3aqPA=mHe`0AsZR~ER;]V$Z"6dXk[i4{MlRz06}7 u@|V5t瀱X47F9(L(>ktHXp"n#- )4Bwq{Je'K\UXAM{ M.W$tH8,D i:@i==ӬUv3(T|f [b}O9hwRr5b~P!p\!Tq M="q뢦)Oxfr3v74(qC+>IpQlo/;艸N8p&ꇰJẌ́Ya UI4g6/BżbSd[Otg_-W+8,NN;T)vClPɦFOb vpTvf(!KmxB03EoQ2R\9+(B:CJx~RОf sxHÏ_Y߉J=eG ooA<Z79=0TE<X,rc,Nl,gIK:dy/AGAz#zoEOC_m R? *ٛ+,z|uwP),=OMC̣AEuE\EvCP+N7SlG= =GGP7JWͱ/@ۿ6o(-D\kGJj7in]#]՗wj+w`Vb;C:X76P}ڡ HijS({vFw޾c7b1l 1Jl;5y! C #@@bWD); ;磭{:EZ¶=%PfSBv&u]yB(j kDLl05@P gG)Livyy:$n$xw벤:]_ӻHDw7M0yN}$^1t1OA!pE/T&>C 73~y5[AR*U.WEzUZ|>j/`"l}h+D"O;N.)~|w2fms!Go/Z] "樱Tmx)C^xQlq{=,H+SVV*lFq2nW2nd0aFcƮFMw`uDX'z2QE·g.E\vp5奱~eNO<]5J_Mh낹H&e7_m{Z@ l䝧Ҟ t\1E7 MT m"jJع2ȃkOOҸ'Dߝs!~zwNC+v7TV%nMn6!Fy]Q5VfF]87= ?" u4:yOٕ6+4ovTpӑa{HX=$v/cH 1Z.Qg/vq.ǪnR w9ϕҵ8=T%)Mb(dds>YF4,X>Z`] Zq AaMo8TEXvS< 0&Bg@T}!P֑8w P "I^iǍe[.0,%9< @BxZc{^3:Ӎtk0d5SȲq.-`TݤT([*fq0/"ۘ*D-ɜ5~Go~v Kk?2|/Od1c=*"ů0ļʣ84ZEf[V>$FͰp]< 3[!'xIQ =}*D4J[*]sNY2ۻ[h~{UؒBxiz%.za-وzŝҰ4b7, Zh0?3O1|)D|{uA rL3ې?A5T>Nph;cNiŀ?׃5&)Ȥ.4hSL>|;Tn1HX/[}&Vi#@SyM23".wOڦZB%v\ {8"+ h[Q8;n&* /_q[PQJ1d7V= :,*:?yU_命ُ:ri c0cZݵXp`FQEq{ ?hrc)ݧ΋:ew͝!:Qqxa!&/^ ݉Tf' iqn:.vdD@7)?TbEg 5b$UԌY(e)`u;$\b~8Z5kDIH&rc)i[⢆9FFh_FFQ|8"4w"*6cϓ>L"SЪër5$,qմ: jZ?ZTs!oxJUO *q}RaXm݀ʌa!8ANA0q4+|I*(C1<F_z+6B?? !5k^:ܳc0b xN}~HV_m3r #m>+wByGv`|߱C$VKWPy/O*Ex2j*&s^>GCAQK}<+DI.:kHߑE#uHct2Ơ) E3 s6^zv<;G5>˵͈V 910ª{Pw/wpzˁoއ/"f n҈,xt?41Ӣu;,Vhr (yd)TĞiz%Ye#%_YR0<1W^eksGA LR4Q=gmZP?RRM:Oyyм(nGf&ǵFX_Q?qi$9O1JHO",?>'KKի$}f`boh"T܄K;th_rMxQYmer +etÃSwCd~9F"lXУjؘKKl09"R܈()a;R+PH0CX eGbIRU7!]K@["fdq62y" !9Sڗ jop{5Rp4r&@+^лb4mhYq- HG5!m!U~T9/P}o#۾O|P,B ZQ 63] \"_iD|DWو CՀ|pO#EӖgႥk_fMۍ̝TLڭM5BrmѬgIh~So:K4yY( v;e^yFG%՘s 6KBq WLߨv VȑE갠hc#>` {rVĠ@8?eʰ֣b ulw&2dODABGebX +vs0xYzAAUqcA.|f `}ڎ,Y Hx=*Lh *̦"ظIagD_&?øY|53&̵%iy\u~0@: 3[s^6 #1Ʈy6h7MmS=hR74hc M7/᝴-b- )]Zñss7JB.%a. 驳Rn$thS \2W9CR1:Cgl0ċo"JpWF>TInK[9J鼥__t¾ýA% ɩy9Gnax" N4sapK?ʹ:H#_w”$s Uv`P.zgչ%w*07ռ~{*('X;syKkWbdVW6(68&űI7-!p-ܴV9`6d65^x`TgoR8x)sF`#nqk[Ž+$Ԅϙr`_@^Q&gB,V3dqlo2OǞ2hOC#Y @xutK61QkjF4e;j>nW ܴ8v]B`gOn?Tay,FN35 4ZWKG{x U4IO{a%6U>8l_Pܪ4EĚ$U٠>LȖb(?jO 28+&u=>ܯz险GK5> .=-=O~@3ҳNO_)[A%uNap<.i:>|O@X 6'o߁{L`yy+lSgP6q  G@ф Kc{LQ)򅛴fNN3Orv.0!F 5Nc}ݛ"DNDClb䜐ssLTyl~p)JĴ-Ҩ Orz&EGv^Qbp:1kRRi9 m6z.zaFn13!i!!{\d,M0Vm,vi0^ML0.gTmP,}O~=YJ0Agq6W;ɴškP5g; wWn QE`o{@x[yQ`B־ӪvB3#+xȪ_$QḮ^Y{g3(#C3Cr\oꁅprE-ofk}nc,_N5$;Dۉ<%2)Efe\R A:2䳎7?\c>0$0z [!otGWg8\ףZ̴DI*O:D o>Zu J|?>i0/ n >18@ċQ?W fq~Z Nui,rв@Wb3[Z.ZՑ9->ԊsKe~Q*粊/~rRuڀTߏqF'ea]ntb&SWd%C.# g]XWGHt7NZ V֘B} zj5dC7.n!D2{[!I)Iczj`"1T}Ũޣw|W-\(!n1{759U!s,?D t?žy6*#!%jSubi)oSAYq-z +rUKaᗈKtڛhYmM: / <\8ƺh~}YELniZ㇩aUkhu5IFǃybC4ThF1 #S6ȿ7vQQSǐΏh{+X%lA6e쥹x }2SH_TvMkf HEIeدCK5#syB^O/o}r= ^V`-}Zsrւw92^]:3|-RtU{&#ofOAZByYa'!]zh!=,d@ 3h+ozT 40sKeۉ.B'UYIn9L5ac!/^\RA] KTD%G璶4(CZi=ƽgǠ>[ĦxŠZ#knieσk]buVKCFu85+J_Rz%B68Bz;c Lqv{@jQL >"aCݙ4 I ~}atNρZ\P3eCO>V{d_R{6O*ʖW5in%X@LUN$fƔ 1D>~ٵ}$=hgO?vy$tde]::%TU1oVU\uiK?їl}$@8Gùhש=,~%8|P ;"xPכ* *yu>3~zEO)Ps  }鑬{tKHcx봓QW̃wSOӶRŖYEUv)U6OHsU#HHUV6%j^r{:CS5}<T;ɧ*~_ǚEc2J1X`Yz^q? 1|h:ر# j;9YgBV8|WTE2'^/Q ĵCqtjW P|@lVO4Uuۊ:3)޼d@f a"oGH%7~@&y+R}('] L)#օ OPҞbm9aEb\]L.J}}Zm nj/U4i_>" 9L&q6UA$Wo-S=IL%y&|/oCflBkf;_:j Ah%Sd=E~([;+D:ň?Sw ڣI HݭRϮ &hkG󌝁wpI>* lreM j'n{ud{D'2?V5z&sg4uXc%I syݍ8rBTfṮޑvQX 4B__]:)/JCltHzTR@]ߧkCోdG!zV9v:zY->FNmyg%sV\z]꽍kAjٜ)2' E~b _;X$FQvE:;53<iwZR*ra׳ =YҴ4 )ow_My+8-}Dzf-8OP ;C_._ XMfj~̫wnVFW=(_Sp*V sgǖbmO< X}BC3 nn ٫͡Q8K#tY*_vADm?XBs~wfͻo1jW?q&|Bxbh f|zRSo2XQY I^f&8d#GAEFGq3Gz;UK"V |ɝU0#m(C'??#@(}tӊ"^Ɩd{xai0p༢ˮBFooEʹAKx (ro:`NFaq E` !Pa|C%S\JŒه,Ey=tpm\W]ޝ!"uDmNޝ5ox|QUmƖgͲWg40vYp. nUuvҽIJKz?c +ǀ/,' Jy!$^^[B62q/@3Tő`҅o@2&S`*O∮ƉC3QM_[6!斫0߾W؄X tt!M;Mݩs d~{0/t̉qC hRT Der㝹\^2v.|K@~@كWJJmUoI2)+DDkoP=*U3Oz:!vڵݏ *!E.P8onȇ48Vޣ6 yڦGfQ '^T'mA(2tzٍ;=>v ș ګWQ`!&ۛ7#f 䥮vyі'T{p(EF&y^]l>sҾoTl`T8h|;+KiyNх#( zJu9SRo#?w]ބ(VI^݆ek58bk3kg ca>b_sCY?dOFkyhΖ9 w풀} cSd(:8cFk :rh8q,* gibiXkG5rC29,oT:q9ӊn]6rOGvs nMXqv }! ]bGcT@EizS}8b.Г_'XwýxYca91SuY ]=wDCn2Q?8 u.{H*^՟)Ԗޑn Sxr8.O^b8a^X^s'@T> 0-RSCg.mf-H -A./S+iJ~~t>#??RI>T|G Gɥ(d3fiE5qFhIXHh7x~u*t< Z;@wG[oZNr2֖mIl%>kE&Hk Eڶ;b=շ[T 8,5u,w`>4In/h=BR ezU$zAUu E) 1]Ϫc7Y jHZh@ÏeQ !陝^j$%֥*Sݬ:v+-m`Sh;Ӹ1㺈ݦo`rJE14yQ.ҙ7N\6ϳ2ǐ*Akƨb!d7ڒ`%^&z#81d@ǥx4:H'9nFUEFz}#!g^1vsR=hD{EF1RCN}|Gg3Qfj-/K0l/K5S-4N<f'6=_mYyZtp/`FxUܾ@F?L` 's#JDZ7襣 ,C@nLF7KX;-蹶 ƲJ(luAV+;9Fql ށbퟵLh8 @\kv ׾?lmb`&XT.vIņS8=]$' Ʈts ٽ 7~l?+]R'-Vv4|?!׳ۄכSyi->-g+B0oZ )޵7GwF \<2@X*egWǐBLM_ϊp:2,<&FZuZ# Z5<!֖2""=\aQ4"ע_I'3{ztɴĠijOf][/o?6Qv|9)!w]tj-؋胢7= oXxm[<ħ,sdjfWHY]t6"r͘خOiE(⽛IF9R^{БwO֐6߇e. O,zǏ_{q*?;H2DmY(ˉKJNҙf+ a+ Uz1^UV4Kݖp3%ׁ֣AhAN#HqZpY'I7"*\jNJZZ2D rK?.D2+Wq|Fy嬬S3\[1̛ ac*]D;uRJ=? + m`̪w\تʈ"ѥi+zQ@`͓;Cy!1B S,Z"l 9NaoO<(4lup^W/@+DQ>=j >ۀÓ!We.m:\;PyLg%bI8, sNT2 b Sz]mM,s#9{1 Ktbؒb Z?[^B8JlAΞaQ>aKO[N꒎?|l9-C7NF3><_/Y' ]ӌ_fe#~zכLD#UR|,$AE*,QCV3X6Rw UU,IgDɷ2\&9ٹwT^p u ݑ#%zsi II8JBg=;>W/gtT?opXH$!!@Ϳ0z5eu$&]wɲs 0yLҳh?RLAޚM>b@ < B)+n #c)Hb) YZՒB ÁR A6{D%!ѬhV22Xwm?"*69XCzNs5dms핅2:ɹ,[mu* +-{,򘯆Qv ĂW/ՂKoff1`-j hUc_/.vd)ݔQ'u>;sO~#`5_׼M.^KtcOY*J&=d|6_dsTWx!J}p+UZҵGc*+6dUT83Za]Ӳ0h4d= L x-[B,uYC6v<ۭ_9<Bzn7n7oS-`&F- Zkj;.+8VÓ* ^st`mC1.Zp:Jb^ fbzl3p͋;-yRZre52H[h q$ -7ԇ„Q:+ơX KN!o(^WB?DlZꑢdbG6!vJ(&2e.sgh[VtU.!ԑ#&yLpJ/sY. c£k}f.E૞%i|>E4U vj- ;Ao 'x%.N5)Տ`A[W8O^zh ˃A?ڡ.i%η=#>S{# y5xl$?*lO0eӯG]<_&bURY虉.j*>.S-lו! _걇dĥ/XC:I1+ ֥Ч]*Gmlp?|Ъ!ڝ!0}$d^V$#޼ J&k8*Yw\(uyӁxس]<eFPg)HtC"E@K015RF읏7.hAM6*EPФ kf.׬bJ-:Te4 ]|:hR{ZihM0 {,D\}f.S;Gᨱ ocx(%'ռN-4tQ#x\K0{dp Hٿ+g[?ou.t~$rT:kFQ{<ɀp qs[ڴb*M>e  4gY^Ȓv{ }Je5g=\N~nYp:!ԈS.#$ȧ)aclWvg:Tu}4 g 0]:uvOl1DqvnyUx7]X,Tmc%ѩsc34G'} Ojo$;,ć$DVAT0 ˷Dg3Dg48w} VkD]x$#:/*B`RyWUcJI\Hw̦{u^t~_ Z.t(i[R3mmrm\~ E *d)R98;P{^ 2Mt-O_cOBSk-F+zwax5!qAO'& j+>)'4e\`!ZWp> ړuCļX-i92,e(@Ӌf/}^o @Z1 xMBQk`Y4ҩV @Kf]Qzq$?6*b _ӆ9tYerH^_FFpU 0]E :#[0Mu#9DNkD?]hFC=%h-$qI;"ϿCƺ SxNLInАp~ ޮ_ex.ze+A6I_q,1 JU51.jSLQn%?RT#F 3)9 Z_W>[ry 9M+6 cl=JLHzP&Ư}.}(bUp)E}\L'gI .ؕց^$GKgB )wlr?!dc/PQCވBI;8 kTCikgy),vetA0ao%+, IhVh"LfzRm]@An,> &,;YhzTRVjĩb( =ղNr"M` ˴l m |ވ#[8TVoR]s#'kN-h 4T%o& *2 %cqYg[U&]yJ.H!(ٺXJ67ib<78BY=|{iՊJkVf&$>T6',ޟPkoJkL<41}xYDQݗP?O^dxݳ8 xL^Q_S'9'8⸃-3MO @HE疄y:kLm!RHb. "F{_l- E>lx ᄆdG}(N7\d(6" 3Ԩ5{WsЛ#]X׆' ܄f}>(9B5qbЙg;>3QB`uUڨ0I(>CǾ`r1XxC\c8qMu ;Q;ÒMO".>U]B.t fɛ$-w?g܄,aiZT"C|HȐ&q}'jئ)NO/Sa:/}Uq :!.f`?jR3zW.ֳHZ }: ;ٟK KFTT lIWAYOIG GٛZ{67n>};xa.8k;AWȅd,ʍmD<̈X}6=D~ ٴ`4;nO ~j̨?;BR}AW9;Z62a_ WH1nCI.)."*Uy_Z27(gWubU|B@*~cZ\0˶Sz ` /Gwm|-?,Hfz{?8;8zj&[̊Tu F΋(sg=ױUpk!{v$ի0q[R:+"Kʇ$rS'/#ޥpP RNtc0VT2Fymx@#y|Rcʃ6.[(Y8/a=R)&/t8:=2]0 6B96ޏat/t%IMrfrT =/g-q">kfM,eqo4t D|n<|[ EMM{~ѵҤ6bΰ-kiNs7P2iC 1&P2ݧ39cZ@#Wܝ==gu l4NlJq=xjV?>cYtq>V&蔙E(Sr_ { xnް Orc~{Bs]/1mA:pdI=icoU8P( AКvjdxE˛M vbBPJ¬d Hby(Z?H)}"gAdLQ9P&(b+:ϚxGG6/"}(ֈ$(Wh(,|=p@];o*^r6= oأ];)`aO䋿ntdvO}/H݊XbhcegHG fFM5Sk4$XH}xkQ@E>+ i1u(bL*mY=S$ޞ 61<><%,_O1oM(CTvVo Fx_43hè{鰊~3T)czhH3Y_VǢZd@v;)A(-v:^ZCUVeVvW-o{ߎCԟ'`k]sPHX}W+z]TfUD}0.V2H ]C~n-1(P hcסGY"e.l\V<2&ot{NLF@ ]wA;]:*/2=aQ|⛁¨QbJD86o ʉҧ=)մѼUG;V-y Xej+Na*7x׳kLO +zڢU|~#ăzA N.?TfU\//֛|V. B>^F""l 7&HSz_6_3hn+Af>W|fDտ_Kga$zKShq'qkoeyr)d6K v*Vbvxr(\60ae M,!Cifl>2>>y7rޕBE(7*ʘ06эln?I=|}ҭNe6A|h.K90Ew B[u_flJeq|SI=D_ VAdZ֒2fMn8҅j$l# 7Y3>``NJ݋M`OI QlϪMĽ0MM/КʣڿyBSTfS0Et2o8?C S@ՎFKTbl|*$VBMO737)xΆV'.F+c_d'VSclQj nѶ9_7//k{FхȞ;dxtŇ+- K{4O.2d-%PɅ14ڰyrf5U n?M(zVw$}2/Z迫5uX̿3`h !)o]9pE`Vu='"L+[!Z;aRK: m-gz3o1(-DL&U'/ic4}3\)YG5K-z+ V0`+ i t[=DeYв`$./ĐCzm"وւԎY 8#1ďH1{! U^, 6uxA~zB<ʢc4̬:@n4Vf8K ,2)V#ӭנPn5IY"1o6!nYTɈb/_:H?Vůwr@v21F8X$7\MTnf*ssfmJV1V0PeFfF &;%wc [+c&a2Na\ Å W6/ ȜGH&52pi&sroH#/Op %+=#FhL1:~2oE0M{ݭ {'TBm}RI<Ċ>i21(?f9 yJȼi8sWRmq: $a6Me4@t\X|u$/Ro;RD k 8{\0gJ):[JU` IA@G߯fpA]2M*V#?9Ar樤YusNcaf7KIOwgOU TY{lHM@C'9f7eK׬`E.]_ GU}RER֪CO'RKM#0yc IqY#G}g:<e[$4L^T/XQ(𷼣Zk}WyYJ4ũ!m33ـ>XПwS~j:# {ĭT  }5"D u%E <%)&:pJX,bRY%QJy^9$Õ񧞍6aF'Scc!~DӫpIis1-2D7czJFQˎ}=9`DX"Gˎq\yDZ-4m߻F{2QF!鋧b#G'غ&qs#cqh|LY^f^J-*HPJݏ@EYN I]cx@ Ii}88M%7<f =& xu\ /@r_&P~9^vdi`kIJMtÅK3 #PUK#*]Ի#WWbr%Z\αVXkm"MbnŐ r=%; ̈gf'aP,9ȋhO=~^ hMr伅yVn.1K3ج$tp5?1X1c+0h^*pjes{ |CwGt4|91y}yG3q1AG͕x}1aF)uIne#e%z[xkV,_j7э|53lBNx _`#OIa 1U~+RYbrC&oҸbNc1pyS"7{M~(S%vϹx4n7i~9P{ U}кOy=V˩'ۧrf!N.9 w'3^i*xqc5t4-vK@;BH2rP(VpNXnovٱ2qX!?F"q5d5- yi F$TdvѼ+8kE8`hZet:|tqܳ>0Ѩڬ꣯I8 ǗBv H3aiه(ڒIuob)=;E>$OO/ U{3s8®KD>H3wE̫KWODH*ml4k W:RX;uv5MZ4A(+}Z.鍇AL !r"P&OcFQU7z}h[ bYQQimXîD|Q% x==6Pz0׀$]F+'"G-d(%zt7a,B KiHXꑱ@9ݚ bfZhx~e[q.X\xh1ѡo֠F7xԉBfR\Be!ӛڬIw5%e/c2[(kKn+Uwt2ܹ!Wˋm&O)4H\$ 7_WvX-x, ]\;KJjn-HѨL}P9lvǒ6l5Hź&2eCNNxAF e)'M-GvS bRqSEsL{UQsT_+ZM }'LY"TY.S{0n:A!p۰[]=wX5csdKق:VO y=|u nb A^s\M;Rӏ"*1m Tr2Ѫ'Sq$bΖ֚d xIĎfg;n$Qvk?%X/b8GX2  ߜʌTkTm P~aW"g֒’-zCڽu~2fvChv^|p:BlI( ÿ;xldB 5uƏ^AtkT:K<t&b~%@u7Ѷ94Ӳ4ȎYBpxEw|،߫vm~ײx%Z;6c,%$Qq^p_TΉÖc3lL0DW,{ b-2O<@)nj ydlJu-oO?4IIcFZw3I]["NX8ͩ!-4}1,ܡ!(N¦LJ!Ϻvm:qeÏ녶P`F/ng%@xԇta7MBuU{rTvyKęA]G!s~!hUEF f R^z`s)#4ϵ&4xfM5,$$8)  ã(.3d *:[0D 0;|D^4 sj \oM'|wln~ =po nO~V=568ve&ϧc" &hdMx% _IH,< V=H,T̈́ `Om^UblY\‚@5?9g$׊s%O Rn.ePoO\/L GеOk9C FϜ!3HK(JU;cWp[@(024oIUg~]|fΓBe O$DbqG_Abˋ5b̚e;7C&u%YO(;xYTf*N[%{Oh؟ lrgprm`Y= |hsD"]5d8 !rz+Qq@&O 8g$YP"6qjW]k8Dn$'D,@3;*hdḣjYA׋DoJ)H){ki[Bw!>Oy&o(iqx`xXѼjU9GH?z*dII}'E64U$VȐ_$^H\&٫0u[J ҟYHU\'v8)T3v&]k3EtpLq[)Br+JpnEq~#2MVJ `)Q2; 3Hoz7;-u #{)q0PWRJS x^ƘCUM?NhMb7t*Ghs kH ze*2Uw+?V/g* xԍ;@{ EyeƦ?%\5?U;jOgoOoFTAP(O#a I2 rY[Ttf$.WJEPKc]"i*u"ĉ|#tD dP#T)ɞ=7ǜ_bp4k=T/=;K`NHK)]xOkej4eիwj"T=}:ݿ ŸxTٚ+SLb2 e= e*IsV]қIMa&su"&I:tjӽW8s觩S^bN5Χg+j)0l Z eB yq7y=s77-|Dj**#{bV (WhoS=?G ˅[/TbPޭS "$ILؠ/G8.}=6p9a1DR㞝'e7|5ibU6$u:5k1ҎmrHk2Rscrx =޽9! ǝ PgGIZ7U/hO`VRv52):.8eʽ;RO[/_ؘ %?X{ !T AvYm=r~1]+|:a) G c(tMB_@4jU*tk 8#FZ8T ͂6(*tR9V삖<;A}TqiY֯*xeƊܞl9^佰>Q4pKu> TQdC &!`V|Mm1`y>{FFCKC0 Cm mxPZkI7S؟u4t;k&>UaCvJЎW6L*γȇerZt/i㦎6zHhK)p]4|%`˱tI|A4W 4cci`['[P% yd,6oV# _cWp4UKY vztv(\[F5lQh 3fX}r0|ќEHzet')G0ԯM*'v_!}z|%|\_l`VwYx1输SZk/ >3G3o2.US6 VOSHa`Gn1.M$}1J_nB#?r|~Y"hpjȃM&TfBJ}a&9'B'^K[6y4a%a^N?DYP֟: ʂLќC$("dƴNr򳂏7:FR&lO<$u}3|}L+G$\jfr~ޭ`#aT2gãNJXcslO1Ejgy?Zl𗹍b^T[ݟ1E^QU?[}qMi/ ݥ`KaqH}ßVdI ł _g)ѷJp,`d;^v[Nk\ 챓oPݿ7hMAM å'UrVndCCۢ*i |\_䨐Ѝ AlA1L#F |b# /kӳm!u Ԉ̗w7e Y׵+8#fOeIm,߶#吏j'?r>|dL|{-> j9:|ZXJsVO=dJC=L7bTࡌ$Kn[Z?ve -~/\;ڌRu}OXsPr_#eLΞp<bԔ.5Ʒ]$b(^q@bW܏uߍ _2E(NDc/CPWh;ciC+h[ε=3ƛO|kY 7B){H7Cˮ ޙ"_zmN+F2deoCѨqw qEu"2![g0Y*klFZ^H,"2β y@[ &h?c_?)`dG, zz?rLwS0TNȽ_O'lŁAL©Ms iPl$p#롚~l6)+mE.t.mP<zi;Md,@f5TUi슂\vZ3Q|'l/p ηXޗ!ck b;ca߉lcoyU&RY*-Li[`.6ޗ޸QWŢ4|tYʔ&IHikpߟBsNz'A!|>ml!Ql-&"rcͨuvO$PD/J76[dԽA2E6=@̈́2xb%6M(+ArѴ0sOn_󕥜5[0ygQ/UygA\[\kF {&y_8 }Z,HDQLUDiA?eH,Mond R%nIZƳp@dlt.o w$FqȘzq$=~]tdN1_d!9SJ]X&wWxz{,GS24K]v$!}*`_Iۘ8! 2+ς GQd!I}}A* rg_-FDgIFM,SFB-WU<>7 )XOS{Ayi:EJO'RMyVi0]Sm9)-glFgւ\^nW|S]U7fB-n<<D@b~ jV8gjވ?5u1BL-$dW'Ԏ%WiO @8p,N}~&|~G$Jjn%HE䖮 t;:h$sbgau9~a&vr- Dj@ (jɊCft1;Ywn􆉔<"D o<" C[SAIT~Àvrg;?nWYe'dU-bbE%@=iBf4l'I Жsz/i4&E"-819']ҍ ھݗGo? iˢwΣh8+`DE7l[@鼈-( =az._`1~7+0Y Mk[jjh2pf 4%;}&UUb׈[o)rr -$l;1F*Dd"YeZ|/҃Iq^};-mKWS\)KU" 4RLk08kГ 2)%A `=+' ic:h{I[,IdY{KHq_Eޜ(>AfdIY:4A,hBJr# _LmasF|F+PttTo >i(4IM{!'   IT>B՞I, *^#^-#$]m e_L@V' xM7yLFQ+B= `'27! ПJmkjT '7J5:dXJzE.VwNp|\8&`&{Ю]]\i6i5uG; :̪si!&:h~u!SC")&m |ܜ#\$3r8fQ-t!M`<>e=ׇ ؉X/2գs'ZB ^{-6n͡k=ajnX1m~Kawf;g؍/GP)Dm9ă듣(zr<:~xD 4iZEP5(U"]ha׿{N*S3 yVQ)n];r#Y$.lMatp&]/#Y>m 1wq s_QGSJHщie Ӳg/257;јAQUiHH0RPUw&IgtL{W9asd8# ,yYtCx5=V6t1(7)6% dnd$IQDQ7/Z : 9DnE8 CιlsF1(P?|0EI&G RWtxA; MK4a[®Q;IqC8ج~O{3wN̛@k b{8`|>t9k3NUE7Է(RۊDѨj0oр]kG$#S G|^Z e/u%̝{YNz5qgF]$oAy*_ަSzs F}`^_Q4娼s Y`uxO{`Gڔܗڴ|U$L?m+"FT~4Q3\+w3[rO@!s hvTVvlfJᓖ"pz.{Vt0SאCv~?V,F h:smJ&eicsHXfWɞpʇ&?^?{V6H@6PHiy D3n󆽄Fh{XaDBfh*nDJe$&DU"K0ɄܖT]1ă{mݒ9*kTꓜ}aA|kح#YQ.)On _ v)&4xay>Rc߳N[0 S[L @ 0+Gɞ%A(he!҂C^Ys,2~=N}"mCW4aT ^M)쿬B@p#%o 8:O0t6PHgaՎi_")W˦Dy`[.y\ $6P?d ΐ/⳸@="%iԺqOǾ-EvOy[ԡ穔7' i5pDQ@8M㿌IGpD jGa>kO@9~z ecR.[$}Iag+5a}?(]jCo %Z͉!%NLNR[m "Kf``sNpdHs ceMMp*{;"uO0dQjkQCtipY^z`!oԊ`]0i2o|8nL٦,N _SOs92P;l'<=O{3ϓ5Qb⋮rA*C7b{.V}hޑfK2O{(f%`f\loIop ֶؽK7\.*AHlz6GM1\}qK'r(V?|Jߗ 5"GF&e!OK[~=fͱ5U n{&ělT8фuCYi)&awLݠ`tg pϒ Ԉcp QlUEtN>ϭVgPLm]PaUhs-=0HյtfB&Es4fS\iċIfd Z}h8_|b$[yD6. ZШ>Y=G[#½~MOؔ d?T=)\s,!Ro7i#A鸘yVoDjAuc[{ oEx nf|Qu:X.Pu4Vm6A̎q H3>z[;, l`*i!"#VRK쁍`\P؊YcG Y~imyE77S.\1?~xcQZkWb UBRI7~H2B)2ucv&iEZ3[M^oVYs.m^&'.\RIr{ߢ89;Ϲ#,.PCM&B!2tKk&}3T-Nƥfz+Գo#({*QD:)>oi.1Mj+;m#Ü/L#?Cgl~N(# MHyuEfݬ\{̡D0* ,+j&fZX"ܸҶ @BqS8R>&-+ Z{m5=KWf*IKwr s/Cf(Ht~.jTbO{d5l^iI/C@AozK&%aŇwY =}zD %0Q:%ܡWhu<H$D[M8^ /.F"iai \S_Mqjx;ꘋھt/_dC=&*{H/\p"qW qHc4,%-U4ڿ Qpȕ˖<# ς[HrM]{ ˀǣ9TG] + Pu4}WLKp[x p̸&vGshcaʀ,9 Νu.9ܻ^9=FwM~^7A=Mv=D}BO2C\8$W$%Z{=7dXK_M rpٹiieJonӃ- C/|ϯ26qG_z 'i>ߪIcIuy5EF{ ;Hڃ }t*Jy4lf4;%vD9D7Tim@k+PXe-;kOu%\b'!v}JRW]ΥDx@T5v܈gNMy3GhtMlЙ& $ j|;q?|L}J!p3+2%d#Y\UqQ(ċhBwHHǽ%%v'oaxݍ Y؃-psH\J8[lW 7֧mKÊg\{<¾$u-u VMW߂u"LevuC|{.yh䃺gxQ1y]u!#,4jHP;<$xpPC28&?!6oeC(Sz_vW|KRl"z>sL&CF">I_:S ࣴ.u'C l B['Pl,N԰%^CDim܀0WCq>CPz`%νw,4JBJ6}wb|q^|hD2v.d8_NSr9Yxu#`4y MS2@F|"&-~y OrVv~t|5qy5^+\*Tb-k97ƕ$@!֙ >T"lwZ{C)t.tn[@uђ}pF0`j-^-x9E{mP5cOOJw^A(ٻt< IKKAO\=~4BR-'/i;/qB[ -k唼Birm}6- QajKU_w$8|׼ Fb. D hf /R8"*zy56\Wsbi(8uL4l['tBe5<6 x:Z QG?,W.N۽ 9Hr`&O=,}ȥKWQTZ@X69y#ҡB_18:scЇXUw^C'+ @ l7oBf1e>,0Z+~iUUT%p*/!}^<&G˚6G`!ET&\J~w˵,cϏ~mh:4ari儇6~8R2xܡv 000͠hㅑ'#0hA}W]ziA,` -gvRD<,/l|Xe6{~Ns+FU6e=ȋ ̽V*y2173;%\&Zo tŌ lMNF2͑w0NeTf3 GZldaAQ3G캼pCVČw$Ji4dKylEXG鹉Auc۸hE. DPnO]hqs;6 OЋ sۑV}ڎ1i)rW,ޱ~A'7\oolXQjMu[YF`Lޮ rݷܚ@RMj0Ko1- GƳ0 uTwHPcWVc⚩X 6'E1j 濳FPS( 7G&S2GV <Wf̼jeQ>qvw#kSy-o纏m2Wce5aHV>棜d郞c-> yܟJb">Ɱk MAʚ ' 6N€~Sʛ@_ŕf(&^U(0Ȼ"՚b9"&NMawW:m8`.[/“t' 1.S#i7L6m+g?V6?A䃦61D?%OLֺ[|NDJހ+3R);(\aZ #E@Tu|9lI!v/vnP'҈r BKo*aR9yjQDpBzhuēijHy0?TqU&r0Bp93+{3Ţ&>ñdw8l"5Z,S]_gkT?{_1BԠ2pR XUIwjM θx'kt|EU8; {bUK*88HL8+7?%eQ:&d`llxjh2ELu\h ab˼KƠCK@xjoiaF =ٳ]h UX棤u/'ngZ&,+ ~ى)t|hrij*|[1 :*k1%4RPSo7=FUۓ/^ {I]~֔"f"b5 nW."ThZ#Wó4rf?1k$SG1}AS*G"kcӮ!&BԂhKm 5c9D<HK Z+ym9yzLESzf[zhހ;:}[ZyV @aLx;Ng kg! >g}_0awS]1"0/DPg7 Fkoas} Ο/$ Xj raH$ˋN߇dG}e&ٞ>v:]>vpXZM69e=xz6kqQA)bE~ ♮*il UGd}8+дEb|DR+nx eZ7tȌ/n]kKSE؀ @ڮWçKL]9}Rh 3H.)p.f&Jc795IbFRx5=EK?\4z[HP.Gt<| h 4@&j^P-wб>)Tv+*`W)ٺx#1j(\7L6D+IupKdЉM8?%$iollʺ;W 3;pZP?7kLzsLO]uބ2|MņiH8tĴ[HۡоIQ[Ϗ"i,qGu{%v4I˜wnAذ:I$9>:9p[ϱc1,LBтvjF/2jƘ?zg}31#tݮomuԍ^z!eLyuSE0HNR񚥀=gaRj9 !/I#An/Uvr"sš\e3 :ɞ]#؝QFW:ڣ}]L1Ϯb M7~]G1Q*j"4HfB5 >uHaoZjG,qtEDi_"*9 ]G1%WnRevb ߚǢ.OQ+ (gрs:^G59}a,f`'ς'>i$WiN֚YlVP?鱂LPٸLSK@w 'r t"͝@JnTO7(IXZ;^1꾉P 47*vHYG5t+gW//r)`02Ѱ X O(F/D9"2tWxSGq;uP+CζM/,*{N|"{wYF3p~7Q6>}#qkIzb|8^ kwxFImkkb4pS<*wY&p¸5TG$J}O"^-辠*Z 0lV/@hq4:FgZV.ұH3Í E>5ɶhF q_֡Q}g e't&ȄX$vMpwQ )c`5{ TjEtC{3WFFCL}5@T~c SYi+F"\)ωl jIBD(2D{]~:^w8{@\1!ɴ,~͑ TZ-0^C e:m= ' $5`FVBзSjXlqE,Ypq:wq~J" 5,I#φȡ2zYl ),{-`"sNb">dK赋{ 2;XmhyafXR]+T=ɴlvK*[IH-uQ_X< O|}0mDKfoj\XDH6p *SzRݽzO=԰;q6 ui(落o1^梒\"{|f5t](/PG&ͭ<9Lk4ld`L T%"P3΋&Nj~f\$uR#'b֦vfcZft0r+HtzX0 'N/D^NF rv1Y?7&5kNt/ *^l0L.TsPFnC]!<\@tOW\)%n[07SqoNjh@yVm—_dk!ȑ&ƷKc x.vXmt6vyKod:d؈9œH;G I 1b iOXH:_cw JܶpQXil ,@ѯ&ToZH2BT!Z ir/d TzNi-Je$Q N9CsKDzި}^zr?Y͔4 I]2pXIMh,=%@ qd+_:\ gK{ygV^fej :70[ݓXNO2xwM&>d~W7|4拢b!G!)q~:`ΗfUpҕÏ 73gQ0unwr<)K$GSeqF}c}"|ܞ(iӕ%N1zDQ41ZUZ(ڧi@ W3d@օ`g^L#oth@ϔ}ՈvA pgmzGTXxT_鮆In(,,GXFmnQʳ +J@f7ܞBsWj`T1 :ݓZҏM_m֛CY#8إ@,kdCdJô+@D8m 7q{S `xjvB4@s;`+Z~c21(N&{/1,fFu J'$iurVcrAKP` F€mBE8(_w+j~~0=Tj@d'd&qs[u~Я+_J495;>v$@ÜL&1'x3OԐͰ': zI6&깴>;06~] >I4 0"Lŋ"G06 4`䒝` OIJd7nDaj隸.Q\9=~,Kn\krC~/2ֈDCBbt Rm?Smz}OSZi+1]K2|1TLPvN8!hYs u;HWePL]Kyucz̵n nmx|@'N=z& \[S7**5 }o_\M@!?Lx+)tB-@[C0O c)O\[sn<8&8l"=6jovڻ_حg=Ƴ:D5 1K R,@CZm-QL}ϊ#AB*h⧱5 M8m#gز ?>=aw.〗[pnpjPϣ?@!jǵ?i3+{Ї*?ph;C/s Guk]Ynǰa,v[D8m`h-{ҩR}HIK~^$6}y!Gf9œIz(H0\XFh-+,>8/j>kARG/O[ n I8W>d&$NC-{)Uql-iJu1,nwmwd::ޖCH(QgxdF0'Dի_/m~/)WtdhC/)h = ~=caJG3(Mѹ4/?R^)_eF`mpyA3B6!`OT #!͞2EX mpP&G\@fgLT'IH'Z]!j5B/Q&QjCsz|̟rC TDzN8t%P6>DJ՚s~gVMRzoɉJzlЌf0 FsBknc1߅$\MiLLFW'“^OT0ީƈ|M(ڬG(ϙnhK9Y1 VΤɾkn?!p?KsT51J`H ?0>SdtMȜH_(JCK44پ -G]}^cLF׏lnBwRVž3IrYv7g(Yc-RBB>݁Xr A-% nd|\b%=JHw^i9d"v6u=C}6smeˇW8/oōs."FtۨnXGf$F!ɯq8C(B,ݬKymd5KnxEE{gkWgaqxU/3P -";eQ=Fi7=)` DAsYH9HFBP %:;ZMw/dAISLEN$9cm`9%bVS2`EriCruMHs@-3o1i#fޞ>擣EuIm݂9b rX_LWuE[ E!P43o1߻d,k=kN%` ÌY &a3=eaWljFT軺NL te7[qDhЎY.vq'hk;U-ڞ%I~}@ϭX_[z#{ts HWkAur5}Ilk8vОazg&IZrG&IMV0,#WQ"M*O g,1Y#FPjZ[k sgwM~?L+Ȅ؈ $b% VGRc5/78ɓh;p∣F1״kgCAm" VL" L ZZ6.w:KTwOs- bH54Ҹh 9ⶽ5. ޜh q7O80rxlo|ʹ a,!X˺fdY5#GivGk9{}q,>g\I "+]h:Qs/я.mrF ] aV Ex=d7soge]Wh>vECސ&oL}R)/d"H.+ Nl0铫Лlcf^{^,k<4NbrV䙴H.MFյ0#P'+̰W,xyj߂. n?f* [L"Iin474z lU $?i#;/uRjqF\ A xu]:"Ή f71JZ cgF9A)ŋq8#~,J@@ gtLj߀}&G:?0"d(px:ɹ0N.xB/E:2ٗ|ԢisYU#fR: MStAm;jYySI8Av`$SB* Y9* ɿ'۴oW@ÃPH~~ N!uڴ'Vl-ƀAъT?:+H78!\z7]W=2"uTꑟCvf3Up\l9l*1 2;#%=d*{`"I}`. x̝w3iԇw<ɈA[K/M"AǼ qiH,<)^N%><ؾQs:9?nј|'8kےF.H(pcgϷI z)莚Sjͯ泗 , 4=_h#N|JZ\oVPZ=@LV<#- yF ŤNpPJ :) |E^`b*L;[՗ +4i t< ~^4 Ols$7y;A|10Oz(̣~*+s\3)8:{jEM;ko^;7f'Lè7$aN,ԃ'jg0h2=M aQ;ln+Dfmjwu19X_ 1o)RV"^N%/aR 0]V8+Fae5dN E pN׭bZzԖ7p+(˨n.bY\Sʐ醑1 m~g"iJyHv!N|]ܦX+y.Z/Ҥɸo2:AT[LpIeP'S Gx1zMv< FSJ4_|@ɯnK\@+ʱ ȉ fL74 U.oI Vh672;;މ:fpWOV?o8EWL5=yv3Gt '>-~u]rraTYd%͛6Y)Ep6pռnm+1HS8+|b;0H4'>9#pK:1ԍ@|2O(ȪXI=&Bnn!󿶪 Uiju(Æ qNfq`Ыoe8*tzcTd`ώ#e`ɗ꘯oO3wWnضa!vn/Su4:.pe3Trld4-̜]oIؐAђ*V41u@|_k)<ش.Ͱb"ǟq‹ ƋcwP"gWm-Zf,{kR6[|p-mF&~I'J#j56~`RtJ%VN~[c3EIe'E6qhG:uYb g>M;)&=Lw:mZ?~_= h.gBU^LbDY-L6O_4\'p$F`c=+ydFls.[K{tιUF>eswĽ xR*H"ۡ]lնljP73=ʦ%>$N6.wgKHpDC^)@zD[0=p;nJDs7+*1}]a=$5Û#oSO9pV1rVyv"5d´yj߆i9oBaTw[NtV8$P9,P<9$1E4B#"bg]T,/df+ZR\B;4j$weF~iڄ-,&X?+U6~?P{(nMI]h=CVTݯi? ,RfE!&tӀ翄゙NJR3oQAEO(KDjßʺh5aKO,ΰ¢TE f\O A,¿1Ui8(^A1dObsv?@ j܍aZ8\}Gܲ UAFe!wK<Ϣc$V2 k^c|ieؙ jEh*I%GwR"q=.bH-n_KlKc +|)P̥ddܻDee1+%ޕj;:) nS!me_D<5#!-h+2>BIOqڴq@WV7}Dާ75^sߟ>V! aEwv4;Gd z6/Kť"_6ٞs#scU'Wx;Oۛ;MڑykMޫ0,,EaG< 1; "yu^$]2+QVe%G2Rs䒛p18{l=@&/jK&1f_k;wˉaGOIY-00AܾML 0‚A5|ax1ϣZjl[2adz_g3Cx=x%"1vEmYk9AQeщ>)/%21~#/?atRްd&~2i صzփHO^!(!?8%̳puu fWë`IZ\/^9 vMX#EQwtO/TךQ9ucӐq!\hOre36pR^ | iqm2`j9RSϤ)=ˉ.HN? %(-KĬ%{3Ii:! h/ӋrJbӨn$s̭YN ϢVX ߭s:RWR?2 )~հD \2v?z[7Z X$ S;ВΩ:p-7/dXχRv\3/,L1{ '] 9^/Aק7^#t2H=ǸjN3Y& yEsz;3YHIsjDߊXt-ni\0яe]<3Q8㞫ME5c`4s7 Eof\䢤hg2v3˲]u)Ahx2lF}BKzxdj^cX?w9M,@.{Uj6K}8 h:X$R|;!VHpaYjTIOȀ|30(.as \e;o[b|Ni2rOia=`l߷2fE #"]j`5`䨣^~=tݔ1f!:~M쭻C Ls=jcYέVs\Ǖ`eI ?`͒m⧊/lJ}ry?`9Phޙ.ߎ$%'U6#1*&mncM?^S>m˦y/t(^HU P jY-MxGb!bqFVc9p,_2~"k2q"nk]5Tu^Fov{(l[(xWVD?g0YDC3-]l;Mr~~+2\ILl1jǢ%{wN|͔jϳ  8L2pj-yԓ KVaY7=;r$?!C 7,4 ;K6ѫGqʢB$ߠ;s 2];ԋбmMJ~|ؔDcL)`wHVB"ѵ,~Q+_bSZ$L,@>\v^f?!m Fc =]c .ɏp#{>@$]/|G*uZLI+ GжM&WJl [8K^_L k]KQɮ ۍ6ez~! WZ8>BzѪ.evO @a&{#Њ 0]^VDI撎bj#0L0Lky.Վ.fS/dp(FJV*Dt*nlJWtOH+;ӿVۍb㪱%nphPo EJfX)LRVsi.:_Uu`n2dgoD5]ڼaȹ T 0D()3\Q"ւ4~N-s>L.?kae )H9C>fE &fX2лeFn%M.Qv~_Ԕ}'J 9I҄Ҩ\XR8 7a@C5]㛏&pQAMabfYU]2|#'= gH iŶYGtF}Sk."̾np`k坯䳍,oA ~hjzъfa?D6H'_p8͢(bBgmEBet`X5%vȈԞ6VVJ V3hTAX/~VcLATJ2 x %Hgv|7 d_jΜ]va6:Զ?6+/=VJ:O# L!BD,7v"1dݕgoC><"1K3|gFsB_i1_DX$Kp<'<#tO/KLUR絃vI5jxW3`t8.'Q56D?Fؕ+FO>_x6K_ k1ՋBJ/"@v,M͟)yc]Y8@=fvsJzrGK'PA@xpbu?߃}pgpH]@z'MB5ʾYD[}l0MZ$& )?_iiq1a_<+auX$5sT=?bnÂĔ j_ۻ!ϙ ':U<),JwJ(U}3 (YX3i I ]Zmdžhy ` n KOu|ZP h:4i͋QrsCqigU% `ɦWHUBdpQOP;SPPַ˩]swxkO=f}j.y^s^዗eBV; }ds2[RN 3wVuBv!28v%J>rṏ ݖkrl>rͶ5`p)1(e,ӖojЕmVx s+ہdn$ө5ʉ.\j,l7N:#]L7E2X=T !so+R`\k_M#c&>I! tPD6*!D"! aOWryw^o4NOz%xί ^U]ݸ4ro:1Sit>T1Q̸9'JeF .RTe$%q*5C!Mjƅ =c ORg0аy(ܐir0[!i5EtF)TOGW"ۇo%A\Y0.N;lMJ!ޘbb=(G["[A+'Owh̔3f\ ׾-BX3Ec 5nͺ oB1&L "27J@Rj /[<(v"-%Q=惂%&dGfDHp` ~?TJM('Ŭ PCi¹dG~7=&>1~S{N>z9E7vx'椝s/RQ6|R/H1o)y-(дndooV tBޑDwSextMIZ=>e=8GN, 2,o%xFH4- ?_yWIeI)'K5nRDqH}fW/Xs@;>&NO (xeJf' .!!< .{Ӭ%ziy䉮, Hd1mۻ^2e/_p>ic_DP0> yvڜT@fvJʈNx?o$=]"(o!mWkJv9p:@'3WB\鬿ug7-zǙ6p큚a> 7 FbX /%L影XLVroQmڸJG#F6R#aLWȖb(]8+}B4Z)<:ϙLBBL7f U#*U3N8T s#`I@U+5~(ewk׸Wʖd]8P?<[2z "ylxN}/d?\Tt0NFY-bu%5RnuN(@pU>T'ov<[PLԓ:Nur+L^] s "(j;%6ރ_8 ɶs;B#&뒡qY]{Ob."a 8f7iT}..ۑQ俒;~4֩ &ST-4rN[$aDؕ<<uKJp';P-ߴ=8̱%`$Ka!f.Pu›7s9 ;r}@<[cO1`S?r3E/I L!\K35nNZ6`&7WC'1$\D~W&D7X|΁VVx&XZ8y86.l1iBO"9-kt^+- O0249| w~s TWfe<quHt*x[jI8tx%lp#鋩Ip$LiG>B q_}uHPG=i7r[@Ym+Ny 7K6[!2~ h zނZ+X>$3V"L'w/Nͤ+tFd*^U5XePrTpL+wٙ(\ln_wb]r 8PH$&mut41{L)7yfN5Cp[)o>\!&W| ۄT4p|QmNE BYmg!Ɩǽ&:H~ +%6_..EQMX=aL/$u5xl [YY`~gퟰBc;Ƅi8ۓ RFVq=U{` p:8K GU jb!OZEp)8FTjm@(Σf(a$+bww:j8,0XAeֲ`T9P(BAoUK h[Xq 9G﷝9ZQDڎ՘ks@Ùg''8DKoJ:"a ?]p+V ">.`nƦca5̾ pRm; ui`#ki!*TåpA_gpky ԧl Y&MR?|nnUoS: a6Zʚx'a6({N߰eܩeg,+DNJWٞZ"ؙ@{ͣg(ZS6m-e ˿}(PQs^7cF%0aְ@K˗+8 .Q{ci>E,վLmBb`^4F虫AQM Ճ" )]jH) /͙p1 H\(FMXS<RY+zMZ"4b_,:ۃ3NGLU0e7ȵضD|~6eA-N;;1m]O_U1Q A$Ҍ.qx,TC?$y )ẹ`/Zoѵ'S~6? -2ɻ|=kx1RN3v.2kWfGӟ;2y5]lT7X |NEmZ.; 7l;@2k&ڏ4M0 =>:cn4sUԙ(.J嘷((g*=8xII垗*:9MF`u O~YoDF ۦXYnjrpq]ymd4,~W.8)tR%*h~/ECO]ـ2^6!:V#o<].)% ޓo<5~7NPG'~@cueכr6məJʨqVK)tő.gUy^[iնMƐ(LGK q[&R*x.Ljy>fhFX vFv5h6ceHd6Q|>DC>*-5..$mZn LP nJ@\v[L 9>d~qkA &0sQ>Z"mp ƛWޭ)yckSju4$W_vi-ȔMW>jSآ7t1c$RG\ll!4']A <ıBC5!BCЇF.ڝ X>7? &v!^ Fn?4 Hoj`LÚ:l%쑿 gYhn~f}XcQ| u냯TXOTokBo.0z8Z؏)ik\K$ytMu8Ϋp ȅ`0tH |T/۪|c~)B> 3(xDJ 9?@,ۼ+ {W;)j .,|Wur3) , ̱}(~Vt`(|Z *:0֨]0*4  0sqxE z#<!qU7( Ey/1G^̣`՛r7WQH`.3b#z(dR';V+ZfQ &2D 6GZ41pg\S^c`a\91UN[d/z溃Ān,2YG)gmN `T/:S(` [#f2ub?i^,~-͢eKJJYC,C=*Nm|jaCo[ꈉEȌ[]$4ZK PK֙bG8{MDtC3)^QI X{.[N\|(1TRzBgVR1*,nEv d0PM A~(m]3b5ը -Z/qsac8':QPJa# )Od{ÃrPӾ>8:QޮwꑯEcuj0~^h)ܣU^NY=3 ݅ pς|;@GITjjѸ&-vߢ2άeVh[\nmmHbZhs[VΕw$gd-e/l`{7,SmEpX?7;3'n`,W%rԇoWیRnۈҌhmU5.Kncٗ7)cuMWCzM{ m8Yfu1=ﲦ>=Lm6CqC׈rQ#ӊEU!lILC>)#7)|mAHVk0z:őx*39wNP_ʸ'NK5ղ=̗ u HƠw9a%y"H׋WuB] |?, -JYW>? r0e*޾W$ܞmNe4@ 9Av0(hBwxW\RNc:DRMLoyJ^*,Q[۠~<D |_ju33ONFY VYFe9xmz,椙2žA80r\;=KDdĵ̬GHK+]T} +&om I;!XZޮ}00ѯ^\o)(FY3[Zݍ{<4]\],Kܷ%5¦[M 1s{lH o֤^i[^<|fE!W.]r & P.0?.D.,7q9HJ G,*UOBE r31p^IGx"vRHH]E1hE~t@.<@.Puި09|4ۨIӭ#FPnc9&E;S[UeeKFy{ă9kL q~NbnRVЪ&*]W{୒&%zDu{]  Ue9a~uG .y$ ~.vyIS$LeC9xiѬp,TFbͨGou733ǮAu_rbJjSjtV;Otkr=g |ީMd0zI5rPhp#}IPPݕO.Zs>\,>w0zi{<}mzS8XH<8gLcIA MX\$fG1Esx'XD:GIk&x B:@~7/3u3R Dh7U= ,|r1vosFǂ攷||P >r0A^Sl,hnnUau}j{.?hvT48 cEǒ«5)Rb.3׭I}r~5wVF͊[y+눲* QU0[)t߲ۑ[%"d#4caohUlDX[ }@ҶK%pOW/c 50F#^(vVdϑ3 _WYi Xs9cl{$CÌ\怒.ML0{o7JGw*.*UiB/Ц1с[-giK;Ғ[ad!Z9Gu_+3xL Q؟ TV<5YI"FXHnan`M$óM矝Դ$QeUPj?m]UKpYUE02Jo2ey&dy\ йPƓ3(CݽE>vbqUo 7PS`,_[=q{IMc?Co'H`&6QW?M}Mx dD\>I?h#S(Sݍow\Mڲrm݋a!RzSI)$WΗ b &>n%`Tj__2LZU5FB>K>2kA*h4 PߥEm sSެdVd͋Vuq.խ䊮[8 =]5(Wwˍ?;JBwai;Jba܌,L*{ S{!>B>Y~$yse{@ĵb*;/ 2$ҴD@;Q"gF#CxŬ:>xF}ޥgy-6Pkj3v}T1Н3Z(lL+>K qLYL~$y41" + lj=9he q5>IJ2feښ-;B<$i˹K<+fNj0F$-< G>@R~CUmUY,*lnm_eDR{B!<.n@Ip-ǠjW+ S=:򉀃,ovTE֎)dO]>XNv_#L) Y os1(9[j;;PI< \"c恅=Tɐs/o_zO{>ϣ:^Coi ( 1J!uݽSVVl;]m5ދ{WA$c%;@`;gvW?V9@;du=g<V~%VAERfᬿ 4UNޕc}_o~BV6dXu($}@!L! o@3XFn>cv =,Ehטǜ#ZiP\> ˸zւc Iۀz濣t\Hk!,5S~M4}3tSrBaLXBYqBTwQ`~JX !sS ZXyʻIq+@a"_67+Fd 1`-C@Íp:=AV`3L0Sź)/I?$U,|gLߑR10 ,A{:G& Yfi;_#0G;3Y5caX LL qpF҆+j^s$pC 9ZE|p23 q^&dMq%e\2vlqO>\T*TNCwuEM f^_5RzL\0j~BjYѤl ' w8#_~De&i&KI_6A`^ER,03w< AyZx֢1;-j|BRDė,fmOiWny*^\.}MEl^<2"0&dv$jLibϦėKBNÝa4B\&ǴZ|7.<9Sҁ{FF x8i,sUΨ&/L?8u-FlRiv FqFؖ:SCI[f  4,V<Ns^,Xw.'X(e5J}L-:x/SF?.XHϞV ɑ_l$eVLe>Pj*-VDoIɴe/MwSJOPm$t=nJ'\"QU_D]Md[P˂$DzBfJQlJMi`")*I͹HzY硑YmkL4 GC?tۛ]#c. <#H;$jZJD@lzIKR}!诃ioRJKmb\ʗxH) 3wl9[`~ci.gl〯E\ͭemˆM:2C9%sm{عb<_Mk:ߩ+3D`/o)Q[Phs!b"KJ m{6Xk8 Ωi<&~Tlf Ƹf뷏IZM WH|xKTBs֊"#& ;9L~8(av31UC&{Lv&n&Yٱ6ˮ;1X{wUxz%߸Q&zveS~Am>쥛57VV}æDӃ;Yes7O\3BQhY BEB _I-Y.^@G s(J(Qh[yY5xG 7)}rT%/@9%!SÓTNIJ7Ofd0 $cBζ|>dDr…@Q.р^U(W*Pǐ2%e1OS+>ԻvCz/ m 9$Uڎ!;g/3a _xeUEprr|(k Z[ֱ-0^Q\p0؉Oie95Cek ̴>h~{MTQMJ!``'0{A@Dq(wҚBÜxkАh֚bÔe(`k՘dO;rl#˴/tw8Wͽr=L$B?m;ƽ\PuCJiGXҐs=6L̝\z (sG^.J|lZ)XC?<rR;2AQj=C"E%Ig"%\f<= GCEe1륁a]VB}\ _*`'t)ZQkKજ3>e=d,w}W/_]nyOE9(f>#[X:ۑ}`Q"Q`ʮ>s6;-zd is,a6kA'wl4KpI2 LZi Rp\pfw`?oYUqAñhJaqTѥ\h6Cd ' e |53ffCnK$prGS+nAܺEJL0l=/6k-;5XE,$c\toD{D#e.V㮉dz!a|k - F/+u~~C6v+{CݫF^x>Xj_cp@ԩ[r΀9y\g(Gb"ZM輻`!C6O} ee ֝" [KbqHM*5Hns| VOG4(5V^){)u+$2Q cc (zaU+'wӝDq4]T3Xy<$0$M6_g!MbwoXR57k #!V+z5_[TO8ZWsWۋ'=S+z zЧ-G4}Kj7`g(R͔yoᤏj"3c}~^Í!M<_Ct0-z4?/8{6t//+5x)n_@;zI&A\V3qG֙KY!ýTJ@MY2`\?%)fVcw 5_&*TLs'@wȗgףT9BLaǚHΙu@l"rYԫDR!o \*D 61m嶙tCZ ~%TVsʯ7wwg}tr#G%[/Ct=fAdEk t?9?+{4\)|Zؕ7wJr#1[|As{FB M`N._&VZ7MMpe,tGgefs[3VRիd]Ka28hn+.FK/SV=؝u y9$O _ȣmw8ͨ;~4/N<(a-N"Q)4v#SAW5s|{ՈftR;@ν?TJ8 ',t1j>Ccf+O/2Q'=( Åmh"(|M#KL8Sb+mLPv 󮫸5B?)X-\ H#>9t3Y4%$8cp@눫A_s"rFH\WOJ9p)&[V_ru| q#>gW _XDRF0":Z4;21Rl卋H@"98VBf~4MRU&n 2Vgo\]~GZy| ɸ0 6oq>^é(J?XliNS;=zejh307UBb'iyU8ASq'EG MXD,7!vE]DcOEٺDwRAխERnCJw-V[lUh5y xZu(.uK-ѯAIe_+MY \%+ ~)|K%v:4E3̗'Ζ׉ɤlSctasO2NECM@E<@pkP$'j<1fڡ!swy]IUDq;#'8y7tf0$q.8]y+R} >^yCvTo.(הO13wfA)U6TJnZ g ~SjR+^_}\`4rKʴ~-bjp E5 N3e{&gi񮆱mb`z%堃D!v/rts&R=h-r V_$gSFzMms~2O`T[o/pG~!}#rO Cy<1[=O0Xs*8|Qml,{%9RF1<''փhrWO o\G⌚^e`|$Wr_Um<~wg*hF;Fk4WoeXc}4MGD_qn>1?i v) #ktÿrMϿxDTc [4<a V~ s]gCV\}$R8%K٥tڒRēf#Wt{Ugϸ&?)0+^='\TğoIj3Qe: {mŻ bwoA]ڮֱ3ߩHZC+u9VƽK]|Ͻfi[J^N ȇpHP‚|!-t@Y:?-ˇ=6He+J Pz,зnCKu:xg'R1Z6 JO{q;D4ᩓixg_q0jJu]ýGx,JHq%J_~8?qY~`xsLT8],GbS`cnO։z0?aY2 Nv(w_5r !z$r7̟@X"{}B0OHE#։/,̻@B(F(/nHil}|;@\\ `nPO"p~!)H[.c9ܰLg~tRLSrp ѽ1K=S~ZD.hsKv;&KhIFAL.}_O] .HLqUbTs ZmWz =oU؟86SɤYOr?G*ƻ7u^l{ʰ0(l\Qq=ʝ~MC1Б]b pGnX#܁8Io^FAX+H`&o}.SQ-D-7 0 plpxsX]T30T欹 eA3B`h%`2sfb1I7@P?fX. / ta׷b'FYS!E?qWb̝E$]D ƾWԼa #w'Hx'@ 8T y%FG4D4ˢ%N͑~:+5zA[/'W+1P,?_?ww6Je ߥ=t—ml4ͥC$'w["u݂]vQs=x@"t;NUSjrhU~kG b.Տ?~:P"t3(TTC#Bk.< vtѸ!rɌ}6n|qt„A m} 3>ikl D>|u ZT{vIlYWDu'Frs\ buGhcs0A6򏴭 N_n4aC^GFߵ"s{=E;nN4HN]f` cGZrGnu#_}ݬǀGHYA:4t6Ep a4&w[dEJmW&.P(0ſl DJfw9YA3'(_ sø+<4|ڷ.Jjy4ܧ-:~`kX{>I.Smْa t0ԝd[I*ň dt%FڐR&xwpq'_[;cBm%4gS$,ȃ"T# xt7Iúv\n vu .nS'󅙉 !+ b3&Vfwx s uЧENN!4w|ѠFծ_+](@VGu *! ϼEzyP៦|=HLeê]S+Ƞ!jO<%΁ni`ķ5dU-*7"PKŬW OU#r[B "yQ5 exA\.Z#UU3; yH>eM<zXo2GhWS cǔxX.Fpi`eUOAiSR#vE$Nk-iF`@%UT!SppD #h2Lej;&^U@_2֯a82Zf3OU0wֱ_P"" ˸dm挳/Z3TWd65*S~N[~';g%0z6@rZAǖi)sɷ[堕tǼ ˍaUO!04!ไU(.Lxbotⷝ7 eX -URҡw֐nx G>wz`4zkl4*T zzNQ ڍdIgxU Q :$1μ0Q=B Js8_h6>w,9`r> 5rj{4=P<{U)1F!|p Y\V|Q;j.8@J&#p_ \۰D͘T YZ