freeradius-server-3.0.21-150200.3.12.1<>,'lcp9|L' UZ^TѺ$"8N1pPI5$L%ͱY&BM"8e!6:"{Hd[ Alj2 Eq +-еǽ@ )B gm=6%!3(*{R i¸Mj)4 S H%}f|Ax ."︙C_k&ܑԬ&B%MF-7oeDZ2* 拂>O8?8d ) 7LP\`y   4 ^   ( 1 \Č<22W2(8 (9Ӭ(:֕(=I>Q?Y@aBiFtGHI0XHY\ZȤ[Ȩ\Ȱ]^*b0cdeejfmlouvEw$x,y5Dz8H8X8\8f8h8l8r8Cfreeradius-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.cnebbiolo^SUSE Linux Enterprise 15SUSE LLC GPL-2.0-only AND LGPL-2.1-onlyhttps://www.suse.com/Productivity/Networking/Radius/Servershttp://www.freeradius.org/linuxppc64legetent 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&  P  X ( ph0 (  @p `   p    `   ( 8 X (  ( P  * Ax AxBl&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^zMccccccccccccccccccccccccccccccccccc8a5aabbd908cf07b0f2e622477e2027f97cca4e54c2d651f6cceef1e0245abb9537dc913ca617dd3b64e0a0d6726a8d60661b44afd2836ca2e3362f5232c1af76877cf91d3f456bbbfede10b2104aef6f0543fb75c4fd1c77ed5eeb817362fd0a049f99bb80f2f16b953d5c5011fdbf98a3bfe2cefd963cab58546f17da83f60eb3e83e984887067ae91e3ef36553a3503292296c8d12d3b1d0d10c34b263ffe8ae096c15cc0e12c19fc104579a775b111be461dfc954d5067a0cc568f53f14612cab60855fcbae684e860277611de20ba736e8ade46571791d6def116d5ba4e9d4b49900dc46af19ace46878a20367408156166199dc83015c0c6c48c5323e11b686b70fb8cbd7c831698dd8ec6f8f53dbee942b683268aa7c0a19c408bf3947bb0950fd01b446eebd65c3e7eac66ffdf8a7067c006a034460cb78f3d3ed36fb863be3a8ece46366d50969cf71feaf2ae5ab38fe39d7021a63b679d16b2cbeca02caeb6df36f4ef5fa8e34b8b3e860968b7704d208fa59a06daecaa83ad33714f5007a8604c6e1e9ae0052713a65890c016d93dd2fd4de16cccf8ff8ce1a6728d792eb7d1b50d9da5ed3c89ba6e2fe415c37a918a687888d9b348af4ecaff9edc2d3545e0192a82d1ec1ea7d7c2e2c3a534cff700e1f6d6c0878fec2e0a3e9c1f2b05ce22abe7428bbc6094677ac16b00c86dc4e249aef6203742b277a2cb78bb5c7433891120096e7465aa5aae8662ddb72a3dd56676d523243d38319613ae90b2c361152d097cd025bcac246037ef28a422a801710d03e0bbf4618c61f7bea8537208372c09c8326b062b8a23b5cf08ac85ca77dac25d9739326c1d0a5a0d11e947a770316146f27e90e6164e2cd6d4bbb25fbf29b2219bff150fc58e05d4c8bfd9dc1f0588467ee2fe948f7ca3da2bda2ac55559e269c48c6276f58256d7aaf7dc46c2291470b6648fc7313e849a7db0730b25064529d19fe3c4612f0367113b3f0ce376e4acc454ded908f11fc5d73ce9145b8862aff6820bbbd5cf3dddca598d0b56b147c7b6633627643041391eb33b57af2173f1278c47be5a8b35960ce1875e81f35963033a71b46cd13ac21738e608fe3006e0af9e9cbdba2a17a72797aab1fcc7e66f306e48d3de55832d7886a071c5f9f941a1a871f2679b30314c4cedf0e7889e79bd3d4f23ca80f6cbe491aa486e7dd4d3e3359e05b5ec7e1f2fc4b9e7144988b03445c239d9d4b2e3c650048c0823dedc70d1378854eed596a0aa6e073400498c189d2b34f8ff4d1c3e0d05587256fadf737b53f780c8b4caca010f402df850d5c9190872d7df1dbbd2d57203bcf6ed127d0d012f1022221d51154149c83562329f1ee5b308d2f7990253770b325827a575a4f342b72b209cded3bc6435fe032dbfbddd12b60507a9de63ca436350d21f77fa901c8d0230a775c48be55250620694124e9582b09268b01406a8b1794adf8648c4488bfd709ee04ee744db5d7a30c1e9e6f5512c487a0e364580ac9c2c155306eae5fb2911c5852792cd6172b70305150d428e48b71de06bc0a2aeb212f735128735e0ba2e5be5a7ea54c6e3e1743154525f36265eeabd68dd929dea521f126426cb4cf442d73acc0ab0e1aaa5e97f39ef896a9eba5273df312212ba68abddbf497ed5244e5f624311fb4e4427558c8ac2db869bec2ab1118a5affa190ad23ebc39834dd22274bbe02303d7ec84e3ac96ffef1e4fa4942f60259acb64acddcec78ae4b961f49eb32e433ec3f9fe04530b8212d98ce0031a0c04c94e594941691d8c27f07c7d38cb1f1f46fe063a18d6acacde6eb155332e9004c935ac861b16b0c19b0f5fa237defcd03bf00824e13dbc54143ec4e2a6a9b1733a57f02b80f47967c47612f8eafcb5dec8a34f46c350b21224d0cd0d59d246e5f09fa120d74dd8af1c885af12e25c83cfc8520c2557e57d4e5a6ac740725a7a79fb9bda736a4336f0186044036b8837273ff2e4715ecd66ea703276208d9f35348541bc6c6a1f5a72b05542d6e5ca46374e11b94d501e1d803be1e311ecda722c5baeb89bbdf0e932ac460748c060b1ee65a84b81e75d13810894cddabaf7b3cd40ec218ad90d14b0edec0abd0f4c3e7346abcc30d1ef0e2cb8f38cfbff2b5161c1edd98253b9940dc539e8fa9967ff175fe1d2f72b48df94cde8484d1667b935326f51839c002f59163af879307334ca6079afdc06b31b2337657270ea117f2d0408ea93f7e40607ff55b8817e3348dbe9cb662b83d8797b5658ad0b6f31cc4daba7f5b54f261de25be6958f728b44070859c5564db0b1c2a02091f7ca30656a845bc01d2ecfd326c1454d6e9023aafcaa93905a86701ae696b4dfec480abc9e11042aab9aa7f2015b43b17b93bf4b9752e10d32ef5aef8192f95a52e736dcfe6914ae49e5e2b70b5ea578c9d0cef6642d68af6836c7cbc4e4f2c017969227754ebfd82e55ff169140b5553c2760436c3fe44d81376fc4729607735f711230e7b3584f2dc5bdba4a41240c1234467dd2a4e5a6d727ae10c7cd2e4c700e224e94bd4b89e7cad944e638d5357225a469797a11b727ade2666a29553b7e12ed204c88235ef4e36cf025b9830c9af1d01fce17419695b6622019af2e9753b53e6bb8f3317936202a51b848e6303dfdc082d0719875a82133ebe9001296d20f3304980c838313f41cbbdd4fe25e87efb91090ea0e40023b1f6c78a3999752c2f5829bf40f1baffaa2172ee6b27252aa3bb0e14ccdb88ba65fe5a00967b2e29b25e7320a8f43386cd1edab1781174cc8d3fb50e37632e1a296ef791f94e6f78efd6221f8984d19dbb21a231e1b340f061ab9e90b76c03faa5876c04526f383fd5ed6fdbe2c09475af49596d9ef244dc391de752a6ab6500853e680e32789b8cce3b47bb057fe5a828ed3b1ef3c512d47ace6ef63feff73d84a1efe4f7cef0951ba73ccd175eca9193bd344948545039237b3c7a260d9789c298a10d55ddef8cae92655565da9c62308e70717122f1ee89183ae518f56adf30263e6b491f8d24d51d6cb253ae62f5e362346328a6dd9cd929e48488830cc24259842f13e362b227ed79c6999e5882e3e9a9bf3991deba824dcfb1c532e6d2f0b142741544636f6ec2ad3a12b4257c9f88f2bfe5f1c8db1aeb5478b03597419591ebf4633a0253b448d5b2c66a9b6eaf94e0b2d14a395e5bf8d3b6ba14995a46195739d5b9f213e2dd236b4e25c04d940fbda7bf6a271843c644bf85bef7cdb3d7bab661395b7e076b424e07263e344f270dc0000468adf57142e94726ff9d1be37236c8b100047c811864b0b55920c1ebac2222a26cae07e0dcb4c58a23f1d349de31a5181903866fd9af6cb18f32eea957be776ae3eeae96e9efc73f8a894f3942ebe3b8a6925abdd3c56add0e58cf4ba1cfb1384dc276f515bb218c810640770c3a00d6d8bf069e3a02145e4961db39e3c7a71be428d19246828d2427457805e758300ce6f0fb67136812b0c6f55a117bedabb6073df5f1adc98f67f9f67a965d3e4d85372a1a4904b87e5217c904770adbba65b3bf0207b821cfb5d139f857d846c6070fcff545ec965dc1198895e37601b9ab056f1820dcec7ef2f5e13345e91761fdf454a38b09a4da70039f0a30ca7236827b364d95b8a591ea6ed66f2d3e971b66570dcd5a3fd9e479a81fe52b0141fa700bba14374f347b6b43b6f4a8800a12adfdb29a8fcc0f4484c4261fed88a6d5c377b1f2dd83f954dd9cea1345e05ce40438f5b045f4d92db6be31f22a160ed38126cd736d360be66c53e14548722bb10cb002e2a0c9ecb3fdd1893b4e97952222040f5ae2a745e8e22f5653bbeca416506f850783083598e0758a5c0385c22b71a465eddab5ce281b400caefcb14c09a2e50e14b2d872bd168b846edc1d5250d1add9dd6eb4e9b4de2e13c271e8a13f472ee5f0cc80d6897af8c5b2e0ae90fb92f20b9cc1104b65f8097a9c194369f06c51f67173f82423ba2ee84a2cc9522d40cfdc99e68b752a6d41e960263a373ccb0e9349323527b861ba030703a02da680b764976c7e6090504cb23aad5a3defe69d8f23baa1dfc3a571ff3b6efe294d00440ae45769a537f47a00cde9a92d21f0d3c474dd65b69272046cdc4d4750bb0449c3b014abf7848b1fa3fdb21cafff9efadd1226e408ec45ced777523581ce2bd68e0c5fe7b61b745268821681001e6fea4dedacc29a103317afa86619b88b32c317955cfd9717864940adee017d5205ab68298c82d348e3ba017cc908430b5e0ca77257083eda9e428d66bf4f60c76e0ab118e567d30cbe0e65bcb869f1daf94fcbf00f18291304e553a9b3bf5e8ba73a031af3ed70cf495926c798c1998a429071c6a9a9c12d5301262f28efc78e9871bb29bf1cc19d82ef20dcef84b0c8f2ad854ddd6608005e806ca2703a776759f81dd64cbca323e5f3e1623cbfc279abcbafbad59f44b6e7303b6590b0c818afb57f68c7a97ccb608c072542d5dadc3b83299f8115154851851da96240ed8a57ed750b659b18794e90ef897602df3dd83a57df4ed17c8553a5377d39d17a8fabca93890e91b4a4c411098c685b41f89be0b307c11130506b594b822535e760c058d305a61c3aac7d758e0d7033c95945a892c5df13cc423e4febdd8050175d6afca21467af23c8b55c1f2008d4dc16bf81b0c2cc2de4726a5088127c9f60f9741aeb82cae1d99e5e70a7e29072ab68099e69484c4b7c9d01bc9837ab4650e83f55ba466c9af4292068d5c9767849dfae027be2c73d68e98fac5361294f8c46195fd2a49dc43c04544ba86a6bba75937d6758de5dd79d2017d345d502346788a8da5225bc316be774c1971c97fd3d5f1f0f2ae4dcc1920bebeee6d15f99706a309ea843028bb7c2777179c8a7f4700b8587967def9561c0a8a86a416cfa8ea2061e699ef1a2fd9ac80c05cf6c71cf8e53f576069714247cd4a9736e72e1104dfcaba8be8ccf6f8d57abeed18d584f184d6bd3b20f2078b3bfb7a7cd2bdecaabf8f1e89f8d6a61666d3907ceedae8b665db93a0f6b3fc8ef21c8f70d61c331f51e705c8c11bb8c4a6fe1cd09e26d27a1cd29e99bb4d89b880002eb54d99d5567b553ce5a6e681e06048ac884a5789f9f121ad73d86f617df48b9ed955d669b216af18d3e770b6fd079dfb3760a1e1f8976dbf64dbcf3b80c295287e5ebe6a345120ac11f9752835f382fa6150ed4d3a5daa53f41b355e72b4dc2e6f8e7da53562fb4191369933b08ed25a8b7d117a09ae6d59d09c24e0ed65eb73128f866312cec1941b0d5222d8fa9bd842a55e079efdd6e287086bcaf6182fa41d96bade16e6d6f4bc0e7e117a2b87b16ef1c9a34ba79bd4491663fa6c23eedc86f7e81068c4eba56cd09a9bab6398289a50750c75e17fce9fb803ed2faa99d7c9a8687e4bd76d90441fa77920a99fc72e92e42869a9919e8381f4e8959577d4b2153370271d085e8c4488d1dcd0f92f177182b4593c0b68c89896d899bc2cbd37197efcbe8d16566928eb0cc1e86e71149a98358bde939a6e918fd6fe63eb3fc9632699fd99f2a80eeb6d48897f6daf8c718a63eec6c986a54eee2596a803436931a06efcd32ff8e9fc9338ffade69ce3c22dd65255a00f890938fea9918fe2ee1d3814d28e2414cb2a6e81d74acd62d8f6efe54ec38ef622c8580c205f4fe64daf2a46ec96819cd6ca8c1de3ffbedab5042908b909f86681c242a5868135643bc4b18cbc36af83ba9cccbe321e6c522ae1ebc2609a5fb751e91116f2cc9d11fcdf8ce687ce333c1a6d63f052cb47fac5f6ba1d744b3c08519d4f288e9938aa8da1700341f33e93ac4af48a8e3837ac6d21ddec906bf99e84d99d6e63a5dea16812ff583cb38a4e6577a0b18a809f98c34c3f7ba2d05d1995556d06d37e6ad241018f7f4d1e73fab24d534eb12765d5aefb877bcb5fa4e99240189ef8b716bce2fcc264fa228bd2b5d610f22adc261a9c37aca78ac3d23292c80f8014c53e10de98ebb40d6f302a316959c8301feb7cf29fd9ee9239afbed35417b76625d41c7ec1ccd3556fecd9ec9375b74a8ea403faddd7825a3f76fc9e3415cdafa98c5d62d432eb59c04498f3e8a46e9a7aa2d151be36072df097e8b9d2d423e7a6baf10cb408106e0a26ca1f4427a061b57dd9a2199e15d5a63e8c33f281a49fa3adf09b0d66e0aeed09cde6bb7880c91fed6e20881bdada310b6171e1977ea3d5672bd3dbc2dfe64b91cfb53bd3c9f46dd7fbe3584b9fafe5d32398c7762808f87cba0684e0ea1c1870ea92b412c21b829554d5fc48a7f825799f125b30adfdee54a4ae3865e7a75ad71b91c1385190a2d3fb876cf20cfc923a08b5643e4ac6a02c9a5cf42b384a636d15ad25de8186e9cd43c4acf22c24326fc978b93f2c8447a72578c8f4cff077f99a063ac716f29fa17dc5a39cb457cf050c1d5c4352d4b688e9db6e48dc0f3d5e102bc7418dd3eb44ba22fbe06aa94a1c189434d25ba8d51cad1dd64e722eed4b565f5a40e63b2db06a70cb8ed73d173a667664d6c3e74fb31b9ce3737f88131938845b6914c45007434ce40a75eace7d20edcdada7e521a144232e08ef1d698ed6acaf56666aaeb7209b70ebfebd31d77cee79f6715ad419d6fcbe1177bf50c4f49f57dffca4d64cfef3ff326612eb115d5f9f84f746a90557a1a026a91abcb68da2e9c00b82a379069afc5b907b0f5049089c00977093e6e1f1f9cdbbd58520e462050ff580eda78c72c4eb4d9ec9eea42ffc11642389157dde503a00ecff58dd91826d8d01e9266e1cbc882f3936a1085c0efe11009628b0de7fbf480bc5c29d2f4a93e1bfb1b44d5f006fcf975762e80648a6868f33c2a5da33f574ec419d8389c5606ede3db5c823b0147811e4b56a0ae64526648b7050fdc63a8084317dacf28b973258c241a46525c29490fc55e1e53e9f15834fa9ea49b04031fbdae99d57534d58ebd1824ecec9903bf309dccb688631b2cd4c5782e13a09de557359e2cdce0e484aaf7cda74a90938917b44dd6019f91b3a7314b00573c09e4ee322c3de95a4e6b1d676afc16f3d1f01b602c9d3c4697db9f3eff948dbe517715be993239e6a3e4b9b234a8fc585265ff5bfded5a70c2d24cac68a5e2c8f1aad0856583f0e1be020987ac6617901f8286e683ba15308f43d261fc7f32254f55b33fcd265c73e9e62057116ac4c31dc4dfdc3cb9daa9a3463957b9a3b16c234df25e6a64e09315d73b6a5424fc7f64a48e679d36bcd01982c4ecee68b607a049af6f9f0dd4e1e50a3c51e675282001f505723a27d1f0eef896e87ff3567df937428eaae265537094056d173bb7fb8bfecb8abd817293160c626d8457c90ba7d3481bb12e61c15b5c58b9837fd3411fa037b3ec1cb68fd939b9ed4ba8df54da7613f271e1e527ebaacda5043ef482dc65ccf001af4923a00b16bf8316566ad005fb5ce12b608ba9086bbe601c55485dbcc7421405da16213fa08e27d462db078f6bac2bd066afe21de823c0434c6d49985634f756c29776bf36acb6dfe723cc988d60a4869da6e3943315e0d63094cea8625395e2ec824bdb22f6c3a74c7c4659a2f5e70a16b70a59132efa3ab452b2c5f8c4595585d7c71aac9af03da5e6e0cbc11d0e223076bce1a4b14be7dc1d370805b92bc1654780a6cce09413b75e75404c3d62744596ecb066546bf5df4bc46414d86dd810e8df9a911e56464ed4728874f4336247df41c6523bbfaacb95f33a657ba9cae9b2bdd81a2249a35e65bd531b4e7010f2d65871ec8fb31caa24cb75bcca99eeb178c2620e86f5b20e06e4a7d09e7cd1f6d3c81db7a40160ab1129f5de650b863b85404dd95dea9f6ee4d3295edaecac635ec895ae9d3bc42396e1af1426638ac1f2a5f296bf5952c11f1b697f396295f0e4034ae7ab9a7d7309d98ecd42ad80b18f85d678bad38dae232d60dc0c5d22e7fc2669bdfa1f3d39eda4c588a63b597616b3673891d7d716522f1243510f14eeb5e9f647a9f6305788f2899c451805e0ed583b13d5edba9953d4e6b18620788ca012bff1bda359bfa4c3f812122261b4fb0d98518e9270ef17720dbefda09dcadcdafd3b96b4d1c4107ef91be0147ab67c7f9052cefb04cefef87fc63dc36aecee7f2de4c546d2aa9b941bc4f904db3d146e1ad7de72b54c776c65905802b21f0798cb7bdc8758fdc7755ba7e6516659f108417394c912b610269198d68cbde54a15cf84ad28e7f9c85d4b7b514be2c574841e41ad9ad633fde209a50c8bca4e89a94af68ad76eaca50fdaf3b86d0739c63636e30209cac05241a883ec97ed27e27ce04f2f58c9aa730155bb4be238dc3488116e8ad812e20fa52969d3b4bf9f31976bea09874b56f257f241f3002fc17fd1a2d86ee5bacbcf46a1f25827000f9603fc5b0042dd8f564b780a84316b992ed1f8dc0aa787d506e855d0978ac4fa733fc62df41ab3d2d63230c813991535be7c61bb5e28b6c7dc01ce3d1fa974c018652113e5a7a35f67d99079d7acc505709fe2302c53fd9dfdbdef8b7b4b8e1f70e2a7a1c14173bcaa2d17c2a38a09dc69fc58b67b8a46a14b6aa904e0057ed97ccccf3e60432fa249681d3333924e1ecfc74be1f89b7f189dfc72a7718846e04de09171df8823e4482feaf780512e83c8eab105a8ef4f1d210356abc3deadbc127a80031ef13c7154d20e788235aba6cc105ad8bc224ad4051480237fc1503edfa337a0e909cb3cb9ea417c6e39ca734331ae7ce82cabc03e42c6390e1bca86bfa893c68838567dfe67a1ebeb38d51e19941dda5fbfd3d64ec03e89cd958d1324a3f55373487289682fcc1594d120d259edac0275ecff80fda9fa86f2cc14c52a2603ad26e04e3fedecb4805bdd7253a0c4fec6404ee299f04f97f2009998611b845a4ceebd62d954dd964fc70ce0bed6d9d976be005dd4bbcbd395535e9fab9176172cf6c90625060b4507e682b95e876359dadb1885b50b2e64700fb35d6ec671ff6671f97ce9d9b5bd66be20eabbc2bf94092eec36e924aa8990792d1a3001fc9068d5d5772582d6c4b52390a95e876359dadb1885b50b2e64700fb35d6ec671ff6671f97ce9d9b5bd66be20ed1e3ae7c32562723ae3a56b9153f7a6dbf2518ee7844d513b5fd02043d61f4eb8170a326d03bfd275ad0787ea81ab210092be7259498aa31fa0d1d654dfe86f58f223390cadb812db96c2d8de2411e785cde5e3f074c41478c7da963a7ad459136529c207f3d537a22f865916c81b611e404a31bf7dc59de44f111fc09b1c2fa79659ba31d6e74751a223e7ff36a2d784cae1d91e965ce9af08513a80ededdd740809687105eb0164d0a52928630628505b0b1f5f75d27ebf11bf20f25dfcce04d8bbd652f45cd366b79e185fb9589bfb98b6793455893767759e68e231938f855b9cd33c20d7f953921174fc221b4d72eb8178282186728199d0d1bcc52313f4d01b99f4c42ce9148858d22db6fe001745019a74b9c42c65c533f6454f751f2b0628cac686194c463c75a008032456f96dece439e82a96bc3c3da57189828c0d4b66d923f517f383164b55fea7b67f35e77208e72bf6f8d04fe07f6a36807d342f084c9d385869142e0d4cb034eda19eec8ff0b1ed1a8082848d253c05a4f28c5cbdf119e0c504a7ea2e70fc954bb50513f2d2973f8711e239ac63be25b39ccb30fcf48340a899b72da408c56b01f8c8889ea8d70032bd8333ddd8431f58166dd6dc3c0b0ac79139f42b5bc5e2b5bd9028b65fc5b82083b61e8a4d28c8522b5caa62ed22349968a1eb4dda74ecfcc3eb54443bd8affa43a8a3667042078daae3161b357940f91ce8e38b7861e18b06bc5e628078381a2914221b1986222ec9e8fd32ca89e0068dfb7127550fcf123183cc3ae270a926105d7acfb2d3d0e890324ecab633e2021387dc97dca3cfad1c5b8887dc7dcd5a558b39e48099d860b05f15f493c5a6ab75614ad25c3573bdac3be378b21108c185a64b803b16f2a93ed4114dab3f5600b28eb4efb2b0647eaf1039d8be35c21bca13f67177ba29ce8dc68b368d67808bb073da54ebe4d41da5dea5503236c671899d28f9ea98d13079c42f07c0f1fd67abf34b7ea6ac58c950e9f4eeaf5fcda2078bd318d6598b5e9cfa4480610a941518388343cced47c80ca9348297e4a3e1d61f9a964e480d0dc7ff6f8d200a428066a2166a96da5865cc1521ed618259112cc26df867378dd8f6588a3915fef12973d8b67ab54e8c513fb7057efaaf513477ce4bbab4f1a227f069506b441b95d327dd5e268b9df1b2a8958395a3f8fd70472824a1a4572540dca3a9982bba40164dbde4085753eb058587c8f01f123324b621612a2193e9d518d9c9c5a529efca8369a5935bd95f5b2334a5ec8da7dce0f62fcd0f318bd3421f45889aac6b21f7bddf11add045a69dfbfa9f3e5e83c56fca3c659b72bc835697d2c194a7882904e6be48d1122c737d73b99ebcf30aa657c3287ae0c5000cdf0a049af584d275a6e5081841a9b7db2c4d2d7c2ddda1d9c05808382a7d50bb0b9f69244697a934dd9f7418787a18faa4ec90ebe6b83d50587f2cd99899cea23300ab2a53ac4995bc2b9450f2cbf9f835e1092678d5ceae054fc600cf647a2a793d9b6aaad7b3e770b7f840ced8f169e094246663adccdd98870bee4494ccd5f6538ce2dc320d338da3259a7f0276b0daf3358d3448579a8efa1365d6319989b303e5e463c7ff4d2024f2694b5f302ca301dbefdb9efc1eae6247df9a00028f7fe3acba40290743cc857ee6e0ee36289a7ec69292c0fa22ef4c16cb324d34f16fca9ae7a0a1415667033a29a41d2d3e47a71ef126690cec11bc3909eebc068f35a0e2dc1e8203bf0dad4a4dfa49490916fff4dc9fef87bf8d3b74c2d8cac018298e7bd4c6ba57ede9bd447603a078d7f32415925a6f60316508cd65aec8152ea0851821a5e9f306c31556f8b9d1997d8135080beb2a518e8944f547d6b89ca5a66508c9f1d4609ceaee0f4f2df85cac13f8bcbae5b1b28b1bb9beb2dadcf9b1900239670bb360d1f7ff155c27beb48162bd407c148f5bcecbda471160ad0c206e1ab4c74ce545e69eab1bd8f39f6fd138d5d3d75e1ac0cc6ff9da4601cee0b43cb516ba9b5468d392811851dceb8b538a532a595fb4c668ef39f8e9a6ea27420b2b4dc412afd1e91d149fe4b1c8224b4e148d990b9e5a70202aed37beb6fff679928eb5e4a9c7dab3a43ed30efbeb42b6014f3ff7d2832f5c4c5408701d6dff6c7114417fe3e4da7fe146a14dba2aceb1677a110ef1196122df112453a1c1cdbc2dfa293ba65126e25891f5a1e8de5cfb8c18dc2f75837ff39ec5ace9021667fde13f9d543199b01338eddc82d5ee57d480376fc548ef8ed0845a66396d60f42a822d5e43be41e47c8c5961fc2dd33678d3f15e805f97f9f7e1a67b8a2fe70f418ded8078dd9c1368475fce3d81e336031d7a3e74931bba8b8b80abf1f623f4719ec41ce860c42f28aa44029cbb1b69bc7ce335777b4cdc7814f3480fd4281c57a72e663c2e34bfd9ae2a12c8e9ed9cabcc081d650ffc52aefbb10620bf8408fbf648840019a1a6b7656fe30253cd05a5b934de6037130161a2a045296e9336c7f12b7bf2e7b3ebfc0f476a1e1e4b2111afeaa05a460a9d84f6b79033c1fae23b65490455d95204c45d23d84cfb3a6984d916bd874b8a4342f7a6839fe56ad9d4aebe7c58ab264d5225cafebd632cc5a41afc086c618fa08461a054b1e50d2d40554f6bbe38d099f899171969e8974ef6d217e90d063f5854cf4d14a1518010f323f0596daf60225db8dce8de83b7b9fc889cf301b494865e500cb5fab0febbce9fffc073a1bf235c34e44c71d1c7375c4e4a6efb3b6789523143110c313ca11e15089cd429a7b059cdc621ec20be865e51f0c0c9a539f871a00e8014f679c32b35cc946d134b81410f9ca6b4a4d1a03659ef693ae91af5f40b922aad5bcf238337a3186c72ec7d7e9f49bf7595ce351c374303ba82f6140066dbdb713032ee64925af1a1ba36ce97e55121e84abd525e300ac7bb3ec031b42e7aa289e8d18f2c7d74b23393ea0abc3c5d1e2d66446ed84c8b5c7dbb1863e42f6626b708e91e8f4bb7454bdd7de70107b720ea2fd6585475cdb33350d9178463437e48e4f9b353057beb000a2557458f63d4179238bf28f2e0ef2545612b0e7e895eefb0715fe5dca032e9f0c69d235f5bfc86bfbde1a2fb5e896117b6412511375620bc0d9a5a52d28d6bf054079093672d136a4a4e24ac4930bc80be39f07b700ed47600e5e258558bcf04476b59da329892db70fa8d46f9a5fdbf0e7d3a32b2f7819427486b6aa77741f1b08331661e3d78c9294360b4df4013aa64bade84d8526941435842381259708ed6b05892ca6001e8c3f2a95035750e35d0ec8cad9fab977061d86d530c57818f37c94978fb1a51cff91731273347681a489f424ebb0dee0ec83765a0ccec9a8258a5bd89a32b47b4576e29f716e9bee1a7ecdc6771a28673afe4ceca4d354119c913bd8ac4a97ac43a666acecfdd41a615af9fc2abcd8f47ff35c337317610efc619eb3a391e87bfe18a721cf39e7c57e78467237d7c1cf4316221cbaa71c778da7d0831a1bd5c1142f92d9d325da962d4772be7958e83576c95150baeb88adaf9184b23868ad1ebb2e7a9051b549afee519dca76e7d3ba1d0e66430a129091a82db0436c025cbfcd74fb839ac7eb538b709a64bd1468c9cd79b8b4338115e64f1a097bc524f57e1990c913ae87e8173133be67b6c58cdc913c37e394651daa9e519e1ce409ef86504ffc850490cae8b498f21a6784fa84d375443483812272a35decc7ec6b807ca3126521f0fc11fa2df6dde6dbb4ae6962a01a4d08fe78f1d243e73d5b272c863681b8d9b727cead04cfb6652b74166429147837d9d38ebc51f2f83c339793c1b9f3567df34683290de24fbf7b357b5cfb8db15f05ed1acb10820b9d9b24e36330c0337c394a8491494c4ab9cd877af60ff24c1f107efcfba8a140b3d9e6de66f995b0b0c550934a129ae045544a21b6e89e42437a4df641d15a24ac9a8cd987a2ad9a8df1fa333caf87f9c8b402f9a4a474a079cb2d78ef89c22e497a5a7dabf539bc17af6f516fb3c3302cf8cc5776318b31cb859dc696a2702c18505af6796f35dbcf6cee29f17e409546db7b7546f6d10947093d6ae0bec924623261c3e49420826bb73f3b6d7d423eb1b0f6569eced0ff1637d54db5c968b71c6ee9e7aeca25047ac769cc072b5dfc65fcee22378553e98c9f2282d8fc8bec44ad5d85f636021d98dc9709d8d384a0621a65cb20eb7a09175325d641c15b3234c758120063a46e065fc96f4100e8f9543583a58784c69f6424ff4bed69d893c08b1e19121691932d09f6ed15e9bd277e13ed2a14ba99d82b2cfcb3568de59e9fbe932ab7ef6446f804ce42b693c36aa04e85749eef29761e5f4562cdf284555844409bb277e39eb0ac7ae9892f0cb8eb94abf7f296bcc6a4ee5fee74eda72b26c8040bf7277289c1887e19b37611eb8e62727949012d132d953559f4fb050d716777ee8510a363214101f2401b4754dacbbce9d8a4f4e39b79397cbe376d218c8620ae1ceaa0b74f7a2cfc184ac660ae15aa11a4b2659662152fac731f47deaa8f93def96477ea22326667d165c4e6015b630c19c46e83e70b7782cc93f47a380a3aa412915314db98ff3a9135bf646c8dceb9b77e74415e86f57704a66005bd4c0d93e2e9514244bf5e7767f0d68ee2b112148ca1b1d4c6357391d79046bb3f576838dd6c5667bd69ef2e05ab580d2b5867d6df09062b1623fc0f41cf482353f7c6922debd93be9b9dcdc8cf9434d1882346e570f7dba5a45fbeef5a8d4927fe4d7532bff7f2360789f1290b4a3e6e9907d091b4061c9c87a1c46d4bb13d60519b0a70211acfb84fa3fd31ebdbed10779844440f86cff0c1cb8188c7e549d44a175c2805e5474a624301405ca8b5969963f6ef956da0f0c4b8eefd2a9cd9eaf1825540eea76eae03337701581d0ca366b2a4a8fb6b8c3f52f5858a2ca6d3bcfec005c3183b634810735a0f6e470dce8d9da8b96ddb8f86a67a39a70d955a37918f81499016af8f44b73a26683674457d206905df84cde6f859aa24ff1c95a23047c79da4eda1e52951c90059c80896b0885e79ae7bf7e0351b707f62d4c7b40b5ea9038563242ead18b7cbe64ccb07984c9e9fd8e822c5bea73e80d25cf99301df72d341892c709454f16c115068f93d7b036de7922cd996fcd5a67f69be99c7e16af06065dc6876167833c9ede293b7d9582266b12f360dbc3a8686a6b47989c717c8d8589ff99195e7f186aafab1327c4c0424d0a8fc73aaee79a97a7cc9df952b1d5c06ea145d113ebf98bc9619411f56fae726e785e346e27d1ae96e58b102470a42000ea9222d58a03d014c5431701a918216e87c433a929ed7f5d37097dfa721da22466689dc5fcd6572f2e1c14421a3b9865233375622ecacda1badc94b913172289f03a895a12df94ab3608e13c2d60a702706de6c341227e5e1288e5759dce4bf687e96be18953722fe8c80902be281129de0cdf44ff1893654c367541192eddbafc71f12a1c60461c87a085ea00f64a35f84cef22126bbf1905c81d5e32dc47df07094c3a4340b9b10874a0a1872b61a600b26d516a7af040451e3027b0592b7299538362366bf0a064c2c4ec067bb4d2e0dc46314e8e13cf78460e84b2ab294ab0b5db4a0186f9423ce6d8a70e22493d4538fd68b48b1ffe29f07d5e34a597830827d4c3d63bb6ee0b9e554d898624ebd81266d1c93fec58153c0881c9b6a4f1df10c4111ec26d8b849096c5945d427fc3a918ed7a650907e0ef50ce646c11819a90cbf32c1d6abe1591d26dbd93773ea20ac7f037a6cd62c87cd0bee1d15fbe7f18f8a829ee91267b432b09b40bd7b93a2aed3f8e59d9c1ebc92e6ba99da540d0f87bfa088c976df1dafdcaaf2ccc747f2c8f14b277d23abf2e0fcc8e48ba16f37e352fc65ef294f77da9d6c8fe88d1e59c23ac76c95cba97f29a890becd784b9f1c97f368e71d3ae696fcf5ca48f3ffa6f6297caea69bbc158e67debd10315d960ad09f3c9df7d367efd0c3e086a33883abddbda1636add0b8d16328f22595f915f1c05d766b68cd5017763afe39836623bb42618ffbcacda10fca203ce60fecb779a282cc3e35f5cea39092acc5f58300c20d13aebe76f9d47d29d4ce2081a9f2d93d4d749f051d206e5d44833515f014798a4d41e00f053f22e435148e91abe57d39619b61c3bfd2730650e5c9139eccfba965f36704a4f24bda33d2f4ff034434eec035e74e99e3aa117c3359b217261a254c50f544209076643c740e44284598809cd52554617db667b3339c8424dafcaf6b10269f8c9548a9ec05e9f6fbca2f59c2ddb8f6cca9a2820872a9ef0f122d8af0381919e4bfd290795d0dd5c9ba9c9cb582c22b007f088ce8522f5db7ecfa6e2237a307b14c10bd074ae9a7377c03672ccc5cf1d9c5baa9e4b39fba6ecba8c1b51b3d2e24f277c4d3cde2b5651ffa524c562e4e0b0607768f46c2505a0f5d6c6bf92b94cdc5864bd4d11a4f274001bbc7c7793bafcadd81f9422dc7123aa683402c8598f1dadc571b8f4ae971caf143f2418f2e07df0beebe2f40a7379dd9f0b0ca21b0c814669db768174f402824bc02d6206629abf2728bdae843bb26588ba4f42c5c6fe479084b28e220cd99ee0552b59ac168eeb1948776d31e48a0eeb07cd08f629c1492af6e304346369d5a140f13696bdf242cc57ea9c66f6ddf3f926398c89b782f3ab9c8fc0a21a9026ec029482d2892562e6728f4dc272b8d3d5a7483dead57f34c1927635398a84eec66faf227785d31d72127ca81713e2b6bd5752edf23dcd2f6be74884441f4d9dc464e03919adcc201e8316efaf2e488e82900a80b71ca1fc19a8dab4d95667e4f2d3ca8da770cc445ac2b8cb05efe24060f7fe5084e1bbe2a563042ef4b6edcdc462035ba31e84cbc0f3021dfee90ca78c4acbf46a3ec15312171494e558c51d56b8976c26a668d1d488bbe1280283f12c63ef3be148c38c204ff8aed77aead4d5cac3077d2ed454cbf03ccd675fd5006d9593edd68ff013c674e4169fdad21b938bd952efb4f13c2d1ab30db54ad55ce92743ea57dd8202dc3c1e2647832c5578c3ad4358cf37dd01522e3de358a16268ccf19eea0f55378b2596a9012496fce0475b962ac92d79e684c4fbc3887f23693781a9b31c65e3a2790d09fba56de41ea7a7bdf7dcc879e716e5eb61f15a1332ed64bc104516dcff6afb7679676fd329d77ef24eb1c91628025bc24001f7ea543a706418bf9a9c40c9df6c8b8632289efd17b70846e0acd5957531e01d43b0338df9d9414042bb4700abf1efef4e8b699e254b80e580009ae9247a2230a2ad5aecd5989c4014a4e45eb7c1c7090872674ef7edaf5a38eebf41e0bc917c5b3d215266a8ea8449d2a0dc840e83b7e1d28475e165bda6dece67683d363255447c415427ca66cc867332c888a52672190ee3cdefe9a55da83168f7d72fbee804d37695f6462c05a9090eede29499e915625ed99154da68806b963b3dcf6834b114925691fa293f5674a0498684045dd0cb071cb0daf49e557fcb2bb268a4da75d99d0f86f38cce76c2204cc961514f13af0a42e253f3cf1f04320316b59e1b11b16f0d930041cb9202e21a50f4fab2cb3bf35d682675dbf21c508b378748cbc422bca98cc777eb617ab0306af768ccd551d49807ac6937cfa740141fcadd448a2e3c71a9ba7c50d49d5d31281f8881c97e06a3e572ad4a1389bb21731230ed55e225fc4d84ce1cf61d357708ebddb518def97ed92db88a57fb4cdcc2698626703f1807bb5c019f713cd56247cd9de2a90ca80f802d9b73e3fdf55ede5dbc072953af560bcc542580ed663e3f10970fbe8d3dcaba0650c72da430faac7afd05964185d1a319ab86dfccb7507bf534c047b1059f6aa3db50328b69fefbd58b8d3d19d5be859732717fc59edb68b9b1ba500c3f12487935ab61f93c2efd9a1680d8b04f9c5a8213ef8b6a9b139ba23cbd39da287be88c98386e030f293343d94ebfb2c0587d2615d8088ab1193fcf0b15f7c313d10a7f73c04e82ca8c28888fda26b3d3a80145db0db4fefab54cf4d5b52050c5fc2a2d212c52634c1760bbb31b203675b1341fa8def79f23c2645411a6ca1936cc62b79f4a8de023ea2eb287b09d9638fac3718bed52b0ecd1ce2a8382d0ade43d08230aac937146cfddec8d7329c0cc7bafaac12bf430741c36596d7b64eef081c4421d6d54128e1be0638bd85a6349f000ad4e83ecd61eb57cda7c391fa54a265739ab927356e1a2135bf25f304b914c83e87a1fee3884d2cd374f12b5ed1ca5790857cc4bbcc8f1087f4517fb605403ac7de1d6830b4b49271668dca9cfc9169959a6b2c782c1f5db080ca19e013ac99592d690d90c5be986072b705dcb583e1ea8300f1fa67c2cc5fcc3857b5bd856499279357b340def18a8c6d05a52d546d8f3b6727634998e610e08f695a6e20bb756d636db2a2e719ff80ea03e88aee9208741d0e242b2096fc417a9b2beab03d93f30717458b034d2bd2eaed668754bf959e0ecfe98e17ec88de7eb2ad3ddd37845f736183b7d3b5bee00a0f784f0864dae6d092e1fe8af993c108928fd679b27a5f3b043e84a1fb5dd23f14b47b5d65ae7e127eed1763b39cf7127c4edfa9161810c013c999bb8a3a49ffc34e2f3cad2c9989f660c5846180443560de3181a5bd2679477edfb92da913cc67c845ea42b87a117243479add7b27dc743172481072fc0847829075a4ffa8e1779c016519afd7591030d85f9b9605f481895fa43b1a8ff73bdbbdb8862b178ddf8969a70d14419af5b6fa871feab87c4f808b68f13ce1ad05444137266619827ca199b37ba4c7a8c80ec46b7d2a4d9b390a94967abeaaba0608a5edad8c419e17977dd96625adcb7bc9cb92ad2e6fcddb1334cec48960a185682f133fec1040f3f1b0e93180da657792b1134e038658710c249a3981a4c781cbeb6ca000585fb242836a099fec8707d836678e8f7495ebbc296874c0a9409b00776303228ad61bd5b997d7229cf4780e528d5ac69401316c9638f163a15bdad8694e628406112d4a9e5f277ab88b23cb7c68bcc688381d1b659953534f26a589244b3872459577a6522364d86e864a32d85fa99a44ec146d1ad6923a6fb7a796760f31b2e28d584ab813f0e0ae8b5e6e5ec7e7ec93d469d8090ef4467190b68ac7f0c8cd986962efdd0808a7390469b6276b7258d16d883879240f8e598fd8ff5f0badea9775fb31a932e232dfb212c223a27322758c1908703881b384576158e28bf2e0afdc7a59504b146f31936e4633555bb63c7033746d602f3b87f201aa5d064848777271d8035b2dd1523f41ce7f219aab232bb5fb5e1632f47c3221360cd090d35b0c7bb84a069439d0f27727117e8a59d06d348051a746f2432e129f60b66dbc82089d54e5bc064a7629d666303afb1f732689f7e74a7457a01655a50c18a2bd32d9573f861343be4693d7a3bb1f4001ef0713e8dfee0f45f254e10349c416207199bd38f9fb8763fc39f323cc0a4c45fa1046da746f0ccab220f5dd456220cf4698f3c38d701b1eb2ccc6f8b394c29df366f6050f3bee46b9a4bc5a2a8ee50fa860fe5a9b947bde6b1ae6a1bc94be707d72866e9da7f9c84e42348fd8919b75f70a43e1e9810f5b5c93f9b7c2ac661d8b6bd97976a71cbf00c7ee2b36b5385a270d268e3a168343b852345eab5fde4fcb902f47b87f3b1f840d57a5afbc92fbb737e6201ff5102f8ad71fa86b92798adb25daf49733ddf5da69c940d962bb9f714868a40ed2318c7b3dcf918f9c008144e521a1b939306b6e2ef7d478f7746a434722086533484651c4a69b5956f3ec0c4da8fe96e0669548125ae6382f23bc0a83ae7af31c7271ed1dd2b7c792026772411d5deabacee58ce335f7f368cc1342b70a933c2871fc71a07a6bd181e132a674d31736d6bb2cba7c35f491001b32bb4ce9a157f40f696cbcca1bf5de9ce95042f7088a3fd35ff777065d9f9ad09860784a990f7d2fd2fcd2b30ef219ae3cdb8e92fb843c64abe619db490d19230a1fea6b851fc079265eccce108402512a0ba02cf0fc0f3e64d0aae5bee23aaa53dae89ca0d86c930520bfbfd20873b0b79e08e0e405a5592947cbb7808b340b7889530a3819c21071d8ccbe1a60c8ec30049a4552ca4b0e790edb73337ae152883141cf198660d45e69cd12ed571753ba639c1e8c3889c41eac7179c5e574d9d95e78a2923fb576b0635b47f5b615a0e492c806d42884c2fdf477f2ee6b2b2a9d281dc3ff11563b6f86b697a8494f9ac3ba90e8ac4f8b9cc1e5d41938be45a368f126a6d1fda03d60a3d622dc75e776be4e90c2d2c6e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb490c3b6a0d586bb9dfc845b236cd88877065f84483e3bea2153b4b831c34c3055a449d1cc40adc7e874d81fae1ab82c35ce2a0a84cae7141a582eca2b26e94fce81b0f8d115921fdaeee8ed6c5f2f8ba09da74658bc3f1cabeccfc908a891b04354b2d9bafdf8fea757bab853b1cac4c7df00b2256460e95c7193a028e1917dce5a517d0766fad40dd7abb8dfc75b687bf505cea3bf4a099a14f67ed23b18b15d94ab6def9ab2eafab299f858750ada144f1ad8aa9e42828bbe7dd063003eee8189bda802c3e35623236807dc79ef77f294376add03f2970d4fa96ea0fdd4fa12235fe0f36703db6976777df545a48790a918cb27dc48e3017e5baae6c4a0917794cb58892c0b0361499056ffefb9a7a4a3de3b3044d3618f9c277719126154309e80944c93f907bff96183db70e139d0887c167d4ed6047f8c24a4e703ec34feb912fcc11dd1f8b605914b19fd67e4bf66a19b57b1785b1b0664b81a6cd2946d6d975091465cef959e073fb2ebed32d043b06727f31d316ff152731ab8d7b39d0cb8b225676c8487997f15132b44256786f2b0cb73950832080a884d31c1a66b6afa1792e427bac44a074273293fb9a1c9f7eafb75ceec91121930cf0e5e58ee17eb0afb848744651f08d895e5ea0eea2ec6e692cd11e988fd8ceb24c996fc3fe2244f9a8c0a9e09b39ea53083ba528ddb4c7d4366aead52621621b03d9c037bb0e302a80bc4bd241b4c28ed1fe72a0e4738e9c2da636b9bda1be63f446cea1e158a6010210a214b120e06fd3e478982c43f588917d1d0fbd902af162b0d096b8d0de22cfe0d0e9e28f8defb07ed3ea9566aa218619912817b9c48f2876de538f9e8914d01ed80e90541a91004b6b5cb86dc9855fc5930f1580a7878088be094b0146a1cd7b177d7b250c265e27a65b154e24f193a7ef85682f7ebc62a0bbe64aea8322d23b9784eb36af0b639c9738ad35cd71f5cb79b3acea344a48ae19f0321a8f2c8863fdc7c7efb652cd25eb62a3120ebe02c0450c30735b839c813427a20da414c79a46a3304f60b896a6b3da0bb0b63c590d16593e70f0e13cc70b7bb6cbb927fa47699e24841fb7c297355fd24f40c835d42c2fe873f8eec453cf784f32af74f6596f6f832397eab7f15c793af1a06a2dfed2910533b65a78a78a422cee268c7c30e91e3b88333dc55b86c9c472d007f86d5762f6f461117dca84de98d76fbf811c4179dfd9775d3aa635e005f4d8fa251cdd4c8b50987f5eb15bf1653b6cb7dab9742ddf9b1faaebf1ceadf760731dcb3e3028f9e89c156fad6cdc22f91501b7eb343884cd47243de731000d4628ec0620458e4bd2226e25fc922e8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855mods-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(ppc-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.17)(64bit)libcrypt.so.1()(64bit)libcrypt.so.1(GLIBC_2.17)(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.17)(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.17)(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/shfreeradiusnebbiolo 1670847415  !"#$%&'()*+,-./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_Updatedrpmxz5ppc64le-suse-linux  !"#$%&'()*+,-./0123456789:;<=>?@?AABBBBBBBBBBBBBCBBBBBBBBBBBBBBBBDDASCII textdirectorymakefile script, ASCII textPOSIX shell script, ASCII text executableUTF-8 Unicode textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=ce50b10ef4406c3bd5a958dd7c863de389cb3469, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=1bfd40fbddeefcc068f0b0bef2b6ae4c47cdef1c, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=5574a26dc24da255016501bf7ffaea905c1e7106, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=2ab261c9f9649b4b88d558594b82c10ba78a65e1, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=091a6ba3b5acacedd167c44e5a890ec98b7b82fd, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=8913e83f497b3cc6d49dd65279b2c8bd72b8d177, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=1c82ee1724a8e10fac8a54735d066ade9c93d8b7, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e475b5409c0e3686b7d1f5e67e9287009f2ee354, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=9c2e622d54028b2f7d0a0584ba845cec36709945, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=ec7cbd419b370ba08064d7af6629829e718f5b9f, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=6d795cb169fd2e88adbbf0fbbd2dfeedfdac4aae, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=ba8033ac67010fd710224e411d1e8c7909539519, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=4d8f5075554395abafd5e89b209c4e25e7e16db2, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=23b7ee99a92d20fe01c07f3ad171eb593a4bde2a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e05a301d9c3ebe3bbc6620aae09b5afbe37130f5, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=50ac70097e53993a8b614389788328303d197c52, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b99e15af1e904c7bfe28b559fa295f0b518c1427, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=a9b3d87d14c43673f9edaa69a3d2324c366e265b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=faa09798a440c4f0b795ea82b3598bc0f66ab087, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=594dc5abfdff8330e8db05d633a176e1a454eabf, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=5f5e81180df9fccc2f17fdacf94ff204e5287d42, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=7d65b3f88cbd3b70dcec81591306b6e34ed249ca, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e57884c4778b40692df0103468f4223a5aaf8e7a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=a12bdfb914ea1dbf99f245abde4ebcea65cf2ccb, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=6ace9d1d56970fffdb1a54b9aca478b5a04c03b1, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=fc647b8175b32261b770940f2131230c34f789e9, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=2d0bd2e46d6c233598b0341d77f8c14aa40dc28e, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=7bc2ca1836d427fdb08c6645340fefd3c437b1c8, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=4242c7cb5786181618e015a44762c151cef162c5, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=41075c27378439cd6e8b92968b67f622cdcb53b3, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=abbc43ae75cd75a68610826c97d17d4eae62695c, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=9dcd92a749353cebc7fa5d1d023e0fad42876cb6, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e218acc96e5bf4797aa3726597a8a70e10bc51c2, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b11ad56d0ac5459e3227e6648abdc5aead3ddbd9, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=5692148ba53e2ec091350473e9d694107516aead, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=1d4009366ef2f00e61f9359744eb6b91b5aedcdb, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=4fe396b7812f78d878bbc2d7e900ecf440b856a9, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=523d57fba7e28f01a4d0a42892ead0e3eb01a8d7, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=65cecfaf9b099cbc64ecb52b4ecb5ac562dceb6c, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b5697aaed7f286934a382359ad3e5ebce24d582d, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=b5ca0424209e2bf76ba6240d60651f88e8e53d2f, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=2f8ca2585f49bc96d19718835b6434fe58ecc3ea, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=68f4cd2e041f480a469bb5b62c9c07b1dd34828f, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=0b087167286755ff08b8fdb1a208307765301e89, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=8ec7ec8ad7804471df77314777a113bd17b8a495, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=056a1d351be5117e2490eb6e964a02af44101241, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=f546cc7c536025e7ce257616f1bf2a880e05efb9, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e02f3e336534bb8cca974343d1578a13189e6b05, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=396de635f9f57cd4e3d227b9529930e2ad1e5559, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=1c51f9d91310d75d370d0b87c307b34e3669b4a2, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=ca5c531101842bb992448fdc5d8d1015788bab37, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=1c3c875cb51908685aac64fd40bda7b338b1f09d, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e7e8f10d3763cbd8f0d64f215cae2d642dd21afc, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=0394ce46bae45b29a6adbf4ebf7461dda81785f1, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=230b7204695150e68ecd53c31f372fa3ad806f4d, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=42ce58d1148a6a1dd7214ebf638504411e55f318, strippedPerl script text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, BuildID[sha1]=ccb0bf5f4870ccb544039c4a1906dda5a9b345ac, for GNU/Linux 3.10.0, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, BuildID[sha1]=8391fcf0af076f8240b8acff883c66a1364c8751, for GNU/Linux 3.10.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 !#%(*,/2468:=@CFIKMOQTVX]eikmoqsuwy{~RR RR R R R R R R R!RR R RRR R RR R!RR R RR R R R RR R R R R R R R RR R R R R R RR R RR R R R R R R R R R RR R RR R RR R RR R RR R R R R R R R R R RR R R R R R$R#R R"R R!R RRR R RR RR RR R R R R R R R R R R R R R R R R R R R RR R R R RR R R R R R R R R R R R R R RR R R R RRRR RRRRR!R RRR RR RRR R R!RR RRR RR RR RRRRR!R RRR RR RRR R rs3\awlogrotateutf-83dd3290b17766bc00c7b4b2c7c35a12f2de74b1a0bac2c4fda1c8675815d7579?7zXZ !t/]"k%T܍{ȳ>C9%7, [U:9]kp\6EWWl!fzQ~3 '2QAHxNp&DߢR9)lֿjqM AVl?2<` I}y7}lv4=/uβa02>/?; րdh(KkW$H/g E1oP2^ 0C]ҏosBE٠fk] 9߈.sp"2r!/qTFEꂊ`ēόf%JR% njD6,K)9S 3}<.F~B|GIҺ#]EVa=F_ +we"jLy6Ps!)Zc8%-J??)f.lVz:h ZNJZH Ö-{֣e~fvr'I~ +}EtB)",n;궋V$l\cʔ$]jfD@;՛I$;fɹ eU4w:&l|y[.Zp?. ~x//< j;֨q%#NZ,2"ٱX,֘Z&R}i(7`:79ԑwKj:ա,`N߮ŅwlY/ݛCNtmft}6=$-M,N#uo1k{'9Hȗ$7EV6ʹ buW4~&XOoSniNjV[KukF֮5kB}ԭ=Sg=N [P(zL$p4O司: ֞" 5!ݲ0huHyasks#FľJ]PAyL~x !REN h0Y;SCoHFn9AHx`}Ny^ch11#9[TFp:\^LYi!_A'%|tpIŹO/'wÐTVzb,V$"sv'D}t CJ:V:q)Q K>EWQ6nDO3Q&J TsZSG\3{;r6/ɷwUUkH8(3SK{d9rVYHgCtK.6R~f5v[6c8%]fnH;`o Clq~,OeNrXU㪮+t&-xws%_'8CΉ qKi#˛s'cO1h`z%7 sBZ *BAHjۨ,~QP#L!Y} »׫Ħ]=j/"끈zOx(M6 46戞+QU=':q=1Ӧ =/ZC<TF@Gk} ^h nLʝ+Lnd}Gy -X-(tuvZ.딠H#' "iiFrHs43IWL&n]`˜@ 2΅cz:GGUz"VIލ "]ّ7w fEj(@ Ry1#ǻa9e/˟C,aN!7zo;ɫR۹L"CہfY`F0LkHlHqeKM3} =GpYwS<7xu/UHLy*.*RX=[xL;G9J5XLu c^6ɑGmÄKs&ͅ5Ȍ$m9x_{IU"Y݊ͬ}ΒtRoיz$6EOcT 2xj:j!V[;DScdQhRBi vS;|T\"\OٺyZ|obCKH`_[d\l~Qy˸ڪ{/PloQ[[y7:iRoќ#o=Fk4vgqF8 +9&k(6= zW1*<1h,8u7޻G`s|#X/93 kIy;(NXM%QHz%(`Eg`Cţm{â@5(9&s.q:NlkpRLGEPk|IU5NTԽ-e0dUS*zCV7 (4I-?|i]ڞS]Dҹ^)}h ?~k_W _"6 I+<W 4 ma_QKDx)[Q?uPWJ\#~zF {"ʝoS%t+U:P|H|F!g݋?WːŻ^p\,44Ljyut8<ީgB#u} Km:U8dvX8Sr|Ka>x0W$h# ! mC |5J|njuArCEQ_lX>V9^5s]fυgN2+P;;MZQ8NmkaIWmN$\?Z%ߞa-=Bj yr+9աUݫ87u97!*Z{xJvfg7ڰ'7E*U':AL!ΌIN`2m㺤:0+!:9;yxeyz7]־>mP1ɗ0?~+㿃^$(m>m&>)Q9l4M_Lth,I[d*Ef@qޫM;Љ{R.<}5 -o7d@}Fq|-Kk kN2vTvi]n䬵\ZdeZE=q2W,-\t(ѫ 7H),sP-ˢ&LBLHuxP-^ϽW^^=tb[D4ˡo:ym:G![F\s%&z.^`4qhFXv΀RX58ͻ7 G:E&*3ŷJM6S/C;Z]Y ~^oüUU9e 'G{hX24'zyqEVX)cb__z ^PSAYN-U0!=v""xt{fiZ[3! 3X虃ɋrXoa#Vɶ_V= <ն6= {~6ڠwR)Ad-Plxf)Ω% Anτ:rdP{?.b 6nb;6z$YKd%ɉB67 *!M2nv  JDY[?#yyGM!,WpVe"{}z~`FTFs7F?唃G\%oT$ݜVF[;[$d\Ufa}|=oư\'Z׉i=~`. WCپ |S -p%:ccr|;E[QE!ߥ@{Ƞz ,uƛAWp6B6rֱ&3[Gbki^ƣdDcQ1%C-Jʠqz#gj2n N+,A~6BRV<5Ym'z5GZwd)J`Ozl>WiF|fFoM<}k0YvʞO*m-O^/sf4NK9OT 1 U&smuԊ1?4~4: Zs4gFV`[2F(ڠYbV0Q3ue$AP\;m?zN>7BE3X-ܛzN=_sG9rYvZ Or8d"2e)r: 72h;vIQ6sW-phtT`!Η6ΞS5Ĝc(:[fjoE_4+_E5ٮEZ7mg: 'RťvG#!$ 6x f¢:Y{~[c ~%N]n:V ts{QoY(#UCIzjۇyZtXSFI+<̜V6m~ۗ&_E4`۠c~1TQXх 8sY=TuiJ̛y%|P/=N3`ێv2ac`\1C0оgdsG`ۯ@aZk"x!r~nCC )^XLrQ:S!z eB'> .ں+ڑd^\WfvS;iws3;YݸPC,mU,L 0d (ͤ|J叴"1eP 73A{|,8s%FpY2:Oyx"2El<&IH/pb5g0o΍ _a{OݜKNѹ4I(OW" {i}s ?`C#:NK6+!^_f=qֆ%yIPOr Dl$'OrnFhC9wpM ;jPDWC%}kH qRӈ7zӤͯyy !@lpq LE95!tݙ.=&_"QDǶij^϶ъŒ٤S5tO ] :b|,P3^,Qƚ\RXsH+MFFY:q`ЅgѿRyy);2AI,=2{ ga'J'I[zEʓ7E:ds@;5 oFJ56a+)V`؂5$8k`X^ْTѡ {ԋiKk=Z(;=uehŋxu#泈lK*ʙG|*~B|iE+7YN_":D8/=w:OmoJ/o~Ԫ K P+!p_MRm Fo k~ ݑfp7V(єhQӧ=j.ܜ/ `R A!?Uy7,T\IOg sR&'51# 9(%D . _t=)ް蘀i[(w(L:bqʍ[ݚ:%]=؏Ǩ'sħEOw#lS`oKmPn}N.k ^bEd_|ֽ,i"of78˯((%3>TEl>? @ ˥"0ҭ{qa4Xfѳ>pxRwQt5nk©:O_f͎HHr-;ϕ@LkSa(s)AWv5ފmx{?Bop{_ /^A_"YM UJ1,z;qP(]7=D\`%JF$ P*[?CVA&$Rw\c*[-<nk\*7 +m3ٍ1c*"W9c4jz7yYy9NwezxrAZ>:I1AÞaP$eg4`a'"|2E <ƺn2+ L(K~%eE<"Ftm$LfS׬GǸpLw@v/G?9KS.AF ˸ F>E ɇo!1M$#A8ZWYS.٨ZdR"蝙Vnm h#8 Қ[|Rq#6";3\sRȘU嚔.ķ(iu'n@BьFK(Ԍq&(Ϸhr= x-rÞUUfEG(0dAr)nw)G5w. ѭ0[#TA54k}f}|ildȆ LXGM،0@wѼf'Ŵ_V%1vR 2D\=>-=vChYNF>W{!af{Ozc^nw|gЇ(=| !rDfae=$EU0{,Nwiix R\mL?&Üt@wB@ id6(eFd`|Zg&-p |V)'!9 t[\H~- (2Yuq2?!aVDA oD4)%rvl ] q$MR37\fUlxNWߟ*cwva-qB%"#H9.΢em|0ǜ,':'Ecy @lχ'X2cAF !hm>"Z6Sx5AG$"H$ET`)s>#K@}l׃JLAؕ Fb*4l) 9|^M_ģ|zJ+4@FUlDʟ㪓$V;(abe {6e'[F&(e(k1(G!2a am(TEj6jqg9_mn;Yit4`ƀr닾.U)S<[*}{awb&0o0#9/ެ*$\AFȞkd`ؚ $9/YDŽWUU!Kb+ kaѬȏtl:z/ȉwI ~WG2 \H'DTS,Y-B٧ xzݦfIO0hTI.N\<$ ՁRMScf9!:7"()k P> a yOay [!&btjĞc\`y73qʇVB7Mbn"UU@=(P t88~O) lG,JC20HN:9k~ m8Nk#̀h_A/sэ!^h_l&)StD7-ocIl)XDXf܃m/ ] \A!C;Xm: axly;XoYR~BF!5?Qg3gFJx h*f{ށ&{:r&Ϗfw{ukbar/[v Hah/g?} T@UiLa5 a(Me\+OjJrY7M.!+ﺩ(li\z0Va3@H/]ydʼnOTT#JjҫjViT {ż^dkSmI3Z%{<Չ5)c]+7(v:*_6LӴrB[{/g$:`ixq;z, <[٨yS;pn-i" Rtb|g,iF|^\O vl9ԭ@ |'t:WLaڀ=#b:]LjX؞g$g}>&{B̅W@zPɹq fblꑅ[VSrobK@ך_Y @|XfSH3 ϿS*# eP!>̆*֙FoSn5[-83mn%$eW!1k9Cb̢{oU=.9H>0Nf-[+<2<ہڵ n6vq"V?Dwr;*ey/D|uNI#Q&=8aHe|od l6-ognMs:Z$-v81w({H`Ogгh1Õr<ݮJX? *o-]!%KCE߻ *|eRnBƲu*vߚt$28ӓrWP,1E%_oKAkX#~_wMkGѴ %h'aݱvaSzOwg\ⳮ44\ _=A(LWIiפLhkڤ* \AѣּFY3OI'OHo W9^u$5<y&DRݷJU.TJw k2wYCK=wɼdžNcUׂem~*,]?yL ɑk\:Q?dME{31 "#h FN`I:M$D3-NYi帺mm3@a wfi낤Xj#I齘5} 7 ."dE/p='2'NJLIN\yfZȦtSہLzxR8oߗn *LQ_ŵp]^=p ؙ6<.0 y7b-OB m5U%2}0FrL(g,K%+6.>RCR*.F9N;-b+Lh?#PY4;1YSͷ's%{Vy*P;a*۸lz."Б]M݁*r|G𸷠̫XH Ü;\?u)$[F=iI i> u@>8rzy;MD;(n|P+NVyue/ڈҖn㑀N=k6EeaS5mJ^ƀ/t/}E筈%ks^EF3cupgD-zHhU8#-b0JnC@z޵RJ E,ތɽ7.بzR8$Q,ȭĚ$q~N185uRl T(#Xax|/(c+2L5؋ywU9܆iT{ѻ98l5 iwЕ;M-Ps,K\W.Mhb%"|'hM10KѦhw5‘d1Dڃ`YCX?a2oCbXC>5uD"23xMYЀtLfuĺ~hiFYxEigq DRFsN"غcQtey[-,#t]\&ۙc?24SH;[C34Hn4)؋̋ L%]٬8aZI;HPbMV|CrMLkxG&7Y2uׅ#:70~u1>;a,~9w\Lفh yZ::7P=*ue=1i2LUx! PL[HWː=7./ܷv$5<(YJ"-]+.U>5-sO&Τh}ʇ Քsȗָl(`HV5'Lq [!?n3jrp  qrulvAVئb%bK9M_;eѧq!1\b|n_}4ca (419 $:Ej K/i $q8YgV}@nijfsVqKRjd0ϖt0f7+A/p4(p{OB,jKT\4neJg1m5\JL|!6C"ea-HE S`\ZX:-N 9E6l!/l{w/ZrGޫWNC%LT^zpSMKP5$4p-͑p~1n~ u| 5<!u&}`]Ig29ũ$ M{ L=RB}o]4ynZUVfQ ("~gutr+^LXrdr) A4*(h '+^ETT&IkX7;ţtMEHiZ7)7i/ dѧU.`͹O e@qu&IAVeRO([nA.z.o"I\N )@Fk?? 3) gW]ȗ26R(9ld*v* "|NsVFx$;#^Gl!ԦfS.3&]*U闟`R{q#G]kZ/ƚywV-DFZ)ւ Ыԫv(R?Jd4}L?sJw%c Nkժ<"S"t؈ÈQ\PuG%rk6plta\x̛Լ>BM=~,! nK(1$ ȩZy^RYْLo婺8N!LRISxvdwK a22{ taYðht}Po> 1vv(./cFT}vl Ig Ui/G" L_Xo.} + ⍮ԛkQkgegYr-]®GD4P??+vTA'3ȾћR{ O$YTB `H8GY 򶢧>Dp9Pҗ4瑧 ' $3 mZ5LJ}@Z>BleѾ,GΚ2d7u*;ӎﯟ(7=l-A yB@&Qf?#C FfXؙ!=Bdc#oLzWG1rgk* LGh?jb(xLEOUO%x`)U͡1g~ ުJ,_)*[\ "zse ]1DZTς2#0Bp/=lo˔@G8 u#\+/?)%!ҡqMQmw|ysOZ d]PujhÒT{z|@5a)2xϢf]ozgP2хVGs|iNҳqW/F0=0if)fAJ@"6r}@%B3B@_sI~LI6,+Ypȣt!pc'0QoCW^JZe $=؇W^oZ'$޶/C%w\09>9ȯyt`ioBQ#O`E~[tjcn-'k KvZ$1c őrpx:4&tYaĘOE.(u$tLX MIϾX_?fX`MژzBTB9P/m)SNK+访{ҳt.gܒbs,Nr.bgǂ'] >2@s?d/z=S15cItHi5R5ۥR$%Ė~en Dw &hМ.E{B.n3bP#uפ&6ZC20ԳÍ3*hpZE#NDUD*=mo Jrt_W&Zorю1Mh(WP뗗BwlPf8h)Aƙz@msZvvD/ѱ"e/ſۀ'{3dHIsJ1.VEC9^e0P5Y!>vۙ Pq~$p IWoʳ_0jsJ{jn̏rkvW/V0I8fF9BVRPWe~A"\'ڄRlt ^1KKI.Z_R6kb|7 8P l .*Qp$0IQ{h a9u>JkD 5vw%X9#lHySӒy7Pãp2LLsщ3@~G<'+z~XrRb60 MCOh*9jvBk!z?2\b|]_qw~u `zpb&ϐu2'akP?(kmT]-l3i21w+ CŐ>cadwe{~jTzea0L"@F4/>|Rr6a}ڎ'qR.A/Za|e\-9c--^v[S0F$wE*5D<](Am-nʢKD_ygh T3Tw^sӖKnzd3ځ1Hn*9=HԵ@6''gTy\ A0a+S- {L:TEf[MrE*ndODJݗz1vAZ{.?)[}XvfC攖$Xۉ4m3A W"t/QDR(]q'HuPG#7 }9 S2 9~`.5vZHl 5tC$dhH5F!eT/j& %G`'1Q~5c4aC2pe>bǎ;A{ G#Pj?TCGM!pchK+lYH$3+cqnc0 To鄎7"ja{.jP^KMݒbszx6$[dgUc~[BThgPW(` mhs?[ A}d_*\|AVq'nߕJcj!ޑew;L;a 8O*ɞij3}|V&{D#,a=١^9OyԀZB3$VBd T^v1 68 nZێ&tNh|FgD&y*.t8A d"7Y Y ^eQw7x$4wjpJ]-rOV=mVk>`]4S=7#hO^XJ_+GazCkM.j&J|+=X(_u ,KL1vWe%)!͟J᫔:D4o~Jޘ3ى~4*,ξ<P.c5*}nA>7l^ n)Wo%yly7Xj1hIUީhPZa9{ЄYNu/mSb[3̬džƚ ZdSFb _иbww>*,}q6e}Y+qQ_3"PU 6(rhB;hH =“ }*4&L</iUbޛ]PolfMN͕sL6Eu ,qsղb7 &t$U~()( \rԌ^oiml-UxySQgxn/i1H*y2TQ'~YokV!;(x7VdFiQGz9hȢѿXzs%L3?6 UCpz!}˜- fҹ}4u8t嫁 dx9x_~EFQ#4+-b3nPϣ1$E>x@e^QN+;!;"{eZ4~afEb4f_J}7iĿD ~l&줏{^6FZxQlibTP~S uֽ_Ne&>Qef"^oy`GIOLFݾ$zjjı=EL4#M!xB]Ds+>c:ռUH˞KM[/ޓQݠBCx~yzctrNi0>؟a۲ŞPhOv,AS47M:P؁e"+QyL 4D•v폶ϲfr K/7h5x)!qyQKnˌN3|-6zg Nk/q6q4ArF.pM$p-*ۡvQKAhwu 7Cl_x 6 Ǘ^ 'kDi%C[p#RX2-#$P3A/]aa\mOYp,/IB wEOHB h˪ZO:D%2NIւ= y5c9BǙÖM6HsSŷw7`'ɵ`N;71ᣚ p5(ǰx "Ŵwcmnw `$t'9cǷfC<<aE<<4׿Ps:<ܩM΁\gpY-ngV-!h>Gu{̾"zt hsl}! C|_=Qhm_M ٮٖ-Gri9( 0͊rmQҿbhbzU7n< |Gئ Vsj,FCA紈L|Άjso^ТȭCwܵ;x !m6nEm2@Eݤ4v@,jLB6-,CQ^ e4YסJ֡y5u^g!]ݴӬaTɅ%)<٫>`'$rw{ 3IL?]j$ek|0g}Mn >en(5fyb]=P&kԔ>YJ*RwIpAȣ%,*(JPG Ǻ p7jigi[ Rw#0]rxv9pN"cJeT$75qw x\ /KӯսEiU$:QWuffICnb5=,sj=Rg)m87qWH ^tͼSZ呃r.$4fgRq~0~PozLN8Zٴv Nj8:ނFLde@5WMŽj([f%M^i2?1wwT$jnU\)]eRM"ge϶W?C%y2|fLu!n'I`P9{ϼ: [c Eez <@Yǂ S& sy2[EH FQ˰iSNi>}7J')[c &蜖D p! a_ w=w̵pD//gN4uyI6؎WeOuկY:34hHLTm<WmF?y;nNɯ:PZn`#ӳןra7RKTA % ]~[MK(ma: l*Xh0D]{IjЧ*o ̇ X TPNC0M!@9#@l{/w3$v'Q4#J$q5CBޅG0gky*~A]DG1moEZ@*|p˓%6Xze?1B[nJ:dpnTBԲw =V@|cbv4B 9k.}$'c}77瓹P>Q.HKbylYM6]>OIo fN܃heurĂ۱4L9?]rxcIH6{&_*Y߮ :`&[j[X*ϙx)\^\K#7ɂVc b#:cH$,O]1#KƧ?#ĵLQ־; v2XNRY MܬV M4;W_$} J}/G);XB::ζ甝 ǀd<:2*leCOxњfQi?zzklqUO53rMχ!a b9>uW࿩HWn4N9܎5ŧ(.80a #e4 !dn}>ODjg;96ݹV'C?I(V4Up/S/!]M2]6d u!ߴEe[q29~}3bNw 2?0lߏd/I+Y P.q N LM֏saҷGμ Q_w̌tOBfp-Kjk|W E^ںs xdDk~w'4:gBz̽(mO'̥ݧfS6.bI8MAv-eF0l]"tޝdqڱh4WwGفq I hG_nڍ t4ͼ,ТciMI4NS%X&`Ev n#!oIJ`ѕl0vQiƼ}܎mr$ C.~UjiBCWCڎ4x8_z1MIt3nv\:^Np54D,L+$w.}` $ Kֆ)xfP$庳IzeB2XW90s3@7Mޙ2avD#^@\pKtk\ FNq~TluK%q ޳h2~٬m>噴1t"o/kNdeei*j G wl_.&.D&­{~NfP*Uu0 µta| T7w)U<;8:1Zsea"W-+~5>ò;eZ@#t ٿӅSMMr{{@w3'۰;TUӂGA<rE6= s&zon`Ł. 2ˀV?cLq*ٜ*0Ӧw;N2GOp/T'ԫ`;R!@HOu%[o:xh)|nvQx45GHjy> ZE. WfRI&|#3nП6 o rLr 㧚BܿKZ'Ut/F' QX:54JXƲGM<GӾ7!m{bwb`!ګ#]퉾 J<(E\(pR Zqm<`;?$64hLzVrMԑ10 {')1~}KĶ̗ ,>+-F.ng,a].>/Ȕܸ{V`067GMgsK5ݑ7"`A8w ߏ_Խ$ -rW>? $$5ȠЬmDYKqA<3퓀h]d%@|a⇑it<3Xd?T h4<|?ep3H A1Nd86U 13܉eѶN_qq ~.,nuqS-{D*?pF{_}k6 }mvx%뿞[mtUӗAM8)XSY֜CGfYQ{A&x:#~nW )[rʆnz0렔h^smE~9օ?H>kՒ c|8V5ziý9!եHqb&@ay`Cv޵b>~ߔ *j~l yM#^} g15ևkݗ`˴71#Ԁk`~ LmFΉ17y,Ae d[mQ PbmՄymkn襢-8?}ޛ4-rϹtqZqi:UwK?VhC+sv  {K;8gl~ e)o*SY܄S6|Mmi([?##VѯP.\K^F#qБsU`V͑hY7H&cZ@NjgF HN[ PD9G`h ޣ+%\ʋBPpEP))1͎ dteԞ2<9Uַ7xSr J^߲IP"U"DWkMCL *%(u9Gu vrHl?w}qf|_Ll߃k?IG%hz*vg3%Xk +; 8:RA_v gB0QˈaF褖\ %SS-!U'Z~#`c ;QZa]a *4nkG6ABBdCXn rZ}z\Dhp}cw!PZv~sTuwqsLjR sLZY7nyNh3١Hq˵nINi&t-v2[^7Cgm1[?(^,te6 ̿g*mv=a*`%/|{ \F PmJj'F$%01 {h(~V-#PF9:=sӷNʃZNj fM z3s>?TΦ wR~Cz'NFn\L;XBzeҥ;Ob}V2gẋd<;׍mG@ؖ.Q侐!XU7v%֋hYN`VV"m7PM&*|i%YwYϮYDSZ?ac)qCoF l) Z[^/P(:ƩB[T&W6'Z"h8 - [~B)4#_dq^lFh\H"MTpJ%E+"an|x&, !vkYݠ+> ҕK o)M;#VO*&}r thb 0DϭCy% W2'O1񀀄iuW, PB0# ҏ0r`.[4T^l$em+̥F^gayM zN4c u֗SmRNaA͈ʼn"r`w#9ELHE` ~f;1)!;lR $O' MR*Br `ae(jӐܒXM)\CeI?@G .A([}5I-!t^536rFCˁ&(xbX\P vI?s:PKCcOzL!3KXv;%[tW44&CM w)qh,4Us+i?lxΛA/r= NB=pV2 j̫ų(ViM{oܷ#gpʐ(M-*ye;:-%2c-8Hgzq; 1_E4MlV(+C=.s]ZDT a`U9{Y rcQoט^ Ft 2},Kt.k8CãCw_deq64AsK}2]fa;&ݔs'Kg5df> &&*&ͩoӊw:/pcϋ]oQ7Cp6U> jIS [+WqmՕxi6@ <iytX+(== 8!۵Kg1O4H (!aoS49'ng18w(CajeN~`١=I>Uj<\+$R1gM4qQ#`;t1?MB%b$y8R,e4DF,A 6-`灪 RxqIXm =dڹ뮒qN( {," h.c1='/8D@Ltܶq:(QIdH3izW !5+QTlVXУDVTʹ56ug Ӓqe1 ћVc<uh: |>k1K;,+uԎwyAɀo(RSEvB' ;ngYY@Ge3qF=NxA`q1ė&"h8ߋfJm .fXKb> Zh^D}/MbE(]H))96n`5v4ʋb %+vKo,TSoHV2ӿZe7 W "9ÃTA\b7MĬ_d!wSVK Tύ\gpQ,4λrQe$ B6x, Q簭D|;/0DŽ%gKSPXo=h1!= CB7_o+,W0~Z tQ\9 j]S C;;*̥8`&4Z c"_5VԳB^o/ԬE=؜x^ZKE@q)%ݕ E]k{dZsnj?&᩾*%~6ɶ05uuå_h$/[%ר|:[p04j9qmΨ.杊@d+mIo?ă <"u4#/r}Dܴ|{@L+=}Y].|sWcpǽĨ ''{>J}P&?^ڿ@(Z STі(#a!q%]X?~vbzBk;"wNl2}hZΚÑ*I$;4K?e^0%Ki_5n۳URgg,/Xsawg:\\Ȳ۴y@Rg~=8g g%lE)FJL8HA 1ne]06EܿiJ$#;r1MJ f%H_ʫar#d5/yq!V-^_6P@ѹ}1SI#\/Pu%^ :M~Yh0%,3.복| ؒ% /Gdhtmz˙ fK#_n"oYX(j@ 0(Ecp_y5y% OM3( Рh7-3`SxY4,.6;mW\4.մnp;, <S5G}^iю4b4ʦ8Opk)Gf~Eѿ@@ei8**݄4~Xwd-O*cAM 磍Pj3]7؝Yf,amNd,(N_XzB ʝqq^;(s)}XvB$i|Wë)6;'@e@ZL*(D@sYrr⍌zmі8-knH_,{\F܎pbxN,j%ZQ%dGXJ5LK᜶.QeQ?0֢*a,k+X%|@~ B@|ȓ4{x͇[\ehDe9+tdA}Q4Njdtmc0G>;\IQh"`A]*ȑO w^Ԉ!ߠ=*Ϝ20[:wf/ATJjKw$@EaJ}4O z!O[x4Ppˬ+ai o$hʦQeFm:5SAhOn_ ߒzArPZG %qzeTkXV W!REp`*^1@k>ov( :H#恵 h\S%=c׹wT䯂nB 2F:GCG~(ȹaaKs1i@Tw?^&}][Hz~"缨^5sXa[SRK4& :T@u/1$dt_%AGa 2`:L)ں35z; ˓`'s=}u7 7_yKH[MC.P͸1 '<ӄ%B@wU}xCG#ҾK]#Ԋ;&AE' "z#X=h?\//T{ɛGurYZ+DCBm;4Z~#4k Hkåa)͎dfd iݕZv@huĈ!(5ºWB' "{{) RL -I`S'hwH^A1zźdxf^W7(ӷB 6p!@=n (`f;Џo'܈"۞eRdSh<6nC_%I@ѴzQOGؗ}#d>ⲏw[yyT8>_V߶R-/C~]`K6@UM,63;T0|}{b:-vK(߷&2,#E8ULZ:-:X??PT-<ă?:ȞY(+h,b8 Mխ/ v10eew#vbEsvDߦ濥c{45oBdvZil9fS)3ԈQz6z-(#2_ XJ= ,bgXmoUt8*oO} &|+6 [gewuܚ ĘET΀w=e`pflݼQdH,!D:Ձ7vNI%'5z5:D yMfSהgm MQ߸F1 NlM,v qY+p35U@I+lpٰJcuK13\ӃR؟k0L->1 \[7,{QjBkǙ={z#KFg^I僊YN3l%K@ED*Bjs&+d7 (FJ!%z3Lm I%l>F%x+DSD Nė[NGY/4;~3o1?w[$#>ҞgWjc_$ɾZcNnފug-M?.E_r*frwz%!J4myo=II3*r7(^U%r^}rɀ\+ Vu *F5gQ>C]E$4la-(sn A"˞#eQ rbp+,8$g`yM$B\nzs$ZZ0 *&:ag}d0 جvl*|ÄÍl()G:g0g2Q)ec6OȌ[ʯ@ֶU!fsY>.Šq`4;R*LGk4+b\z6hE'{Eo&pq 0M+FTEnj9@_ 8{P- dvlHAPՁĴ"? (h&ET^JTj6F^l]tN^ ̕7^`U*Y7'P+^h "@]nKj=<};1AG_x)IBvS6N+`!m0l;ndc{3RL1Ҡ0PmDFnfRĮAgyO%Oޝ(O*xV'WvrݫS!\D`02B+ʊhְ< mIЙ,tħylF/ 0Vu NAP2ڮ8 # wmƐF2:c{dlщ+< bAm%3y2u HUAzU Lά _p't Nbq:6 E/0}PACjõ7_@LJ3͵˚u$fU?scu@TW\9rJ&6zl4X:V PQiD /K&K B W3StٽiC&yj-n/Q@Dsd 2N$\;I ~. teoeKB*N;sO}+B_|#)aKL[p s+qTN 8,d z- XpyS\%ҷEOPMeӼ+~-_(mE1 b!tn3t!q=^yar AIX j8HZ K[yn"ogxUǼV5|6W895p<5E60jaE(T$҂W|?Ίeb`Q!8i wK̦ ɰԘxb} F;H|V 1Oc#rߠm?:~_ߙ7 V٤%#'BjhC0z0݄tggڎZѺyTZdSAĂzE.QYԬѲ쏇Bοy\w 񢾌C-+^[Tg=vȏ2 n`,F<40UYkDU}vj#?IV[H!_a[c͜ Ih3d_<}G)Z@Eآ񠄵#h|]ۀ 95PqˀC;_}'V/xR$JqRYY.1GS"^.K~Š9{b/:t`914gY $ /+kzhe&h&8"i sG?Jz>Pi[aKSx 15X,w"[d.Nj$|n>Rz Lal6PE! d6?1BdX| vL<vLi< թw^pT.3发F`!rEY⌕ӝ1]Ja+lm>,dvwvU. @XUb.,ʺC_r~׳xɔI$KA|$B59|9ٿr lA0R?:gy 0Tn"SaS8zYRץV@ڬ7|;M><_w㎨-lcQTB:rKԣAwYy&RXČi0 ]ZDTs|%,‹ .c_na{972%i)Gm}L +'D̹ }} ֓;Bnd%c6-,%ߩ߳B.^Eq>t TJyC[ CG>:ZrW&Ab8]PѶw(%y.ON˷fJf7c0S(,_=bq6V&@(_,KϬq5CꛋIr=jeQCn#couؽS{$S8 Y­xX,  v֤BY$6Mh r:lW2(%.U{.CC]&\n fƣd+Ʋ ?NWJf{yvp>n?_ ~- }!6̑n0d)-)_ļ+EPNǗ$6Hs5=TwRKi@J/-cnEƯYBt/d 'h 493"׿&@vV璨5N䐊&V*\}D}F J$FқMA#˛aJj>>V|XǎDy7xHZ0N]b˒(GѦNr}(>}Έضjg0"P74ճ(X^T1w.^Y/$ bzڶ~E8goMvuР*\I`7lz 05fV՜NB^mLE$ =AELG6CfܸiRgla}P\CiaܿmmN5_(w* HSׯ4hliKҩ,15`\p9?[ PhGP4v }!lMb'9{/sH_4= Q:au#mgW=$dw!T,ppZ A>gW@j:"sާU+Nm=!ymUgZi\*v"@9rQۙ &\镣S<كWg[4s"km-UEYX~NK~~A{٨IXFU,S>-NC@n.1NxJ~ê~S/4. (uwbmgQ6pVTAml*j<;އ޽C(UhcxrXzW)b"ۀ? <񳿆h hJ*SU2|YKb'w@2 ")`&#)G2b3u5S(.0OOeɦPQ`h Z]jd|OiJhR?>ɖo'Ӝ%x8B$=wS|.iXt*a-9iBټ`g;7q;XR%]OT-%>9g+..g~pgrN>遣LSWyxiM` S: ҃'4Q,)b:O^B t?}Y/zUp1ȇѫFi)Pr%U4o9ahygU >s^/jV-2QNH/ޞAgG`?vr !Gv}^CIaM(fXؚ;BUePUCOG~F a뭥;ܩH(=I_ӭ剭uߖqbz#NUǖ"S35h'&ųeШ4mۃy+X,\TiaYun\BQ6\:v*}'aO] X!P 0D L+`T$iNIޞ (Ι쎣ӕMo~*{=gQpdWӐ>JFCymf ?77XE8{?hV]j.YnPoރ͹MtPY:VEb#:dK"Puc-WIUQcJS8(y:Jo}1y[3鿚w1 ~.1Y=+3.:_y4@1W8@fvȔ[FpHb>ũ҄M{Y Z4V7O 1^zm -jMMqvt1da;FxIx]hu(Ӳ\ֹbPT]f.I Rc|&4N}=PdCg5Wz&nV`M n +^g@4Xra ڣ[^hĂtײ=:- d "9bGg{wzW@1GJq!?2j"p7:4?Y;ƥ.U)y"`Zp~ H68Q?trq#߻R xjCIqd s#n@+S6o\ϕ욯+ÃuAoRlut:ͯpˤ\8#&+"Jql.­zbtVPD'l|(+P_`;lTvm2Ysoy*!{il{a ;Δ(f4 Mm䡇NA'r=[ zP h;i7suވyMi,e<3ah "l㜈ZEI߬4S\o;aT'PO}${'BDEeu,2 "?r毇\,Vxr,!/AIN0ȶH8 'r~ oq9_Gc.&p5֟v Gqq籟` $a3LG(7Q̭}ע i&L'ME 0G]~?6`fQ7cfn GkhXU;M"fcRJђ6zR1KX> cjToNy7 YO]1czd0ؽ%I'(`a͛Ԏ6]PҺ5UGKvfGo< X~鿩+%r❂o8LR8/8CL+ n7ӿ F M3Ξ]wи]-EO`rZ6 ,}!A;ӟAhgH8 pGMpÁ4=e&E#! hu?/CdL9BR_H5!"q+^HzɿPB#xqb"k]ZjAj3&9,ټ~S^ò/zKٱ 8^Z65jU"?GHbmh?C|זF)u43/԰υ$vvCL~0_J9|b3=xwfrbiakP ?/V9)Z?畱?8w[ UHo}g z^̸MbIJ6 ̓2EMyqJe95a?-/gc֎B=p{y xt `Gʊi|? K|qwm5@)9燑-({H`($ 4KnJ:[MqNl? Fa9vHKMMC${_cެhF=tjr>y^ MosƆewe{<,9Edά tBV{nIG|nȐ F/DSb#%y 66$0;|Vrf8sfbp 6pNWd/fVz@ 9?jDL/l[Ey[C~^K} r(;Kw/8e ջҚG Zk /nU 8#0 N[c ?D.9`Qźr>H3(nB^d؜dfG'JBchhT`]y6,|G3j?6BB˗5QeZx<]?_UO3`N#^!M*i4IFPH?LrGDe%ZkkM0%,zerѓBj(ӤU+j<8ȪsB|9̽/Jq Uqk7q=/d=! 8AmLx66QkAh_EwFˠF'f)E`Xi/ ٖͣ-O1ԮD:Ӫqp/̒8RA0Gᡈ`g2S lK̛K%li%"P1 lpOGUr+Vt`yL.y0v lUU3;Li31%l7iTUc1RC,7 KAF',!ta*9u,@h @ DJ'M#P1{7& R3_v%к_߉ㅘ. e =C{oU(M8À#AZHTe0T5K8vuorWY?f|`W[NnpCW!uH~֞ߗ&Vp/1V0*Auk]h_/! \j ΒJ';DB\0E|= d,a#ʾ+eMyvUIuݣT@b $&DC<Cu蚬bS/bNqN, ACzCDn`(tcbs}nDoǮuCEH:u4!چB@|;9døվW*+1EHTc4Q8W|va&ӹ(%R B[Ú/^ d%wׯ]>Y7fǠ]~bT&^;_-jM\ 3N:yBdWfx2hH=NabԮ oxtQpiG<IZe6|HswQ7]`vsu ja{loq776 3 da ˃l´YvOg5>?bE }3UH(u.y@`5TtшA"5J@擡`^Վ`!Aٯ5e83D7U;@R%MƳ 8@6RZA7V a:e?~92' %6 nx5>;%@ʨq!pDtQYN&mDiADu>qQqO|M,!2<66:b\M0KD[E>(_|[˫(ەcp BQWJ7D҅-2vM,5>q6SN,oջHkH8U,@Sf={TEI CPxp]SQD`&tkٺobu1\>̡?kk1!Jx̼?#J)4 ~8$yE+QcU'4ʽMߖ= `UaBt 2S:dcQ0iMФWѷjx?jFb(÷^QnـR;GPvr=E:WUluHC <\*ݸ߮]qbg,~ؙ5"ZɶdһCӅ2qio}sJ$ 6ELh 4>_F~B3 L'ݷH :+žH?PXofBBkH]swN@M뗴395# =G0xԳA` =@7T/X  c!+hKsyukI[St|6.\fM3ROC/m͟PH-H K7\|AX_ݶK `Uc!14b?ku,CS)l{› IE}wK&yb#7!-lO9Ou=,+v* 极2㎡ۜ8dJDipS\aw}tb rTCtN(4= L^WbyQ_$&\%gݐB6mZnROBV-kYYGD<ΘeܹD3=L2S%%bt vxw=1)~Sg\<;KEJѪ1-cT64z&P͸[F}!47VӨ/## ,jX5 Ba&xjS L\a[rT~_3DCem.f nYRx*/0QVY%}G%,˔;w[g{B $P8&8Co"kTC\/e7ió #Vh*ZLLrK:ۣ7RIn+B~kucQ1~yg.+0p`3daRPQAJEqZ+7rxny71`׽:V] h-zڗ>$5LKU8&_(Y*dMZeEm@EAԈ+Ls|Y3{؞䈺򿋉b]Y5Sps|PDNC\}T($'97Fh$l4eiG0GwաUU.15Ysyt{?¢wΌy{74ynt1oPNW }G 䗪.b 3G6r3ݢ_|[ Yb3R11sIJ_%sOCtݬAV93"\.=>ڦ kJ*Ff`M(>&x('&8qܤxcMCWih򇼑1B<9 +6:;rR%_L08.`14@+z(wqnVt5Xe7޽p8$NO?m%}iyJP+^}z仁6Uu$MtF92$⤾D#l ,]ZϙS;0szHfL^{VtU9dH,"?"ueo`CQylX1]>ܴK0zoLUBom=}̴1\j !-c=%,APa*glshin,k4 M78®ˌY#LSD2\YUs=wXB7yxc嗸4Ƚ.ԛ&*ZrhAǘ'0#y>UFJ9 *Wޟ0~$x/$:Yym@}!ToN_ޭ=д{H>$rA#wl6Q܀#y4RIxȊtCnh m-gnh~Tǥ}w'؀J8Eu_Lڰ+f_mբ%KxH_:u>)kWsqՋ" MXΓp :7۪ҿ$0z+,ye8DWƘxqI5TOsOvCZ}CP%}N Ee.Yj_Ak7w4,Mݴ_" C!Hx^tm83d_0BG&2kXJwDǛV8@m8bÌqR͒})B-cX<`xVK%z-lrn&gQA@dH8ɂ{*Mf[NB[2}BFWUb.%j "%JkoMOzSv +g`=w?S6\-Xy{oHMle՜ck㍼bs$eUĠTd;kq ʽ K`uDy7WĹ=H#ٿIPȵ1T}2T*cAj:-DژfF%Rd0ÏHjI\Li|cgck B}Nɀ&}" H>)k&m:D7z@fNV& Ne֕Qrm@SsRIB[h)B>5QXJ'EHf{W`4~֦ cK6X>mA^;{& TWb{tiLZC!za"-ܯ7\.[otY״<*IKCzDB&7fӋν3-a PLcMBK.@[%'^Md71ڝ$|9,WJKg n36̳́!CkgzYP6QżNXD;*7Pݦs3N?z̓c@8Mݺ ;@!Dmb#e5lV*X\* u@#Y9vfVac qJ=DUJ!؞4X/Q"‚TH @}b@dwHK/9,m'[}J2#]~еIAP,h頑1׾PGi3wK"?RayL:@UGeUm RΞDHzC,{?D(!UcO[ óg#GYsNy6W?b-<,#*v?m=udcaEHv4+1] x#+VQa*Dp~%8R7,i97HC?<|F^* ~2X6V"Do}uN6CTȷ`Gg,BW&v@ `x+3 L1N0#Ŕqd >c)(bLq s[h IV30 YbQ$P&  ՠS׊+Ot!^|3G_(ȊE9 Tn|#꙳"/6]fTL6 P@ɅEygqg1J}wdj@NO]`rco0H&T%4@]\V"yuq0hKcgm6s H$BʄƬ'}ny;<%^x-gTe $IJt5TN96p"aq;zH"WW{X)V8ɆŅ+!~Id@&a-(܆6wKt;x^7hdcs W^븛.V{w-0<}S&;%G`rNޭֺ3VH`Ke?E_JAVܘ7f TB3u\f-'F"c<|=4'1/ 5. 'bh"nv|1>]sStaIp@$9BqH%{㗢dL YtB#Bf xK!c}oȹ6MZfe,h.+>d ]BM/;KQM|(ѭg|?0NKNh=A%QvX8+xG`1|e!KQ#诵.<:e#07";zBMpҭUA)NOE1iݿ, w&mA9)Ly ^1e@pF]?ծ{^cU_a ڭ,-3BΫo leߨC0apE^a['= 8`> ;eCfOm;јrX.K.^ 1 EGlۋQ |gY{Ρ-çgTp/h.*.*휂jv@Z +Ibv9[,f UiCL˨5 uO7T6kqOwY"ž<0`ok@Zhoe|Oh);Dq6^ # 07kc!oHvƍidKXYR9:ɘ[v@W8sUrf/RV;p Ok ج;CGcFtW^FO1Tnፏ*ē^fjƾ#g"Hہ`AB 8<~4GOF6+Օ6 DSj +PTBU5rEH{|/)/JDZHS͛& 8LzXaBTyx/==r" yru@lk g0iH!HvC 6L !Z`ʃظEʔXw(ϲ`ToHY:gFq6"X hë:`kKK I+{md՟T&$Ctihik6/:F`oכ|DE:h*M&Xezuu79L?}f']w7,48(%p'.N8I}X 8nNF_ |E#7MKm!ی zT1Cq,70eD|":LTAFnֹ5je?Rf0/u23iR棞*B| ܼ6A\'_QSHﷴK砗$}#`yDA ^W0\7-egojW*h#gM0 /^Is=qm^5?FĪEmqaZ2]4<MuH=aN7Dp1Z.$ &b]~)qh*IY)>E0ij;phaAه'|d)kr޽ 4t:cEkTK%tؙbxMp\SzC2 upͤ.z=-wTS?;Fؖ󧽎ӷk#-VѻZ+&ФftHZ\>XFip} ;Ugè=(Ė_<| D,/ ]ԫcwqNĞȞhM ՝܎7_4M,PMnz{V }'_'R4z\/Z](p~DyWz5Ȅa⋫ 8F1&ߗVٶLJ]ߎa}ϚztNnbJyI{$w/B^npE*'YV\:E{<潔$^5ܗAzw^fҶa?,)+'Vn׏h7տO46/{EپbSA*bm55h(n'1>Ŵm.6?.I`e]kB]>"awp4/(*'}DcB5A E7 KpDLg7*,yCl\ed )T3-87,ڏ[Qg2F'AI_m~FlAɧ}(Xsa)3 Wl.KWVLZBd8HȱkCN=GZDV#͇ \[?4|oI~Z8B~Pap$4GR0,e.VĈ2: ]td汇'WDžR"JgLpmqN?mlӽ.*OFJע,3ۻL,RP?t1w- BFHG$[3ذ͟#Y4S |KZ,&~ 1Ϻls?;/}.S8L]sS1Hx#Oώ`= 9aD)= f#zbr"]7)j28` bD} Hmp)_s.~u, VW1".,zC:0LL&KZ.]flɔ:[qŹӰ{kFRݓa.:aםa#4uE#%AG.Q Y۝bAw2|22 ?6Y3+d:#9Nt-)b̔swKoP  l C? =^,mOa'19A w7#ӇxF#N:ΠyR|CP'#&8";n_DަdXR&9\pBu(L Ͽ CO5r;pɓxW ~7M:x3|?_I*(g*vڄ9M pA*쪪Km !8ދ:i x*FXJ@A`2p I7'-lsg\ku|(>OYQxYM [_Eggbt`3+(vD Ȉ(<+I:'3{[b@h~ɥTu{I$Jqwm2v6F7=9)GOp:m$`=4A_Hps-e o-%`a`qxL` mЍ+DRƊ5^LRG1蒧ް]xEldm71ọǜzĊR()ώ}8F*M ;qĊ{ ^G"(`̅n⪀?;j=9#|n31 z9%vwToyۉmG{)rNsL:& rf\C:)zY/6$C*ߑo]_ǡVKIaOu"X~4 ʁ "?RUQzgb\J]+q3 7J/y=.KuBeA##x酶 KzpKe?doNX1°Q `vr@j 91)[*_^h9Tk49coB#(uPUc $XB2󻏇 WZ]W1[^ܼ_Ur}Jvo2O; l+`/SYoF_`3mlwHJjm*F[Sn*W&9}WY-IQw~+'.kfЄLFxn%]l;fۏH8ڊsU-9v,dGs:3xcɧ~YUX\ɀJ!@$K:Nbvocs?6?`㒉: C6tj7lz@!ޞq|x1kVK6ϫf =95g$ۦAc̙XdlpAiKKpuș-Ow'Z@W9xnDxN~}2wֆRGvÖÎT ͽjؽk;"|8>xxʐq0|ڙ܆*>}NdpnDըuZ;CKB.\aVfTf6īoA7{[>"`jD2ztKfY HhȽ|GkիeϻpSЀ}"4-MYxZVo`m}غ/,Nj8_zܐfro"45 x1 %ˀ}rQ2(h-d1U|X.hN[I> YPd. |MYn]i-v>l~D\bi c ƮMؿ0iLKiXT_*8Jx_fGܤhB)DnsoHߴQlaC& 9YBo$'`OET/jqYZƅmpD>>b귏5fl֦4D„+ ^}(M5}_i>swkWlƟg 7GARsN3 )z.gX MF%/ HvF`")27"6l~$&g2c *bF$2.2%`j9'c:$%DX:r/9X^N>z(MϏ4G _2~c/j9K{VAɭ l|[ɧGf#4d8pkIakY4dBwK$-d_aG㵤z<KHڧ *U43{UkN$jZ/p픑WLӗPm^.LZ_W@wpZA 0[6AYo]Epz 69Ϳ1\%>7sZh0?U_erx@ECRW=#Z Z3&}"R rZqIaOyAyD$0xn6T@)$֛84]Ӓ+;H=u)gLdi74PϤ jxJJDkdvju#!}TuF `Fٰ.CDqdgCF \H wed]8O j3=XFb>>0rCQ>_`J_n }uݯ'T5971|e=b+ 5,ࣶ~HD8!Q"-{czdǍL8Jl-3nlDjNonȔLj: (r>K짧c3ef(y:wj;K?gBbE  P]r1[:Bf"d>[9= q|P(3*Ign -DC|X~Nm&.rPO1dC( vH[@R459>NxD[¶g+Ål4Br̨(eL d9` }Dg n RV|7Hc5s{>k&]3, 2N.;? Oπ&V{i̯GdK;$_g 4<LtH*p6db9:A/`{|iߴN-,s+|؝ĞЮj ߄|H/gl<:)&=v9(B:Vd`TYS6O%#r.%v4Ŷ[q[HMGc5w8K)֠eJg1Wu]sͮqPNaZ:RYn0gzZ' v6W7bMw;&q@O?>1<%[]kĵi[Wuۍ!f(.0bŊl;wHW3SS&S,Ҷz1f5 cg|(czJ0?:Qy](lR)C8 1iMJޑTC{zHCg66%".Bˠ`> k+N|B]] uX7`Bi&An)#ƞV; ˕f6+WwoՄQ5z =ĿC!FoeGZɘ` ζ]f!󴼁K=*]NO!y81Kd{򾛌 JEMVclMώ}6 eH芯cǀReYcӲʅ~`߈2N PQ뙘zO`CSNssRl3.%x2$6S᤭_kvmφSDױjnk^2,P<0ϑ keSh;_Na[ ґykǷLY'L>±0QE`vW},%Y¿^˹q+Т=gt4^zu OUr'[P{B 1Y35 B㫔>1 UX{:0 ʜϙT0Vt]J[O(JW$qPC5}NnO$XL+؀RPYOoD9=X~ytfjp&4 tMHGb_']IwyZOdO,rg%H̭Y$ tod#FIJG1C~#-5})mY|eQgim^8ۼNg}7nc"DB#:WHM [+#jZH C; ;!(&pb+?9; V%@hͤ7 DԆ#ٲFJ9at<y~Uf|Ct%[4bC:bNVNc{OwJKIfi^@s=#ojrg/DgJmTTVV"DCԡIFRK(xJaxfRT)i̺qGDeE#"i|"o)r G?4V.I7f|]@kwh+KțΪ57l ݻXWT݊QYºbF5o$V 6K'RRk_Yā\tLWBv^uwI!zWb հT"C FIJ#A1iWP-@ E^Z33H<X! 2V&:5#bm)jtzfA;Qp'Z?[%Jn@&!CCtN=!(W& 3zx*ܬ^j-d>}:GɁ9),-1JQom2Zo=h^4ɗ1ԭ8rqK/6Wk ME kE ,dmFAZsG]ckW:T&A^. $1Dɣ9Us7q:o%ѹ^d߼LZ;pO+M: VԽ|t{*}q4GZaL3( =HE-E 8 UDC7kks:{aJpdXY@έVK:9(\1{9ɨљqGJ)%+J 8:fuH NWXwK1hкD 6lӊ$:G":b-[40][Jӏ?b}EݿR()Y+"%ps@p)%?~:NL5#}z,J}a\xY2Vä$\[- )w_&սgoͼֱT!ۺ.`trS[ ۂ5"JWQx5Qe``)"\Z6^rlV3ųGܖ,NJV ,Lo"k::`ZK>"mB^ Z}$לv]g@ėIbN+&~ kHe(D%wnIu$,`JUHqլj)>Tx8}{q~Tmd9%ALZ0>Cpܜ=v W6s '^MVNwvҟ%×8aPL+O2QWPBnu˶zi|X:1&{si lD+M!@k'VFI`@ .(Y-}m['ˡwfw}_!ߜ%*,W[4r*=T.Sۻq!wХQ`k2ت gWY'`?kwUϡ+ U & /T^kxAu&8*99}4Ҭ m wlEsG,<1g2Y\xpD O{ C=D.NvS&PoňEJ^Q(s_L4GZ^a3ǧ zZ3z;?H[uBL<+C苐3hir O1ur˶90رQ/+ /}5TD4\y|F"QBϬD;_=ʿfjƓO-~_MO Rx!#??*N_ܽ׊roY+^a:TRu9mv} 8_jj9_˦D~ |8zhY47AlV31hRKNJ2֎ʳ]^x )kU%l|uAaγ}<|{jf`Dc^1Bje0@QftK&QCySTOp8';Q&MZE3\Ң~ [nd^2e@l`H#ecLRp9?=)< u, dII|CHʟ}8Vq|qHIɕ䘭%ц VC z*(A'Bma'&Ӧsn-_;D vIfоxGiE+A(=X]l1~H`=@'n`~:2R\3͉0U>:],1Itm8'׹F^7fC!ej‹[fB !T)ƽɈ ɕ`UV+J3TnJfX>-qEXl7=_# hzpͺ6 ̫[I/}37I~T0t!Hc;_z\PBd] 9(,l@]l=8/SmJv\B)DX7n,rv~(7;AE&-C=]p $J5K(Cf[@DҮIƎt㫈0 w`Ih\&g Q>V˾{%{A %mjYt \/"%|׎P}lAV% >FA i礃 Ž߳6ȅ]7_(jdvQzb:I>iX5}~n5KaY z%f^?4ou(IY~ҞOr~+~7w[U%@2{(RsSH֐7_nqU!w&ka!rp3N)1̞M gt4QkHZE>BşZ9aksKs7,%QI V % L?͝M';Fϓ㋏ZQC#w(agU9{8/ؑ\'9{v܂2vRzau-e길lQ_c=gI%auz4RrEF|= ):Vs#Q8~̎ 1ŧ'zt'p)}_ڭŲ@3ޠ 6ګb988/ 7WM.2W:+' R5TQc3Ϛp:G)wB)q i8?q)fV< CyFŐA6a>Uֆ\^H˄M z@'h(e ]@"j3_OENjiid{>(0ĻՍ{HߴT[aW0 j^5|0;nƖFmL!ڌkxH!uSb#;;;>Ihң4Ag 4 -+, oU@YЊE:)<<[̯+G 0:(Z\_D6F};H!:3ǐL3Jw^Uhgd9 k.1x0ή K{!p0t;XOI̫[JnE3__sUGΉLeZGU?B.G`mY.>Ɇ`:u?8y"Nu<0=B"^BjG~Fƅ%$5*`gWV\bZR|]jZ_vC #u(@}65K 0J;]h9>'[h K tW ^&jKc>3#SHNzy)rT̵JTQϳYpkzXɫiWTC79l1Ťءo":?O: @X%T&[d5p 0f۾6ۖ|FQFIm.dn?w7Ng ϫhN$*1+)X\F 0iGv4H3R2l2rݟ;5yOR"dSB+U+d,A_%ؕ#XO|ם;@F_]Hqacxª}esv)4~SQPXo1&z 07tv^igNL@MjG2*XFwХg菏ۭ+):avq]pYpMrĝF8`3~ [ )1LrFPw a2Сk0꾄I -KaNWƥnfN+erG+u]g5o®( p[s=rmB5-,Mݬ@ 2 !KXNPm>/wʈ!cF/ĎAK$HZe;׺RpFuh"Ͱ ]S5WTd7nmv", r;> 7dVE;}vmF,;9͖G&[+1r %78g JEF6Tq2)nr*avv`߹/^؁Gd^"(Xsv/'Dzhn,d8CeIg엨EGmP&h#+Y" а.O0/dY>#'h9*GWd6]7ZobȒ,N4TS`^~YOXMEyvyK;>w@D-G>pV̚e#i0d v}AS5J< O rB~e}>D^!*5N>Ì\RDTEҝ[&>V\ 3dy$)?Ʒ*q^QI 6 *U7(>[; yAUNY= BbJPdu3£Ȱ]}6XXlқ|[4!g"l9_A[m 13cY߿Btғ }-= 5M:ըVx8?eVTv` !Nti"%- %_,rE'̟~Ey`Տ+.!yr6r*uG%L@huzZ%F:Jլ+3xo=b77a Dl\L{a`'*I=ias #hmfì+)֓cQqPQn&ú*TЍ7-ǜ&  03&sj(<bBt+BJz1oK(۪" ص,^gy k(?e ݭӄ@]n쁣Q`GNL*Ut?"nQV+^)`]H!K<%TxQjJaM]drdZlFڠ1C4a.,V :ܘ1%Ȥ~wai;'%n-+BáJw@<0G@K]OkUyQC}v7u1GzbF dc/}aتcvW@Sc7p5=YD衘V^4,-u}7tWߒKg^MX DfrJNC7eۢD%UY sURC'0gkG/5QaY_j^tA/fVct2KXՒC܆gh j몦GL/`=SoN;b;1tQ#`΄τ_"j+o S-x6HԧG#+g<:~5:$rLbвZl"B!m !e,Nu% ׽ Zj4!;=5ß?F67li$ʏdCa>e!SN$M {]nfRrc3]%cg/`Fkٿ &18Y8K։]FYkb|jӹ:el;_a:dôfsʹ~[P #,,d~~WrU`{k8jW>T-fVR!gنKOf]mB}NJ@u0_yfy.hꌼ#~{bQ\&B#DxhVܴyMa 7DB. eK<ԕ_\l/I,ӿɞtrBiRnZȍ6ucb$:YA ӷt [ 5RSAљz0<^cŢRxL7p`ޖ܈lgyC#`ř2*HX}1@'0%, UE:!Pב_ndžp$^ղs q:Ek'@;w$=k  A@PEGC(4;jj-sA 6F=-4{ۭ{E.+\4G(y⼴iFX. &пXtL cGts{"t*ߡVN$]ɎME{R̀/{qNkgNdM4v6u@gW?0MT\N%%ǡi|z^U4eёd8Ioy$\22ukc4r/zQ!ZNqѱN6޼,quS2uktc>6VмE}XUf,c3"5+aW+rzԮʐ6Uk@%"JqqA(D+9 WŹmο0ɉmqr:ycN1=U ^ڤw= Jqk (@ϜA@  QSwC~J'r`3r)dVdY.R.٢ i \6[cHӃj K!@Gz8E[Sk;_<8C2}a$v5FUlL=9@}91d&lDbc=z#S樼mϖ d56yA-MZP U]Ùm3 eYaMRȹw53 {⺴Lѫj8edaf[{Wq 6@dѦҦfgGnDHX8Zu21B;1/Pεz/578t7jf7..;5ƫeo?7ʥb)魠T>9E":\LZ''/$wbֲ定0 hű;ɐ63ZĮ4$΃PA|`%U-0Xk<B!'7WD-~{"*Ysھ55i3UN] LG:G_̽b4%/cz2AJT,`R:n 7pILfFql)8 3~zN(*94kDvu4Ng76da0=J !_>QU/ fjNzZ5d<g%,ZJuiOΛ3Vf}mo ܂|HE]2nՓ/µfnx]@-2KKM^ w`=GZP뷑G˰Fm_zÏ7PaɼZV*/A[99)q`2k67'z;lK4 @ M1B#\YK'td6h,K\լAR1*D"J>ĭ.LJJ`v[GEUlt^ٕsnSڗ,/!ނ5&L_nJj8屌॰9#vcj Olf$6@oi @ Ex\+xT-A]w6(jJrQaS,{Jk.9r5VL:[wWݯe >Le Sb3,jA#B7&AbFUv KRcDj)wq+)Ɓ]@=& seC>K[K%d(|P?aoVM}"]`vtO9zlj)ZWG3έ?ذk?,@MCBGl͞Z;9:R[i@\,PȨ"X, s=h›! gpБ5[&jQy젻)Ӳd>&F]>< ]4$wz~F m+U^}9ZѶϲ"ӏ̇.~=,7kZM8/6]ᒉ}7gzy]NLoVE+4D6<v( *R8+u O#|ۂM4 PcxƇco Uu / ?q7w8f^nvڻ)i}5Amm#glQbmPđ'#~"-`#ydQUL%w>BdzT\GMRr{* |!̊63P^2abʭp9;{MJLRK͇c]/>p߰P!8/ Xom]\O댪njT9QQ<@Wg\Z̼6_S}ug, gvOukِ 96vk&撥ٕĩ!QM1Bp)OEs,, A ? qM^/;%1/S16B,GHu^։Eqo}Ҫ7vdåu5BiB,J+^ 46O:Dt*)D#?f݆E3K=, rɉmE'6޼ ls5[8V yƾLx`RX9jvi|| |:i+25!x7K1آz(c=@ ^Lwt!L=~ {VmOꎼ#VC)8-3s2ʎε]yjˠH-CR6,l~:2e 1VTĶ_`V'|պ2ğ%d>ZljXrVPrhToWyS!)ݪ ߦ@ yAEt[ׯJ:z*DߦfV#_ؤ ߋK ̤ Oi%±NB`hiC #T?B^R*+>OYv' ϖlo []ɏ]^) 2Sw|&#Cy;/h)ITq jc_39tQt[+[kMQ [wj8Z洽 Q_8>BrYfTc ^~!-"/ZoPԟ\a{>HՄ``WKa?9d=]jq@$#T}2%E^Y FC DoM=7 E$V‘0?%X+":x2 f]5b9ĕN q5/Rbߑ4w0u%6ݱ`=ݑ▎c-<2kz w~7A8XY%JΩݹ&Nȧ,0g9&J~$A9dVc fCR >O4cjT~,,z Mr>:kW/:l5npKaR#٠A.-joݿnd#W y}@/ʡo'(4 欝2Ũ5PW\WWQ($J+L- rCC.kwhGy])z fi+Ȁ0TSaI$$>yJYw<%* ag>r;׻jP0vo-J=d1?@. B5HRfcm?ϴΈa#~1&$2}`[Y=E|\Hj :saiZO,rDRj+̨7̈́?a#إoM l2eMa]c5 8%cE- l.F`sʉ!iqv@O5v`xH ݶiշke=pLt=i exY2/mùE?N8#1lʷ$KZSJoG(#[VFw4] Vl4έT]4?I cw`7jN3PV<Tio, iviOJW*F򚈊&X̋Qڮd<?s )tMj~!sl?YFr!AR8=+.0'` g'²8RücؑHXouDELDE}mMLe\qV6Ie Ȁ=QN?&(R {{^ /bv.-'~}z0 lco:LGq8w"dIhb(ۿ]rnڣǂ ߧ*]-c q99cz %iNQ& Oz!AYqTĆp?`7:SD ] eEݖ*Yt|t'؊Rǹ>TuE9P*n}D; J2y\__#8J.̄?0^fP5L1+KTc"1?.2ASz͟!S.h H@ Um|cCrL2c;1N%I5VINs #&օ2:22 FUojN? ^t>koE]+aKᓃ6ƨ*uxvSپ#B`6b (" !h2L(pvfxp%ۉ,b)>.?AnrկP9aO%EWfiV_[u#%6M/ #1N]<}:{$0{vt5hV e U5cBBm"^hH!,c8mvv[0Y},h?{{o@%xLQ.&FZ=R~|"`j..wSVL),~ ]tybl{.鰓876R@֑\޼xnv, \w uCZj Ci\%+" 7ۘ%(P&&XtRkY)am}}?Wo]L`zj`6b!D]BSP2XL Vl'hL~g :z-Ģ^d$DeGj=+$,{jR餝 M y:ԩD C`\YٟS yɠu}Uɂ]bQ3c9#-d&@ mIISV3ч%Qzu|i}9nc`E(趄E_'F k2۴71ҳ,mBPe6wBԫ(?Q+1r!b&x/xe|.C D&҅#  ,Fb9d'o)Ӭc_pwFZDr2\o'f@GѸAvY2;#?N,of{4Uh*/f7:gW6Us3=, C#6c>f&{iaѨu# yPB̠'V̊1Jt{OV6*,FNt߸$~TQcaEp'{43ST:3|5?;t?yss=EMt%͟ JnCW&gH^M`ḆE'YֹڰP\*.l;\C)Qb9U3RvI*lw9^ i&_mie<.D}j&~ʌyWmO5M: Sz pt<Ԭ`9ҩPU$ zg*-lfAS.=ij_I:ځ3$IU± #?}ʿu֢ȴDll*njz9㦣3-aJq18⶷dȣ =]{Q24~E#i䓜jޭ tRkwpB϶pϜ~~ɘ"V2=M8c՜P s68,6R:9GQ2γF]~K_,٨0 +E"{XZ*+I3"wr+KX^%󗎧 BBFp:ݧWAϵڻAr PaCicVp=~HÛrz%x 'ċMGU=]cN{|~VC1.s[]sܩz{5ف>&_+r GJĢe4Iņ6bY+# ohB%̪.hGuz tiJf̙uYv79 { ̘Y-0=.mjWJ1i]bK Ey>@ZԼg*$ԩXE#FSݠ-_[4Io~g.t2VC l(.ҋD10Uuh~+_uv6Gג/ST^Ef̔bH/+~^Өw{9埠djtэ>of`s*1:hpv?ui_f~?q7 冶乨7mZmiiVӬ(jjA0fE@|-_gClI6w=xpkО)-FjXySk+OV?dRbCMQ +j[zo!lBPA>4OXA*!:7m9 We;@ƬȈ.lz-+RxO=4rwdPj Σc |˳RnlR$"G ݏxa<9b] vi64"A3]%@lFK31P0uDyj3/ ZbC*@*׏bBa}7hgV26 "_dIe I? ?aBS2 (H_Wau)U[d/SeYm 9{G^l ^^1O.p/ї3T$:AڿdȇR C b=xzf/4F/qrJ#^{cǿve ܛ#[.{aaߔܣ}L'fHalj~ZINc] J\ aɤv( x:2,iAP/ I:-n9O)yMmK׏Z)MD`d3>Q2i8εQk Ҟ5.v&_J/^Έ[F_VAxdr;j(JK2edU]h-G)mc`LYX/zb'sI?Nsj{r 4}]R|RnG]?@?EN9B׹)Au௃ܧL5ʐ啣/\"CXߜWZV,H\4j5$X"FWw[IbT7nǨdWN/YQV1xgxXNsoqy)QW^0MĻ/ZVb2X ׏IܖX(L2hMwhZ Vou촖3\C:7xOyn#ͨUzJ΃A9]9&_m;@2W(O81EVIwgtq<(_mFMo}E{ %ӥ=hB 8. h\Nˇ6!5zЇ ѵy'\"%w(ִ$n-%!C#Ô}Uxl qpeK)3tnU^ _JL<%Ѕgblj=&i55ڕ#ňO60U7A2\txiح0*\/y606å&lll3PmXU*ѻ&H$K8/# p4{}XOMcwIƙb zSlU?FW_ 02vI\ڥ{='ݼYu2Κh?%"X!Xj= س:.#Y E!-ouyUO=e2`(S0!}jyε(vˉc6Zum$`*]E6fp71}v=tdǵ{lҌUٺ3;Ƭ|OvpKY It^Ov\w-Czxf$jK7ezSV7zv%gÕZIl0W|j%ߚ& W9h@T 7nE<.&):}0y6@˂y5g>솻 #P9T!];"m]U4a@f7+F$ψ5|YN,f\C*?مE;y룧µyȱ[ 3Ik|M* |Maa2aq{9|z ),Lir3q1yUjb=F>QUQpSn6~,:#o9&^4K6&)VMX鄇P$gpwxIHhVU>c!xnN첰 s[B/hmY%:<=+n ~l7gϓsT+M0]ڪpkItUl 0r'[|D#Ls_C,Sa-ۡq-(5+ Tdu!1l &zǝ]}ڞ,{>Wǚ (Cۅ}pzoT>o נg E;|w/SE'4$V3vA0a4i$}C!8NĔia/u{^P4&>P00%ck q.fϕlYdV($7v?,h|zF%1YQ}]!dvI - ֺlX!:aYвJ La8N]`cR2,&|7"(xm1mR5?QvaKLmfVpwH}sEurbAKMfѰ]V(rIDilt )!(|1rP6\TEB '0-֬ .HO+'{eOe6 U BT^@│Ӈ-0䦴l8{y]J+s֦Hb&6~˼ 4pe39+;~ɝYdCKvMn٣&WmB~DšC3 Bo9$[逦洞gAxnhQ~^`2*8l^ >. T`Cf~~mؗ2(yVvec<jz}ECTW_b.W ]kRIr̺6(J^?{IN]`Zk_7FB7KNגGYw{+:+`\6YR%B'侤Ò |I̮ajihj "_[;>:}TE/`e _Q$pܼ)G +"2L6u5#ess( ʸ;>y|~*bwX?fNTlb ܦr T!ETH= *V_iB_h٘:"7s9/1@ R||@W~|[~eVAzHf(pw)PWbϵl##9Of`\U즭G.me6{=ʋВ +xL=Wh0~ڽxLVXqBb~9 "3=^./X]$VBuY.A)5IMjSP (4=h8Ls[yЂޏ`k{&f@nXBDCH44-ex:%}`p-}A^O{d^b!q, oFM}ip6Y3T.пטi)ju`*[~ =dwvZ鰇K%uGsWZ~- 9b|!!Pmw5AXԁ༉vub =c㔖5x+92~d㜯kf#]fDԇ;!;1P~n!5Ds"SAnQe&[KWy:FKJ>+Q/~U1UgzvZF9gRXN /cJ 5h^jۥt f)rjv_q}ƱYF 3^D^H: C?SӇ_m=@#=pdoF[j( ](giyQd~nf 3l񶌹uӣr@oɵnk9`Gc3X)`lD\ʑ'-?Mֽ+v>5f \˵S 0uFxB*jO1CK'ӀeHLC,@] ؑ b_nTB\sm-7[ڧڬS 2%%¯{,f0YޑL&,fg-"T0Q4*\@&x PM2NMxAm63BTZ!N^wwԤoNjz\%}&L I~d@u^iIvUK_QǸ\l 닓o5POGkhK0D#y댰I)-_{"_ќ51ɀN)wcA[QV1}:pQ&- d.ƾƗ'6Y䌗Ɨ#CxϑolZ)flglf j<*vZ[G0$Scֳ#2(] s!L_Әf@\OX<)Iٽ:~IKdt Bs` CmEp8Yr8j)J^3 /<$z٘q$} 52=p*,S,/Jߐ#S~ȽΧ}CFB2Q Tpc]]dMEn~*7ǐJtuy}qwu?RCڞ@}JpH^p[}m_qQ)ظVƼ/dz bWSb̨ݾkz/nӒk=@sAvg`^  iRJboAbi,q̙3ֲd]E?ةs8On1s#?՚THjNM "TY[14Ī X6։hF$S,&bVbf3(j1tO!c/"|ڂ;^"TiQm@-MزG/]HЕ?O>)s> A9 'wN¦4I98H2K͒U;t1ބx~tD v%ݚCoYw{ L曱(P$k ĎAX$$ӭMNmrxoV0?|ZV+^) v| Lu'PUu3J\_&gК=W:Qz@ @UkY p܍yw{fQ+ ;J5od,]8z 'JkhW6dmfInkAy-4z#Os"Q &S~ ecEdj@dYo8oG /&KI+ &ѳ֘xC]1 5u;[Sx4_: Fv5HuGBoO>#0'H2NIs:t7l`{_Hl 6lin ZMYijejU>#u6уr)t+lLrWdGfmiXw>QaZQSpW%^ 5.h̥ 6f#B 䗢h*y;e&JI4ŔSFV}v`!xT:.3/:fPmWnI"0irw`;"r?4j "3 ЃUJ"!<1COSKcor p"n=Ҭ\9i6tH 5{ `Dל<>WFx`Gc]>+9={V?,HxhU1ZC8  mi^|l뙄.L`ZjNZi[e=X*ni%d#ᴎ]슛ۢ=rp"7Bl[#VY: cZ؉l]l*; F8Ӱ^aÆEs?CooX) Ո`^ʬNeuG-SAв`< eL]7M7ЃRip3&@h|}eq$}P^<ƚF >Q.$Op 66)LgZ3I~:촯j3,2yUV8`j7dj)ғ"9Qty!;):NŦ5ׅ"1 J;!(Eq,&݋+h| O=I?cg6Pl8ׂ}9h-l?fF,lb%2־R IMf{672},=ys#,4H?C^*@J[ĥH!(Ы]Vȅ`:@Aop }djX]Fj  64}pQ|^~5I|A7[ӎuifae!rG|`چ,>&.g߸s}$#/JoՑ*r1 5(LS D8zFrI?@EL'TRC:w2y?~@r`AF/NRBa ؊.OYP|u{ԧco԰TMRe+YdxQ\) Q,4!PSb".>]YhjnAVO8y1 }fXaI 0ͨ~+VY2u ޛ m{-[H@Qª]<*d /4<'Pݡh^_xgԆ- ]Puoz(eM!39{!)Tɀ6xE|PPð9hX< ƒ.Vm1 5(~XVt!/^ԍ7H Kڑ=HcyH'h'%NͲfkIra^L ҙ%CC`yEP'ވagQ 2HGtC,_Jo"c ƠƠ,W#40悹!S#x 1HIŋHTrv+V6ȺԞJI,Rw<0AֱPG/|U#BB$2rU9sW=}FmQbnKډ2! L)%^;~$f8I|o~LÜLX3tHZwBgn&FBilXg6B(u2ۆ}2W'Ӄ;S;ok =,-'ݞUL4!iP{9A/^d ԧ6;[U~NMpq=~G.T!==L.j&\]G\dd6kM . W5/&BWhZ vA4+5;KNGzؘ/"e{u[ۺ-хeNQN(?(P\*u,E79rwW$0 6`lsAKwX1W}(.2mHNV5VeJ‰+@0@ >H Nk֬./,fA 7&_'3DVVG\O12hb%{Ch Um CU3Vw2t7nA'22>6݌T!O9p&NNetrhn .y \@ AbסmOuGUe@GemĆWtYj&)ZrLJ5sq/!.t_A5:Ny<5)=@t0Lx17Q7in%ksDTbCIcSI2qu -5b\,1sUJl/DX:>~n֙u(AR򯜲 F-˜r#ɚ~Aշ(j} z~DU4jWYT_a ,X{޲1b"aړXͮ4H{:ۉu+ ){1 a&8,+i6#Ц'qE}GG7~A/2^BL#ت X;D`3xfbP^d7Msn4Po8;LKWߧ> Y \jk`;2/)(sזQ$THVcYbhV9o}t᩹ ژc9WZM6!XC|O4w>|ۧ2ۋ,'%'qch8BLj,հ*TJlyM{> #+3$7CsQ%~﷒^^:voikl,Y?lO= >,%}Q` 'mUo#|$\4Y+yx.cmEf#SiCstн.vk%Vv[̏I-H㘽jPml5mj% / Дլ.{ =.]b~K!rm Jym&ef܅fVwQL>NIư¯o P'^e!ICd6yO)DTNlxp1ECD8BP|xtײxQP3f[2*Mn[H9W!Py?ub/M:^&o ~ͼm'#˃%0>"= F!%NͤdO!m#VðE'JNK ˮOD쵿CCBh?@h%JEm*PL~Z$8AQ,n|^Sd3b%5,JO)t0/+ (N@JnׯHؘiшT%_I5{}<ˢbӓq`u5hnS=Bjߨ u?gs6ePNm|u50ttCVjW }֏) K"ɐOj?]Sw nGaf~`=Z[ƾK/9p̕Bեb[*8kUubm(1eI^rV|2qJ@ڦf:Ev"s-6 zs#[ 9!e2 od{&&ha6[PjE=wlv&N1=,F@7z9sJ%bK6퐷K@kLY^&/jVNu2P[!B{Gx੦Sa-±cgӸ*$xWćPoo#֙DlA6pN󉠵ա/lf-'\x{T-KHmǚe Wۻ<tWKxl׻L A9lG%G]>;vLTV+Jm7(jDNRkѐ3!enLIrWDޛY|M+~ &Y#y'i3@{Z=-S7NϹ%(;ㅞꑬW i]4 qׇKy؉>Oˌ-'4j b]ee80H.+ vOfr@6''+ZAǜ wڮxr#\S\ %~ Aӹ,x $~kq&b?^;U 8EBJޮmt>LuKsG:LPVZS\ݡb~wC.خ\<!z_ I$𢄰 RսN'vB *5eYLUDswyUVcD 駅 @ߘ,BO3_oFn)Ê8dL^.XCѨH[ ݋x:aygM{EWs!^ 7ͤߣ3tl% ,ͬn jNE{}ZeOF",)O/_8!Thz l+7>+:(R_BD{6bg :v_B0{H+KIpI*PLD¾7GByz㍻7JI^~8jaەױyӌ(ևQxAGqaM`ǕtS[yyד f'cW2278H`U)QO{Y,#'gHը-nFCq\q_`2 >>Cs 2+fJ\\C/Z4PtO5B_P|@V K_ex{]&}Ƶ\yO*abO7<¹0L(_7=7Fnr:\]ŸAK78N%,mpuE^ӆq!u rQP,geT(SۚB^{8\REWn-<"b p7 8'$|׭4 \ < c)v\0Dj#Uҍ|O23wdɗtה* -dK43^HtcrosWߢF8?fD84llDg bMX"'ئ[ֵ%Cp,X#%xĠkCDLRuB9 }guv T@Ji"`w+NT. 2RXGy(kZKQLtG1v=K'Opaap[|w eqA\:74yv;iQ5aU:j]tG̿-6U6Os!TIdI_NX&)A݉0;׳bjPfe(=Ip|*Pg2C0|-}sOnj yh/q3A+8(~Uij wf2bK`ɷ ֣͔lJO #S `A1GEI7 QWሗv%4@pltCyFWݍrbx:z\CK=|ݝNiЪ)\( + &͌/~w3Lq>w2G?vZd n^NaJAE9ĐG0>$4,q~"'W$dG GJ' >˱]Er9ǥHkşR2.} f{⬢J@HBjbkL55lrV k_),\^dlfH5G3SҜ5k"cf3*n,]4ɝe =eBISTaÄiJ,y` ЫECm|>Jklr&i΀sQWtou9[ `.cԿ iQ1A.IQV٢]hK;;مTn00vĻK˝o)cN!ǿ8֑ޔ@쬄NΊk,`kY];UށN'G TBh(<πj!1t}Hzփ<*(},DC2ӭP9F1jG>>UAF%M ^aq>i,tSB EoN?eb0ז$wN}BqWhq.6aZk'$m\~)Ԧ``~4AEdhAYKMD0#z}(P?D, ̓HW`bY3S/Q~!M/Ћ~@uGu?CQsʼnϥ\2}7 @(,l-Wǵ&O:^*wT3}<|囀MrY0ke+Q)v'=c=iK.сmŠuXgmDLpWj1D)Cwr*YbYenKSwlhIK͐'gJe >%4=20ܐd(&  01}li;?.ɾWD%5pK΍ϩ-95Ep$9 kbE)͉_|o={yfGUL2T2 --{V 嬳dP <8bXez)3^.2I ` q})X} w Kغaܪ.U>G!E1Ctfbwh#eASpQnVstu+%X,ťHuAa^G1"G&0iU=jۅڊס0`ƩDCFM, Y8:TCb08Db~*~O5V#TfJBOoƋfNHWx^tܨԑ4' NΎHu'ng^{>d&bˊ>exjr4~,#{|->+Q.m*k':$FF}O-6Spu\Rw X4SE"@r=swhxxy'Ò}.$Z)65t(cFqym|8_S՘L^?GEebxX(8zreklE%4S[BЮqIבe'iZ On/z=wt+N#> ;G{TD 2 u!>c^.8eBd9J\Lbo# )=f'3fV/|L2_E:`N%!gMDŚ&p'7d=]YVOЖIiodl>c@{^ gT>啁4_ e^1+yWFA0˨i.va9Fu[xCfz X I#Nz 6T!~ѣULOA SLX@0=lZ { ]6 Sl5PUQ̢l{T& {C fs>Cy'F6?oœy4Ó #vXFfX gEPQ-< )#箯 ~ HJu]&NyX 6p!!ML-׊<5ØYNV>Id_ew)ɪsfܝʤ{wv)7K^Lb}ki05@Ač!' heOF!Z&{VX δDhH%_U\bj8*4D fg&fVRvu1[I4IKpUÍ85}z䬹ir<2f;G: Kh$S}\a30也&,c?"gF"Oi?VG3d\3-qŇz u`rse!*:R*z߬CtC2g[_U >y֨,SGz+KWnoOFZ j|+%L`~u\G?pHO{]'wfH¦`?+ʁ2I" k az"  l-9]h &bPxV$^\LPs܌#&VYtH#L&@&"Hhîoh*k3 2=l{l!U %a|K6NBNw'Y8KXPy;WMS / cK۲Xv.ŽQDzd~SՉ(aIZ5;^[R)aQݎ TbT- w}"4\O'&eJkwיj嘋;t bNTI9\(bn _zIm$1tu;6sc_V9mN(wwYPFJ ʀd1!0gl1!0;"fř/FީyGs=qAr`w\RM2A? ^x-yTtRHn?orD~1Lx(Ae39ojMk M*]՞S_v6Wn<^I1pwo lvXtojH5̎A/ɗӗI+ˡ J}{ /i)'9D=@~OF{ĈQ8x5y,Y|}ºxu(tK>H /W#%ûàXݺÏϓlV1ݲ7-3.MGa*.JeX+eGs'Tx{״irx{49o&tDvԑ^ܿ6J)ry{Ο`ߟ0z0!6qahtnjnPp%u{ ٛaL5W__&#zJOG:792=xn=DP*X51ɫu'"Z=HU Ȍ%y4L`GxP4lp Ad՜z0AJ/M/uy^7hIo'>%vR|7y &XaQn<[̏rEܸ6LO06(˟R"&6+>` v-b6Y8䒶l-dYb;T/R| &ng^or~w?TwZW.f;95B$⎢V|~,IӴQߧB1\q2&]D^XS/YNL !; 45fإ]4LAYzɚMrM[G- p ըs;IT tύVD(i9d6™3Fq((RFw1x魖rm7N =x"`DB_ ~"45Nz^6iB%"AI3F 5i^^X\Va~͢<lE r0=jDž^pG;q\#|l`֎(hX+}7ߵ |Kh:2nM--0. }zs q:lwI1]b12A; o#O#>>U'A  46h(< xx`w*ق?9YLQxVgG vh|K!_?#O)%T7{䜔›|FCbb9X;8#H]$QIĤ1$nECm'j1 Eq ed7Uy$WaaX0] m6i[xԼlf<2dLWFy ;AVe.̄;WlG-q>oŪJ\xso|Ûf`::Ifjd7 gIeTW 'Q@愔҇?z=;Tc!%Ԑ pkX|V6HiHV2ɜ#j+V̫O2tWVj m~OA(Z_1Ej5=211/(oj ^z2(PWPҝBs96l︙D2]ɘb=*`G (ً(]H뼃'4-d F#_ -9!r5^ ZE{ao蜮^!_,5KZ 5qJ!eo)>>|wmf cayB˻ VOmL$*/f MgV8C_(\3iETPsovGe_ݲW@}b2ZdJQ,FvioP~KEH}GV=Yg!a*ʼ;]&@VЯ7;4I<- (M .LH#|P9w _Z4Ȳ9:yp>ۥNݚۗ^rV}M+WgHTmke 3 sz:ʏ01jBc [MC*DDyn9=ʵQ)p8A!c, - pYukժrS %`KT|;KTqoI~jy,ǝgIZpN*HNr$aUha[w9wc=]dwn#ު-qQ nR/gn V-7gc\d5v>m_܉|li,< \ -pNX+%O v K- 7B j Z m3e;zҁ_N؄蔗wF٪ ( 9@!,[B; =|qJ̸"7Zo8!ä[@hUWvAxK#Au*?в1*}¥3T~3z2Z -0fBېr{'wyY\zQ-zg g fJm2M&FP u@F\E!+:c +W#hv8e Nn;sҗ4zduش \~Pc!hw].4rP*n䪂藷dZ?  OږHً'pS^ra2 {Zfq ˜ v =` Ԑ9yl 2R& G04TaOGFĽ.zPB '+Hju*!,HT6Ԥ sߔ|ߍĘFȚb?v(An {KՈ=nҧ 39I.0yO4q3R+xk 7LlvT[srE+CH?v*A.n7NYs+!Uɘr.5nQrrīJt&a%8)lZ׻w,Kd,Tcy  :#S_-C#c:zkiQkȰ@Ƌ šQ" 1Ţ(/Z4!;,d_هSX=UQN 54h"Eª0ZȄQWHwtK3Y-maf'?gN[j*.Kpwu=wUA D' r aw_ <W?_l!&QIBC ,[͞j#WozmYkX*8xȅ<;/Oh3lbN)^ǣP@_ITQq 煺|@II2^ Wf;(A~IG \:&WQ,0)"Z36MnAH#I(+ytEV4aaR&P+bX˗%kATW.fA2M>^*ܚd,<^^xxa{v PO{AI+,lNjƕt$ K iy%#,=0^]t28 խW;4f~?G[ι#W ze)9뵞XѰuC5_96S\ D):WFtEBD||F{j |Cx )"+Kr<΄@[Ł{%Ңw-N,_s~6gc Ǡ#5iMu|x?mfgr)\I1LnoPkf9[TA +˶ lEG[ Ìɳ/`k3)7_ нPXY"'!/}0`][$r$u!eN>C& [¾`K<'idzf) Gb{60n\85b!@j7w/Uȁhg6#(* pI[2Y9V %u)X'2f BmifǑW>Xϴa`lj-ް{^HصV^^ W ?u¸a@dƠlx?~"M! oC#h&LVUSuN]b*l5((]r 1\'l-=Q.FsF>rQŵ*伽S(t.!BܽTp1TKjɕgGrwC={k'EY@Fu|l Q$S jӍ %?*'vmݶI^y(b uu'Y}5X63L ]X$2_TGpD>i [;/oeV;Mv u=\c6(l6`|- A簋޻ l씖kCICq^\K ̿l3n-25+k}Mr^j=(NVɁUKq3HdoBէ;Xft*}l^,*:=%{ʼBw8l2q[ aŎ%T*dnނKզG4ec5Չ3ĩ"gN& TN9/(ޮ3NBO m ў?Tv|[: watצwԖ<̒{"7jID$ Wnah bWzwcep"ZMUn OrH̡xP/{&= ײQ?)Ȳ?=%a(⎩$\aJy>?)H`YwtH$%8KUvNS1oɱEu[];f(mlȵ}6Uÿ֎AU @=}&̻6,lTοaY0adqփ{Y\e\3 fKH6f"$w*>w!!\+'nM?_p*] .mX2=̕_i c<,@bj(W6S,hXl-܃?A4OFg^vJi߭x?M] ,PJa%庰!ykbZ4m!~)A"%Ac+?T8@"=jT774p,݋@f[i5gTIxlJ%2k@+y]%fi$챹kH-ƐFf,LIn\WF~w*gԳ~Pg,J8ZGHԋuw{9_<(КG@U_O4oR9b ՜/D*ݚX<`*D 6$r.Z  h$ĢiiTD}S[S`08^">p1xGy76 ԋpIKS%GiPDݕS#ZnOht ~gjJR{%'t o) 0]ɛ*[PG-#0xcUѻPXDd|hԏmCjxD o2'h!M\'h۰@-P 5h2R*5~Q,01 DnÛ3tZK,ITo*kFsn5>Iy }a'BZ=:OnhB!l%΄{% ?D[\5PI^ޓtÑmcwf SNg)_/zw,?I5nVk|b:^H4_ &F,1^rRA>sRhAuZV}PO@.JvWsHz|L>}rmTW- 肖dtsQ|41o>b _Jȟ?W ׎[kd=ruw,kQv-؀1kM?Br2n:ӆBD}mhFtP =hE( |0~۽:Yrx9xʠEX-DtV:CB$u5+Ɨp (D}S-n ]azTnoN>j|ǫ7MC!aP4_0ѶOLa$uf(t[S*+_!Rg?Ux ЅcI"rC ܠ٥ݪȒHGi 3v#H5F^ c9#nd*%$!cY!t6c0=On+-IfŮh~߲A2A#O*ʒRCn$ǙJv>)>sD1'<~Q(1wV ʻ)3'V5 f}TJUV;x ^O,T>,Xm-GWxD:EZӬõ;% ^Ԑ  &FZhSD=qul.co} _a%1kyafe`^:{^e7򉱙7]hK!pmAaϪ[/:|ŷ=̬aP(^t~L"Y-D,7I1ZaGP/YI XqH%!;a fu-,l"UE(~tkf}:8N`.biCA{l $aIDaͣŞ|!xÞ&i4 n }9aD4㬬P؈WehSmCB:eV>'PVv5Qu0*& eDA+Pu7(m`yYQwԔ6|!ӟu}D5rq\&G  n{2ߧs+F1KmJWН^g>30, τW[*/{"WYީֱͪ W[wX>qu#)XZ%6b1>E2R(ʬSyQ]' %{sNwLzE?Loh}gca Yjl6vxTt-ڐwJ4Sj;-—$:g47AUrk(Q/z5mEpYtߠ^ދCK2s$R|[9e=^*P=Uc]qr^>6u&7pe}剧9=y>J䈢vEVG>)7zRt+6sC* R NA؆.دkr:ĝu!~OKqMDTqXf|tМ PI(kSiE+ B[WpF|s,-C#0. H.<5/L4IN'L2KJr)2]Ryތ`&!5(mNjJ+ 33[d$@[Őd '' TTIvzfpG<'Yj0Q/Tpe؇Q4dHEys(&h2x[5k`]6 ]h{HHL'Z,Ced//)tC.mhJ8г6L$gjq|6r?aS.kщ6V3j9>q~ײ|S 0 ԏw~;'Q hT qJGkjkmd1,mU2 aQim4$6[ww`!)rnIͳ;a-fn"-c ?8q#LbKm &}\'(>pUg/4O'鋖*Q!ѹe"PA9gjưwSU^@s@/&rg#Wv{+N6wP֘Y:f' vE2P_,|0YAJ(4XV%uj˨Cة(ހ>ll %Ɵ򳓄|} z^.U+lYzk~U0Vg)Qo׫E*#,ow[ 3ǥVxIVΩ`fjW0pisG8VOQDD:kYDAESG0$]xH 7Zk^#ް ;҃i$AVݕU"O׭Uݹ w-1օҗ7J}l@XȃV7Fz.%Ft,~(5[`ظ&.'[+ -«x(/V\#Ðպ]'ŢKupBtG1FD!g!}cᾦ}ʌX\;vU B+mbHJvlgQ߆#XN# % ^ D"* ̖;06'.dWI 1:!!'~y})7)e:(ޠL$W}"ewUO*B&6szN]"4;H:H۱m û*dœ҆VGWC.𞪡*>&#`VKFE|cSd 93/2mq8*]O+Tmꧨ-$i,Ǻ *bzzOJc:֦҆R] QB xo 2t'vMn~BGeӱG*vq|WպYQi=RY|0kZJ_,O"B62P+.~{IR&eyc'W"@4)Hc,1qH}uwZ܍ɿMHsLfkERǎ)y:J7rJ̵& ှ@GH28*۵RF+7d=еꚾQչPj,1fY Ռ22jTXMTA.}4oLnG!CG\&e"{|{u)Vk.}_)Do%f Iÿ5cnDUzUbsbƵ͞;+ĞI803)u"-Re%Rx ;ۛ߇pPf6bjeSpslo)G) [Zg9MI$*m(Y[8 :iIw(Ƣ"m`ϽRdtUC{(f=/=>yOk nEԨf#¨|qˬ6z9uqK{lq2U.K|އWi1Q3. 5`*H^qvq蘸`Z'I2#rzc d! kAOj@zi1J]/gzj= &CА|0(HɱQRVFGHR8-ྥNa("b 6[=p9j?SGʬ<5P19xU\ Pfo{k?6v ); _+94v/SP89ja s VFZ)&_B_ٚ"cQ_y9S^y0dVS[BUUV2l,9VS mDңH`r̎qď ѷ%fDޠ=Կ?,P٬y.M ]73BN 9 :%v0JYd])qܔYҮHPTF|#p'@bEnR.cSœMd o4ð^]:O=z%e6+lߐG~UCbsӎ9'X2^W=f(tZZB >,Se5XhHM]50"Is? Mԯ0gJbɔ2;6_1s$.?w\*$ph] #M`-VIҩPkڌ7C(%h?Ѓ۴ d|Ol·2/{R 𤬤;i$ڣOVUS?f3j )?T4!<dQPrO.;AMeo{N(aL1Hff dH/!\ݶA\X0m-}?mշZo,8b bO[15W6W p7jV1a(prꀳ6 'Z̼7z"tGa^e>"yن-jYVpȹ"vݎӕNCѥ8u\[v}Cl`a;Sle5\Y-BBAݽ齣p2Bo_ A8_;j`n %DuNDž sBزl=-2^d53By˷M7yLO?i 7N#8>isSسW݊eX֮C9ត!7g6Aw5zXGs.0(e,l9@˻Jx> nn3 Vջ&p/|KtŎ.\睌׍=h;g Xoebp@:tfgEڕ97gg,AfGv;ɼz¬7 %?FA_d<}hVoe{^[-wv%+[B]/abĎ{Ă`QYڭ HW)76#þ._*VY'a,3tI0$ɣӵĔS_v>̾e [wc9lo[zzĤzYC.?ǭU^ؽ9;'=p_J"'huQx>RiUB + Tr'p>7+ D'hvx$U$b&G~):4TGڟ';BroeʊgW/?ٴp%d]:г<%U*!1#ǯf-U 'Xkus"/Gz(vOXdW "-4}qr#í:દxɦY g%~ˈeM{ߣ+E3G9%6t*I@,"Qa/MӇDz(9QSAM- ߏK MUu3^YC)86AWXDggε,Sox<2=g16b@W!s|]cX*ӂUO,-ݲ F\ YTLǗ"L3_dJ:C4ʑ*%D^bAu˸|k1IMI&'ºBTоF f+0ToՔ*Ð޼ۮ2F]SW'Mk1#@^.X6E8WHU'EG"zl/ uӚ4v|y;M1 BW=ߘe)syݤ^k +!d#oG)u&vdΒ0T&~7ڸAX.,[ uHiWiIB5m+q?~ $y]Lt[2MJfG}n~OCQ)n{Wt/?^@\{E-yā>Fr`ߦΦ~}AɣoB;nx*DS2޸`Xm)t["ḏ~ BĂq=D/ľ1_^ &I} |ַ[H1F)u}&u,;_99S={檴2>ϬG-ķat\}gmws 60. ޝ({q/C6⶝flhg<Z.'r j_W ިTyfGǕ:@K338Ë8FW։.KL7虫߇OͻB-0|MFӵ|e+u:5.!C!PP.=yhoZN(~O.,tGGD/ ^Op.DI:}k@|_Vx&)ɍCNbilK&LO@GDTt3s IWvPY`z%O<{3p0nѺiHIwz$OC Ё)K&<>#.?8Q,vg o g@D'4`9R-KmՒɣ1zƾ]EQ el-j|ѝFx\;F10 |G;Ǣ޿$\ɝ+KŦ9;؛=ւO*@Q5o 2$G㈉s(Wnyx7 <@PނTI&*zdk2{[<H(he=篺S[sSWzGC|@=e$MOs~ʟ{Fug g{,z=W%{0E\ڼܛNef\E`&āMũYz끯ܨ ,ЌӸfM7ֺ$SbAevPpX|h?mPo&R6 '*ADhMAqCӭq(:*VXsN'NaHp62jG(okvF;G= ~gE* oO E:6 `\vIubk)rkeM,@>9I?ίC]ѤU~W.!fI9j Pj7`kU)V`z2L滜LNis֬B;RN23w)W˰h3sH;xͅtID'8&T[ v,pOz'ypҷ""CRh_V@]W;YOw))X XADՆ`k)nYV/Jv@8Өϥh4ynאJIF@ٺ7MЧ&A$$0pOwQ;a|aJcC9DeH1 "{6AC MQcxN|'`he% @ɭDcpbg LeN [J ZPD\&?:#Gx@(HTg(u]hw"l@ ƴ/ jw %iB{s-)"ǂ.a/[&Ŕ}B.gTӶy&ebJ v2ڔbջUA) M" ɹDtZ"9sP[MeWOE9;jFWM^cSFDӧݧΘ'8@\H'y i^t P]4lUGtF r )@z>V6P@>f-SE@[uij9saRgf'DÐ[]ݭƫn`#2͕+jE$oU@Itg%c@9˂+/U 2M7Fv+/Jl276&ۢ))ʀH LZdTR:ӮŚ&3>J'(TGI_[W]IA]*ݶn#2+[F>w/we&BU4f˺I %V*F2hri;KO<32ܭ}: TmU zPuRк}]Ẳw1pl?vkI 6W58[0I{K Ob -N_axtx(~:&1U$cyĎd,5G[]T|T[%ĵx4_SNwgtڣIHbwVa ӷ|Rc:P&&Q8pFC}7O_JvdsH/s84kً?%IJtG"ǒ6墭;Hk==(u{GWzn9(g26h*m 4ZS@1ROZ'c|^&i͖5he>3kAeN?Z /2R17qPͽ}i0z}}zz".UcwGgSϺ[tUj TǭGp P;dֽp_X/~kI(zQ^yGysi] ]%.Yr1i\PaeYDh ib* RيZgŋAZ'cş(W"\_p)ڕ&;|;Xt](]爣"4MSQșO^Q6Uj8#@!H1&iA=' i{Hj|0X\"^*Qo;),dh "sԧkA EaWEA _ؿo^zɬ+Y.DN|;j1 O Q"Mڱ!iF864Qw!dq4t1A~gGւ-QƑK$R_71pC3/m;Zy7Z% ajBy\&js4~^́9{&.|2qYh<>ɍl2U*K5cVkT~a \8Ҡ?x "4%ǚXL%" IʄO| ռ8 ̖95!811Smj4[5Gf,p`ZdkJ+)_ F* ‰Gy^ǫ.˄Ivw~X9f6j5l&ˢnQ#;ak$K"Ojf^6LWsFpee1&9f,>jhy.b8*ع'ff% !ɴx7xq9l/D}]qK]P6O5# 27<"SGIzf5\)/sH}LSk߶V~mfVThhoj/!< -\AvPPzNoA+f:Z(Ysj>f$}lM>27 Dh!hPE[*2u9X|mK4Rt|cO~XbItʱpcM,aMN\IE:J7UK8 V fIǸbrBZ'Tx[ f\\B20"0@2c_ೲ*e3KކS3$ԨL]bwsnyj=۫Wl oH_MJ~aX9nwdY_iTcasWQdX!O B(tsm[1 (Kiqp{QdfGN}:G-e9 sJb 7y,I'j]b8~yӫX6:wvcqa6%+%gymeuO'|K l{ƚv֙/S.&Ͻ=AhيuZ;oLWHL }m~m0Ξ-H0={Q~62DQ.Q9]d6S#Py*S'B0&Z*c\ʔFC`YV#2> lIU9nJ@0[Wzˋɤ%-@a=uTq'K0~, }?I5s'\4ۓ5qrE">$6"Kv]4OKCц+XX1~dr_eһKhAgLOMVtYYcT rIǛ5(-?&^H~Hw_*yj:F% Zw"iC U$c$$.3g}R ]Pd&o``b~V{B&]((=fsݽ|kp*UuMJL3XEr]ɀ4[u.fKD`L6˾ ^F'{IkaXJa\M#VLt,_I2kFRrBO'%2U PqTJ߾-!z7M9|"qpT̳%J+ vŵω NW !gv^Qo2WJk%8yZgbDȅrԸ9t@( <6#H/( d,Gl4^d0YJ;8}3@Qor2h},wPC`Dsv7dNtL ZMSrd(Ro4#"u(h,_ME:- 0XgmȢ1cZe`ngp"_޹'!V9Yc0>/_.$$yUU|s`bD_ۓ-VƬDyp9ʓEWp{pHrYUuOsj±B1[NU<[{&ꃿB2'VRh$ XΙKN#ti8 p4չC-*4 ?<$Z~p[\tP%:Qi8ZUآXF󮯗&E숾/tiئ݄]0cN{F?Gݷ dqAR;54b[]8^| & ` G<7kiJW\ݹ([&U(-O ,*hQhMG NaG- 63Jj{~0~_ &}ykZ:N@#'6#\l)E^cd9htߔςU%ByWϷ߼<|]k*52U5$bh?j#.N3_W*k{uM$$pur*4Q'C=fcy(/ߞm !ۏ䋙- cd1c%_h/G[7"P}~lbԳ9צ6lMMs `) I17 DYU`%b*Bᛔ=Gc ife{YϹYl3^tT@@W}s/Z"/Vjզ |{m9? 8`OpL]0JL::{d\fT\q'_;zFR\gʽwaҺ9GCDH!ӏ3b8_ \p> YZ