freeradius-server-3.0.21-150200.3.12.1<>,(cp9|Cݜd:%T&:LAGmF5(B{ b13=@c8YKk^3}\OV$F }Zɓ{L ni-x>\8]!>v ~_1>irptf7tg4ˣi.>O6?6d ) 7LP\`y   4 ^   ( 1 \Č<4 4ҧ4(T(W8`(9(:(=>?@BFGH4IƈXȠYȴZ[\]\^*bc1defluv0Ew!,x)y1z6H6X6\6f6h6l6r6Cfreeradius-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.cibs-arm-3]SUSE Linux Enterprise 15SUSE LLC GPL-2.0-only AND LGPL-2.1-onlyhttps://www.suse.com/Productivity/Networking/Radius/Servershttp://www.freeradius.org/linuxaarch64getent 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&  0      h h ` H x  (  H  X H    H ` h  ` 8H ` X ( @*A ABl&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큤AAAccccyccycyccycycycycycycycycyccccycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycycxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxccccccccccccccccxcxcxcccccccccxcccccccccccccccccccccccccccccccccccccccccccyccccccccccccccycccxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxcxccccycyccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccucuccccc^zM^zMcocococococococococococococococococococococococococococococococococococococococococncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncncmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclc^zM^zMcpcpcpcpcpcpcpcpcpcococococococococococococococococococococsckcccc8a5aabbd908cf07b0f2e622477e2027f97cca4e54c2d651f6cceef1e0245abb9537dc913ca617dd3b64e0a0d6726a8d60661b44afd2836ca2e3362f5232c1af76877cf91d3f456bbbfede10b2104aef6f0543fb75c4fd1c77ed5eeb817362fd0a049f99bb80f2f16b953d5c5011fdbf98a3bfe2cefd963cab58546f17da83f60eb3e83e984887067ae91e3ef36553a3503292296c8d12d3b1d0d10c34b263ffe8ae096c15cc0e12c19fc104579a775b111be461dfc954d5067a0cc568f53f14612cab60855fcbae684e860277611de20ba736e8ade46571791d6def116d5ba4e9d4b49900dc46af19ace46878a20367408156166199dc83015c0c6c48c5323e11b686b70fb8cbd7c831698dd8ec6f8f53dbee942b683268aa7c0a19c408bf3947bb0950fd01b446eebd65c3e7eac66ffdf8a7067c006a034460cb78f3d3ed36fb863be3a8ece46366d50969cf71feaf2ae5ab38fe39d7021a63b679d16b2cbeca02caeb6df36f4ef5fa8e34b8b3e860968b7704d208fa59a06daecaa83ad33714f5007a8604c6e1e9ae0052713a65890c016d93dd2fd4de16cccf8ff8ce1a6728d792eb7d1b50d9da5ed3c89ba6e2fe415c37a918a687888d9b348af4ecaff9edc2d3545e0192a82d1ec1ea7d7c2e2c3a534cff700e1f6d6c0878fec2e0a3e9c1f2b05ce22abe7428bbc6094677ac16b00c86dc4e249aef6203742b277a2cb78bb5c7433891120096e7465aa5aae8662ddb72a3dd56676d523243d38319613ae90b2c361152d097cd025bcac246037ef28a422a801710d03e0bbf4618c61f7bea8537208372c09c8326b062b8a23b5cf08ac85ca77dac25d9739326c1d0a5a0d11e947a770316146f27e90e6164e2cd6d4bbb25fbf29b2219bff150fc58e05d4c8bfd9dc1f0588467ee2fe948f7ca3da2bda2ac55559e269c48c6276f58256d7aaf7dc46c2291470b6648fc7313e849a7db0730b25064529d19fe3c4612f0367113b3f0ce376e4acc454ded908f11fc5d73ce9145b8862aff6820bbbd5cf3dddca598d0b56b147c7b6633627643041391eb33b57af2173f1278c47be5a8b35960ce1875e81f35963033a71b46cd13ac21738e608fe3006e0af9e9cbdba2a17a72797aab1fcc7e66f306e48d3de55832d7886a071c5f9f941a1a871f2679b30314c4cedf0e7889e79bd3d4f23ca80f6cbe491aa486e7dd4d3e3359e05b5ec7e1f2fc4b9e7144988b03445c239d9d4b2e3c650048c0823dedc70d1378854eed596a0aa6e073400498c189d2b34f8ff4d1c3e0d05587256fadf737b53f780c8b4caca010f402df850d5c9190872d7df1dbbd2d57203bcf6ed127d0d012f1022221d51154149c83562329f1ee5b308d2f7990253770b325827a575a4f342b72b209cded3bc6435fe032dbfbddd12b60507a9de63ca436350d21f77fa901c8d0230a775c48be55250620694124e9582b09268b01406a8b1794adf8648c4488bfd709ee04ee744db5d7a30c1e9e6f5512c487a0e364580ac9c2c155306eae5fb2911c5852792cd6172b70305150d428e48b71de06bc0a2aeb212f735128735e0ba2e5be5a7ea54c6e3e1743154525f36265eeabd68dd929dea521f126426cb4cf442d73acc0ab0e1aaa5e97f39ef896a9eba5273df312212ba68abddbf497ed5244e5f624311fb4e4427558c8ac2db869bec2ab1118a5affa190ad23ebc39834dd22274bbe02303d7ec84e3ac96ffef1e4fa4942f60259acb64acddcec78ae4b961f49eb32e433ec3f9fe04530b8212d98ce0031a0c04c94e594941691d8c27f07c7d38cb1f1f46fe063a18d6acacde6eb155332e9004c935ac861b16b0c19b0f5fa237defcd03bf00824e13dbc54143ec4e2a6a9b1733a57f02b80f47967c47612f8eafcb5dec8a34f46c350b21224d0cd0d59d246e5f09fa120d74dd8af1c885af12e25c83cfc8520c2557e57d4e5a6ac740725a7a79fb9bda736a4336f0186044036b8837273ff2e4715ecd66ea703276208d9f35348541bc6c6a1f5a72b05542d6e5ca46374e11b94d501e1d803be1e311ecda722c5baeb89bbdf0e932ac460748c060b1ee65a84b81e75d13810894cddabaf7b3cd40ec218ad90d14b0edec0abd0f4c3e7346abcc30d1ef0e2cb8f38cfbff2b5161c1edd98253b9940dc539e8fa9967ff175fe1d2f72b48df94cde8484d1667b935326f51839c002f59163af879307334ca6079afdc06b31b2337657270ea117f2d0408ea93f7e40607ff55b8817e3348dbe9cb662b83d8797b5658ad0b6f31cc4daba7f5b54f261de25be6958f728b44070859c5564db0b1c2a02091f7ca30656a845bc01d2ecfd326c1454d6e9023aafcaa93905a86701ae696b4dfec480abc9e11042aab9aa7f2015b43b17b93bf4b9752e10d32ef5aef8192f95a52e736dcfe6914ae49e5e2b70b5ea578c9d0cef6642d68af6836c7cbc4e4f2c017969227754ebfd82e55ff169140b5553c2760436c3fe44d81376fc4729607735f711230e7b3584f2dc5bdba4a41240c1234467dd2a4e5a6d727ae10c7cd2e4c700e224e94bd4b89e7cad944e638d5357225a469797a11b727ade2666a29553b7e12ed204c88235ef4e36cf025b9830c9af1d01fce17419695b6622019af2e9753b53e6bb8f3317936202a51b848e6303dfdc082d0719875a82133ebe9001296d20f3304980c838313f41cbbdd4fe25e87efb91090ea0e40023b1f6c78a3999752c2f5829bf40f1baffaa2172ee6b27252aa3bb0e14ccdb88ba65fe5a00967b2e29b25e7320a8f43386cd1edab1781174cc8d3fb50e37632e1a296ef791f94e6f78efd6221f8984d19dbb21a231e1b340f061ab9e90b76c03faa5876c04526f383fd5ed6fdbe2c09475af49596d9ef244dc391de752a6ab6500853e680e32789b8cce3b47bb057fe5a828ed3b1ef3c512d47ace6ef63feff73d84a1efe4f7cef0951ba73ccd175eca9193bd344948545039237b3c7a260d9789c298a10d55ddef8cae92655565da9c62308e70717122f1ee89183ae518f56adf30263e6b491f8d24d51d6cb253ae62f5e362346328a6dd9cd929e48488830cc24259842f13e362b227ed79c6999e5882e3e9a9bf3991deba824dcfb1c532e6d2f0b142741544636f6ec2ad3a12b4257c9f88f2bfe5f1c8db1aeb5478b03597419591ebf4633a0253b448d5b2c66a9b6eaf94e0b2d14a395e5bf8d3b6ba14995a46195739d5b9f213e2dd236b4e25c04d940fbda7bf6a271843c644bf85bef7cdb3d7bab661395b7e076b424e07263e344f270dc0000468adf57142e94726ff9d1be37236c8b100047c811864b0b55920c1ebac2222a26cae07e0dcb4c58a23f1d349de31a5181903866fd9af6cb18f32eea957be776ae3eeae96e9efc73f8a894f3942ebe3b8a6925abdd3c56add0e58cf4ba1cfb1384dc276f515bb218c810640770c3a00d6d8bf069e3a02145e4961db39e3c7a71be428d19246828d2427457805e758300ce6f0fb67136812b0c6f55a117bedabb6073df5f1adc98f67f9f67a965d3e4d85372a1a4904b87e5217c904770adbba65b3bf0207b821cfb5d139f857d846c6070fcff545ec965dc1198895e37601b9ab056f1820dcec7ef2f5e13345e91761fdf454a38b09a4da70039f0a30ca7236827b364d95b8a591ea6ed66f2d3e971b66570dcd5a3fd9e479a81fe52b0141fa700bba14374f347b6b43b6f4a8800a12adfdb29a8fcc0f4484c4261fed88a6d5c377b1f2dd83f954dd9cea1345e05ce40438f5b045f4d92db6be31f22a160ed38126cd736d360be66c53e14548722bb10cb002e2a0c9ecb3fdd1893b4e97952222040f5ae2a745e8e22f5653bbeca416506f850783083598e0758a5c0385c22b71a465eddab5ce281b400caefcb14c09a2e50e14b2d872bd168b846edc1d5250d1add9dd6eb4e9b4de2e13c271e8a13f472ee5f0cc80d6897af8c5b2e0ae90fb92f20b9cc1104b65f8097a9c194369f06c51f67173f82423ba2ee84a2cc9522d40cfdc99e68b752a6d41e960263a373ccb0e9349323527b861ba030703a02da680b764976c7e6090504cb23aad5a3defe69d8f23baa1dfc3a571ff3b6efe294d00440ae45769a537f47a00cde9a92d21f0d3c474dd65b69272046cdc4d4750bb0449c3b014abf7848b1fa3fdb21cafff9efadd1226e408ec45ced777523581ce2bd68e0c5fe7b61b745268821681001e6fea4dedacc29a103317afa86619b88b32c317955cfd9717864940adee017d5205ab68298c82d348e3ba017cc908430b5e0ca77257083eda9e428d66bf4f60c76e0ab118e567d30cbe0e65bcb869f1daf94fcbf00f18291304e553a9b3bf5e8ba73a031af3ed70cf495926c798c1998a429071c6a9a9c12d5301262f28efc78e9871bb29bf1cc19d82ef20dcef84b0c8f2ad854ddd6608005e806ca2703a776759f81dd64cbca323e5f3e1623cbfc279abcbafbad59f44b6e7303b6590b0c818afb57f68c7a97ccb608c072542d5dadc3b83299f8115154851851da96240ed8a57ed750b659b18794e90ef897602df3dd83a57df4ed17c8553a5377d39d17a8fabca93890e91b4a4c411098c685b41f89be0b307c11130506b594b822535e760c058d305a61c3aac7d758e0d7033c95945a892c5df13cc423e4febdd8050175d6afca21467af23c8b55c1f2008d4dc16bf81b0c2cc2de4726a5088127c9f60f9741aeb82cae1d99e5e70a7e29072ab68099e69484c4b7c9d01bc9837ab4650e83f55ba466c9af4292068d5c9767849dfae027be2c73d68e98fac5361294f8c46195fd2a49dc43c04544ba86a6bba75937d6758de5dd79d2017d345d502346788a8da5225bc316be774c1971c97fd3d5f1f0f2ae4dcc1920bebeee6d15f99706a309ea843028bb7c2777179c8a7f4700b8587967def9561c0a8a86a416cfa8ea2061e699ef1a2fd9ac80c05cf6c71cf8e53f576069714247cd4a9736e72e1104dfcaba8be8ccf6f8d57abeed18d584f184d6bd3b20f2078b3bfb7a7cd2bdecaabf8f1e89f8d6a61666d3907ceedae8b665db93a0f6b3fc8ef21c8f70d61c331f51e705c8c11bb8c4a6fe1cd09e26d27a1cd29e99bb4d89b880002eb54d99d5567b553ce5a6e681e06048ac884a5789f9f121ad73d86f617df48b9ed955d669b216af18d3e770b6fd079dfb3760a1e1f8976dbf64dbcf3b80c295287e5ebe6a345120ac11f9752835f382fa6150ed4d3a5daa53f41b355e72b4dc2e6f8e7da53562fb4191369933b08ed25a8b7d117a09ae6d59d09c24e0ed65eb73128f866312cec1941b0d5222d8fa9bd842a55e079efdd6e287086bcaf6182fa41d96bade16e6d6f4bc0e7e117a2b87b16ef1c9a34ba79bd4491663fa6c23eedc86f7e81068c4eba56cd09a9bab6398289a50750c75e17fce9fb803ed2faa99d7c9a8687e4bd76d90441fa77920a99fc72e92e42869a9919e8381f4e8959577d4b2153370271d085e8c4488d1dcd0f92f177182b4593c0b68c89896d899bc2cbd37197efcbe8d16566928eb0cc1e86e71149a98358bde939a6e918fd6fe63eb3fc9632699fd99f2a80eeb6d48897f6daf8c718a63eec6c986a54eee2596a803436931a06efcd32ff8e9fc9338ffade69ce3c22dd65255a00f890938fea9918fe2ee1d3814d28e2414cb2a6e81d74acd62d8f6efe54ec38ef622c8580c205f4fe64daf2a46ec96819cd6ca8c1de3ffbedab5042908b909f86681c242a5868135643bc4b18cbc36af83ba9cccbe321e6c522ae1ebc2609a5fb751e91116f2cc9d11fcdf8ce687ce333c1a6d63f052cb47fac5f6ba1d744b3c08519d4f288e9938aa8da1700341f33e93ac4af48a8e3837ac6d21ddec906bf99e84d99d6e63a5dea16812ff583cb38a4e6577a0b18a809f98c34c3f7ba2d05d1995556d06d37e6ad241018f7f4d1e73fab24d534eb12765d5aefb877bcb5fa4e99240189ef8b716bce2fcc264fa228bd2b5d610f22adc261a9c37aca78ac3d23292c80f8014c53e10de98ebb40d6f302a316959c8301feb7cf29fd9ee9239afbed35417b76625d41c7ec1ccd3556fecd9ec9375b74a8ea403faddd7825a3f76fc9e3415cdafa98c5d62d432eb59c04498f3e8a46e9a7aa2d151be36072df097e8b9d2d423e7a6baf10cb408106e0a26ca1f4427a061b57dd9a2199e15d5a63e8c33f281a49fa3adf09b0d66e0aeed09cde6bb7880c91fed6e20881bdada310b6171e1977ea3d5672bd3dbc2dfe64b91cfb53bd3c9f46dd7fbe3584b9fafe5d32398c7762808f87cba0684e0ea1c1870ea92b412c21b829554d5fc48a7f825799f125b30adfdee54a4ae3865e7a75ad71b91c1385190a2d3fb876cf20cfc923a08ce64f85241c9e8239b79a21a032e95f6ec42ec947ce5685a205746d33e9444f72a762de7b7f4bde000549ce4fc4abe39c0a01dd15315639e49a10c9bdfe19ec811ff1cce0dbf253daf0699f99a46616f643b914a3bd3efc2df5b302efa2c0c25872e1bed736a32124190ee4bf1b64833d5c3b8f17215bc519515aed03eb19badda6871b210ce66f0cae0c59d043822a01a0c098959bc96a40ddabf9fba72893b1cb3636889f952c0e5cccc8f867355a82bd0e70b2bfd029eec81924a750ec106f4b068a861ba2281a452797a1b52005c8d0e64e8c470be31e9b3d1bd6abb0d846b3ef4fcdaa56c300360289955ce79ec0ffc3b66a08f9ef284fe0e7fe9ffce6d5176659f241d524d455b36006d5dadacb2eca48f53fa46b6d7881905e994323f8d071dd282659ce7145813b1236e6b1cb2ee540483a421f559726dfbf625724c77e3ab5c1e7734c173485c887a19387885d57407e6a1c2e3dc12f6615da242d05346fd8cc7b41c31f51bbd5e65a1e95bf8f588a4092ca7cf64be0a665c3009141eab023980ac17f48969151adfa97142d495a5af7ee0dc9818931f6b08444d269ee7ae5c4230d8342f011eee4dbc9b881d781beb91ed5724cef62655b80fdce103b031cb6d543c35a5dc4b8261d64f427559b224237ff5d7ff2e22521689e84f7211eb58a4c09dc2279d3e160ec5a70c35cd0f11bdcf8af17382f201806a3b6807fda67e6fca473505b4e190c59993a35314eccc316a314cf01cdcc1a38b7afc617997c276bf062ffdf2b6f472a27421e4132d5c5c7b25eb05fbc3d9eaf91572f1bf7773d037a10fa6f4eecb4a04b3948bab5564f8ea7c8641325ba529770970308ae555125b77a082f6ddc37855103c1d74a5aa1ec844b76f2cf5b61cd9cd75ee645196cdbf991039a107f43efb5f1fdb43d8288db884003cded5e4b703029e074deff16661fad7543ee432b1a04e9eda69980f8720ca1da9de694da84176df11d2553399dceeaaf8922bc451d3e54d50cd176215cd43e2c5dc1ddb23e8984c247df04389d582eec72d42200df374e74040a4a55e64d913e90fc75a38d8472a21fc63f195a49574851f7e3ce24586ae94e584c6661f83df20a638e458ae7c486112417b3a0e63910677a137a80c5b1be053accd1cc545a16c7e8ec9324bc7d1c1810af4070a05c5264cef9ba01e3f9e08bb39818b59f61704992f6e05c5075b31173c52c5876e896ac492e8a63349d6f8f298d2ff5a178e6b6594f4f22c224d15c28abd19811d7a757e46950bbc1c94f9e21a7529010c7f9508004b2e2c5025d7549776d4787f7359bc41aca5bfbecf8ba577168339b04a25674c5e73b23f2dbb3224cbd66985cb38cc248bcb4066696ff90be6986ec61461f1fb73af23af98440a6bb7c96f169f75435c1cbad88fdffd901568723aeaa35068dc8cd2689987494aa5c960bdcda6e564e98e35d31da383a5c9791ba3c5c8bcb2a54e42eee7783b0a6c86e3eb6426ecadaf9007e5c045a48673adc33bb1ca5cad5661bfc0bd7b6a76cf55dba1c77cf17f25c00222b5a0724a4b317ae71f510520603c14b17f91089efcdb973d90c68abdb8034a0b65a81ed14a36f9b87024f7f2ddb9810b926839d8c778be7b131b9fbe581222d8380ac2a392c737f03fa0ae4e5ce901e8dde172e2b82f16e9fecd67ace146d6ea857eebe7a35cceb6bee3f27e74bd3dd70d7c702a66f840e221a39f9589d5a7339349697dc7729bbb758ffcb5a2be1113b2af9332301a7aa945c2b29af098e8a220dd1b5a5b90e8620febb3093136450fc2d762e1a280020b11634e535b49f05424d0fbf2823c884951ab009167ff14b0c0c20c69e95aff852e61754cbe7d3660ce3129cba2eee0a5567d1afc8550283d99730fce1f67e4a33b00932167dcc8e04c22028b479355d95e074f7158b97e2f552d81b8f3a00e9a4c5dfcd6b202fcbe7991f89bf3ad3e6858674d77c94e6a8fe6b6f092d73eddf05ef5271060f9ef1cac6c832bfea6e2b68dc434e6c9fbd079cdc441a919d05ffd2efaec02edce82a1e9f1e77d303618ee18c3ea33f9da4213622344b9814a5d42ddfdac25c8c199848543a0cf3e14cdd6098e1c156512292c3aa3e8f59b71b8203170ed48d6d1864dedb7914d0a010230aceb051ea6d9d90bcf9f2d559ff3477b491763262253144ac6f04cdedefe566ef3dfd3f307d3e90cf960800c15e86df047db63bfc851c5dcc75c6ac222680ad7079feee4cc04a23405df59eba7050992bb904f8ccc0a74007c3a7e2c9bd11832c312b6f424b5bed9ca81ad09a75ed8e4dc2df0c5b060e9b19369ca64fd19e24d6b2e73a0a18c4d7708d2aafe09da20f83380ae6f3e938ebe3319c190d2fe2e5aab3b40143e74f2d3347bd8303d4d948a588064a7f71a5372a0a8f7da29c365331b9395cb40cd6618a46b4bc066c851f0366573fe8a681c6963ee7ff9a4b7a0e492f57667ca3b398123e8049e36cf994911c6cabec5ece0c2838148e203a13fb9219ac3263c1cf68c9147253a0c4fec6404ee299f04f97f2009998611b845a4ceebd62d954dd964fc70ce0bed6d9d976be005dd4bbcbd395535e9fab9176172cf6c90625060b4507e682b33a1046b053a265d1ae64faf2aa39e357a12b420f70aaf34e81d3678d5d45acf6d3fe1fec2dfe8a004e735346ae1f828017c9de6ae6f5dfb7de3067debbb6fc233a1046b053a265d1ae64faf2aa39e357a12b420f70aaf34e81d3678d5d45acfd1e3ae7c32562723ae3a56b9153f7a6dbf2518ee7844d513b5fd02043d61f4eb8170a326d03bfd275ad0787ea81ab210092be7259498aa31fa0d1d654dfe86f58f223390cadb812db96c2d8de2411e785cde5e3f074c41478c7da963a7ad459136529c207f3d537a22f865916c81b611e404a31bf7dc59de44f111fc09b1c2fa79659ba31d6e74751a223e7ff36a2d784cae1d91e965ce9af08513a80ededdd740809687105eb0164d0a52928630628505b0b1f5f75d27ebf11bf20f25dfcce04d8bbd652f45cd366b79e185fb9589bfb98b6793455893767759e68e231938f855b9cd33c20d7f953921174fc221b4d72eb8178282186728199d0d1bcc52313f4d01b99f4c42ce9148858d22db6fe001745019a74b9c42c65c533f6454f751f2b0628cac686194c463c75a008032456f96dece439e82a96bc3c3da57189828c0d4b66d923f517f383164b55fea7b67f35e77208e72bf6f8d04fe07f6a36807d342f084c9d385869142e0d4cb034eda19eec8ff0b1ed1a8082848d253c05a4f28c5cbdf119e0c504a7ea2e70fc954bb50513f2d2973f8711e239ac63be25b39ccb30fcf48340a899b72da408c56b01f8c8889ea8d70032bd8333ddd8431f58166dd6dc3c0b0ac79139f42b5bc5e2b5bd9028b65fc5b82083b61e8a4d28c8522b5caa62ed22349968a1eb4dda74ecfcc3eb54443bd8affa43a8a3667042078daae3161b357940f91ce8e38b7861e18b06bc5e628078381a2914221b1986222ec9e8fd32ca89e0068dfb7127550fcf123183cc3ae270a926105d7acfb2d3d0e890324ecab633e2021387dc97dca3cfad1c5b8887dc7dcd5a558b39e48099d860b05f15f493c5a6ab75614ad25c3573bdac3be378b21108c185a64b803b16f2a93ed4114dab3f5600b28eb4efb2b0647eaf1039d8be35c21bca13f67177ba29ce8dc68b368d67808bb073da54ebe4d41da5dea5503236c671899d28f9ea98d13079c42f07c0f1fd67abf34b7ea6ac58c950e9f4eeaf5fcda2078bd318d6598b5e9cfa4480610a941518388343cced47c80ca9348297e4a3e1d61f9a964e480d0dc7ff6f8d200a428066a2166a96da5865cc1521ed618259112cc26df867378dd8f6588a3915fef12973d8b67ab54e8c513fb7057efaaf513477ce4bbab4f1a227f069506b441b95d327dd5e268b9df1b2a8958395a3f8fd70472824a1a4572540dca3a9982bba40164dbde4085753eb058587c8f01f123324b621612a2193e9d518d9c9c5a529efca8369a5935bd95f5b2334a5ec8da7dce0f62fcd0f318bd3421f45889aac6b21f7bddf11add045a69dfbfa9f3e5e83c56fca3c659b72bc835697d2c194a7882904e6be48d1122c737d73b99ebcf30aa657c3287ae0c5000cdf0a049af584d275a6e5081841a9b7db2c4d2d7c2ddda1d9c05808382a7d50bb0b9f69244697a934dd9f7418787a18faa4ec90ebe6b83d50587f2cd99899cea23300ab2a53ac4995bc2b9450f2cbf9f835e1092678d5ceae054fc600cf647a2a793d9b6aaad7b3e770b7f840ced8f169e094246663adccdd98870bee4494ccd5f6538ce2dc320d338da3259a7f0276b0daf3358d3448579a8efa1365d6319989b303e5e463c7ff4d2024f2694b5f302ca301dbefdb9efc1eae6247df9a00028f7fe3acba40290743cc857ee6e0ee36289a7ec69292c0fa22ef4c16cb324d34f16fca9ae7a0a1415667033a29a41d2d3e47a71ef126690cec11bc3909eebc068f35a0e2dc1e8203bf0dad4a4dfa49490916fff4dc9fef87bf8d3b74c2d8cac018298e7bd4c6ba57ede9bd447603a078d7f32415925a6f60316508cd65aec8152ea0851821a5e9f306c31556f8b9d1997d8135080beb2a518e8944f547d6b89ca5a66508c9f1d4609ceaee0f4f2df85cac13f8bcbae5b1b28b1bb9beb2dadcf9b1900239670bb360d1f7ff155c27beb48162bd407c148f5bcecbda471160ad0c206e1ab4c74ce545e69eab1bd8f39f6fd138d5d3d75e1ac0cc6ff9da4601cee0b43cb516ba9b5468d392811851dceb8b538a532a595fb4c668ef39f8e9a6ea27420b2b4dc412afd1e91d149fe4b1c8224b4e148d990b9e5a70202aed37beb6fff679928eb5e4a9c7dab3a43ed30efbeb42b6014f3ff7d2832f5c4c5408701d6dff6c7114417fe3e4da7fe146a14dba2aceb1677a110ef1196122df112453a1c1cdbc2dfa293ba65126e25891f5a1e8de5cfb8c18dc2f75837ff39ec5ace9021667fde13f9d543199b01338eddc82d5ee57d480376fc548ef8ed0845a66396d60f42a822d5e43be41e47c8c5961fc2dd33678d3f15e805f97f9f7e1a67b8a2fe70f418ded8078dd9c1368475fce3d81e336031d7a3e74931bba8b8b80abf1f623f4719ec41ce860c42f28aa44029cbb1b69bc7ce335777b4cdc7814f3480fd4281c57a72e663c2e34bfd9ae2a12c8e9ed9cabcc081d650ffc52aefbb10620bf8408fbf648840019a1a6b7656fe30253cd05a5b934de6037130161a2a045296e9336c7f12b7bf2e7b3ebfc0f476a1e1e4b2111afeaa05a460a9d84f6b79033c1fae23b65490455d95204c45d23d84cfb3a6984d916bd874b8a4342f7a6839fe56ad9d4aebe7c58ab264d5225cafebd632cc5a41afc086c618fa08461a054b1e50d2d40554f6bbe38d099f899171969e8974ef6d217e90d063f5854cf4d14a1518010f323f0596daf60225db8dce8de83b7b9fc889cf301b494865e500cb5fab0febbce9fffc073a1bf235c34e44c71d1c7375c4e4a6efb3b6789523143110c313ca11e15089cd429a7b059cdc621ec20be865e51f0c0c9a539f871a00e8014f679c32b35cc946d134b81410f9ca6b4a4d1a03659ef693ae91af5f40b922aad5bcf238337a3186c72ec7d7e9f49bf7595ce351c374303ba82f6140066dbdb713032ee64925af1a1ba36ce97e55121e84abd525e300ac7bb3ec031b42e7aa289e8d18f2c7d74b23393ea0abc3c5d1e2d66446ed84c8b5c7dbb1863e42f6626b708e91e8f4bb7454bdd7de70107b720ea2fd6585475cdb33350d9178463437e48e4f9b353057beb000a2557458f63d4179238bf28f2e0ef2545612b0e7e895eefb0715fe5dca032e9f0c69d235f5bfc86bfbde1a2fb5e896117b6412511375620bc0d9a5a52d28d6bf054079093672d136a4a4e24ac4930bc80be39f07b700ed47600e5e258558bcf04476b59da329892db70fa8d46f9a5fdbf0e7d3a32b2f7819427486b6aa77741f1b08331661e3d78c9294360b4df4013aa64bade84d8526941435842381259708ed6b05892ca6001e8c3f2a95035750e35d0ec8cad9fab977061d86d530c57818f37c94978fb1a51cff91731273347681a489f424ebb0dee0ec83765a0ccec9a8258a5bd89a32b47b4576e29f716e9bee1a7ecdc6771a28673afe4ceca4d354119c913bd8ac4a97ac43a666acecfdd41a615af9fc2abcd8f47ff35c337317610efc619eb3a391e87bfe18a721cf39e7c57e78467237d7c1cf4316221cbaa71c778da7d0831a1bd5c1142f92d9d325da962d4772be7958e83576c95150baeb88adaf9184b23868ad1ebb2e7a9051b549afee519dca76e7d3ba1d0e66430a129091a82db0436c025cbfcd74fb839ac7eb538b709a64bd1468c9cd79b8b4338115e64f1a097bc524f57e1990c913ae87e8173133be67b6c58cdc913c37e394651daa9e519e1ce409ef86504ffc850490cae8b498f21a6784fa84d375443483812272a35decc7ec6b807ca3126521f0fc11fa2df6dde6dbb4ae6962a01a4d08fe78f1d243e73d5b272c863681b8d9b727cead04cfb6652b74166429147837d9d38ebc51f2f83c339793c1b9f3567df34683290de24fbf7b357b5cfb8db15f05ed1acb10820b9d9b24e36330c0337c394a8491494c4ab9cd877af60ff24c1f107efcfba8a140b3d9e6de66f995b0b0c550934a129ae045544a21b6e89e42437a4df641d15a24ac9a8cd987a2ad9a8df1fa333caf87f9c8b402f9a4a474a079cb2d78ef89c22e497a5a7dabf539bc17af6f516fb3c3302cf8cc5776318b31cb859dc696a2702c18505af6796f35dbcf6cee29f17e409546db7b7546f6d10947093d6ae0bec924623261c3e49420826bb73f3b6d7d423eb1b0f6569eced0ff1637d54db5c968b71c6ee9e7aeca25047ac769cc072b5dfc65fcee22378553e98c9f2282d8fc8bec44ad5d85f636021d98dc9709d8d384a0621a65cb20eb7a09175325d641c15b3234c758120063a46e065fc96f4100e8f9543583a58784c69f6424ff4bed69d893c08b1e19121691932d09f6ed15e9bd277e13ed2a14ba99d82b2cfcb3568de59e9fbe932ab7ef6446f804ce42b693c36aa04e85749eef29761e5f4562cdf284555844409bb277e39eb0ac7ae9892f0cb8eb94abf7f296bcc6a4ee5fee74eda72b26c8040bf7277289c1887e19b37611eb8e62727949012d132d953559f4fb050d716777ee8510a363214101f2401b4754dacbbce9d8a4f4e39b79397cbe376d218c8620ae1ceaa0b74f7a2cfc184ac660ae15aa11a4b2659662152fac731f47deaa8f93def96477ea22326667d165c4e6015b630c19c46e83e70b7782cc93f47a380a3aa412915314db98ff3a9135bf646c8dceb9b77e74415e86f57704a66005bd4c0d93e2e9514244bf5e7767f0d68ee2b112148ca1b1d4c6357391d79046bb3f576838dd6c5667bd69ef2e05ab580d2b5867d6df09062b1623fc0f41cf482353f7c6922debd93be9b9dcdc8cf9434d1882346e570f7dba5a45fbeef5a8d4927fe4d7532bff7f2360789f1290b4a3e6e9907d091b4061c9c87a1c46d4bb13d60519b0a70211acfb84fa3fd31ebdbed10779844440f86cff0c1cb8188c7e549d44a175c2805e5474a624301405ca8b5969963f6ef956da0f0c4b8eefd2a9cd9eaf1825540eea76eae03337701581d0ca366b2a4a8fb6b8c3f52f5858a2ca6d3bcfec005c3183b634810735a0f6e470dce8d9da8b96ddb8f86a67a39a70d955a37918f81499016af8f44b73a26683674457d206905df84cde6f859aa24ff1c95a23047c79da4eda1e52951c90059c80896b0885e79ae7bf7e0351b707f62d4c7b40b5ea9038563242ead18b7cbe64ccb07984c9e9fd8e822c5bea73e80d25cf99301df72d341892c709454f16c115068f93d7b036de7922cd996fcd5a67f69be99c7e16af06065dc6876167833c9ede293b7d9582266b12f360dbc3a8686a6b47989c717c8d8589ff99195e7f186aafab1327c4c0424d0a8fc73aaee79a97a7cc9df952b1d5c06ea145d113ebf98bc9619411f56fae726e785e346e27d1ae96e58b102470a42000ea9222d58a03d014c5431701a918216e87c433a929ed7f5d37097dfa721da22466689dc5fcd6572f2e1c14421a3b9865233375622ecacda1badc94b913172289f03a895a12df94ab3608e13c2d60a702706de6c341227e5e1288e5759dce4bf687e96be18953722fe8c80902be281129de0cdf44ff1893654c367541192eddbafc71f12a1c60461c87a085ea00f64a35f84cef22126bbf1905c81d5e32dc47df07094c3a4340b9b10874a0a1872b61a600b26d516a7af040451e3027b0592b7299538362366bf0a064c2c4ec067bb4d2e0dc46314e8e13cf78460e84b2ab294ab0b5db4a0186f9423ce6d8a70e22493d4538fd68b48b1ffe29f07d5e34a597830827d4c3d63bb6ee0b9e554d898624ebd81266d1c93fec58153c0881c9b6a4f1df10c4111ec26d8b849096c5945d427fc3a918ed7a650907e0ef50ce646c11819a90cbf32c1d6abe1591d26dbd93773ea20ac7f037a6cd62c87cd0bee1d15fbe7f18f8a829ee91267b432b09b40bd7b93a2aed3f8e59d9c1ebc92e6ba99da540d0f87bfa088c976df1dafdcaaf2ccc747f2c8f14b277d23abf2e0fcc8e48ba16f37e352fc65ef294f77da9d6c8fe88d1e59c23ac76c95cba97f29a890becd784b9f1c97f368e71d3ae696fcf5ca48f3ffa6f6297caea69bbc158e67debd10315d960ad09f3c9df7d367efd0c3e086a33883abddbda1636add0b8d16328f22595f915f1c05d766b68cd5017763afe39836623bb42618ffbcacda10fca203ce60fecb779a282cc3e35f5cea39092acc5f58300c20d13aebe76f9d47d29d4ce2081a9f2d93d4d749f051d206e5d44833515f014798a4d41e00f053f22e435148e91abe57d39619b61c3bfd2730650e5c9139eccfba965f36704a4f24bda33d2f4ff034434eec035e74e99e3aa117c3359b217261a254c50f544209076643c740e44284598809cd52554617db667b3339c8424dafcaf6b10269f8c9548a9ec05e9f6fbca2f59c2ddb8f6cca9a2820872a9ef0f122d8af0381919e4bfd290795d0dd5c9ba9c9cb582c22b007f088ce8522f5db7ecfa6e2237a307b14c10bd074ae9a7377c03672ccc5cf1d9c5baa9e4b39fba6ecba8c1b51b3d2e24f277c4d3cde2b5651ffa524c562e4e0b0607768f46c2505a0f5d6c6bf92b94cdc5864bd4d11a4f274001bbc7c7793bafcadd81f9422dc7123aa683402c8598f1dadc571b8f4ae971caf143f2418f2e07df0beebe2f40a7379dd9f0b0ca21b0c814669db768174f402824bc02d6206629abf2728bdae843bb26588ba4f42c5c6fe479084b28e220cd99ee0552b59ac168eeb1948776d31e48a0eeb07cd08f629c1492af6e304346369d5a140f13696bdf242cc57ea9c66f6ddf3f926398c89b782f3ab9c8fc0a21a9026ec029482d2892562e6728f4dc272b8d3d5a7483dead57f34c1927635398a84eec66faf227785d31d72127ca81713e2b6bd5752edf23dcd2f6be74884441f4d9dc464e03919adcc201e8316efaf2e488e82900a80b71ca1fc19a8dab4d95667e4f2d3ca8da770cc445ac2b8cb05efe24060f7fe5084e1bbe2a563042ef4b6edcdc462035ba31e84cbc0f3021dfee90ca78c4acbf46a3ec15312171494e558c51d56b8976c26a668d1d488bbe1280283f12c63ef3be148c38c204ff8aed77aead4d5cac3077d2ed454cbf03ccd675fd5006d9593edd68ff013c674e4169fdad21b938bd952efb4f13c2d1ab30db54ad55ce92743ea57dd8202dc3c1e2647832c5578c3ad4358cf37dd01522e3de358a16268ccf19eea0f55378b2596a9012496fce0475b962ac92d79e684c4fbc3887f23693781a9b31c65e3a2790d09fba56de41ea7a7bdf7dcc879e716e5eb61f15a1332ed64bc104516dcff6afb7679676fd329d77ef24eb1c91628025bc24001f7ea543a706418bf9a9c40c9df6c8b8632289efd17b70846e0acd5957531e01d43b0338df9d9414042bb4700abf1efef4e8b699e254b80e580009ae9247a2230a2ad5aecd5989c4014a4e45eb7c1c7090872674ef7edaf5a38eebf41e0bc917c5b3d215266a8ea8449d2a0dc840e83b7e1d28475e165bda6dece67683d363255447c415427ca66cc867332c888a52672190ee3cdefe9a55da83168f7d72fbee804d37695f6462c05a9090eede29499e915625ed99154da68806b963b3dcf6834b114925691fa293f5674a0498684045dd0cb071cb0daf49e557fcb2bb268a4da75d99d0f86f38cce76c2204cc961514f13af0a42e253f3cf1f04320316b59e1b11b16f0d930041cb9202e21a50f4fab2cb3bf35d682675dbf21c508b378748cbc422bca98cc777eb617ab0306af768ccd551d49807ac6937cfa740141fcadd448a2e3c71a9ba7c50d49d5d31281f8881c97e06a3e572ad4a1389bb21731230ed55e225fc4d84ce1cf61d357708ebddb518def97ed92db88a57fb4cdcc2698626703f1807bb5c019f713cd56247cd9de2a90ca80f802d9b73e3fdf55ede5dbc072953af560bcc542580ed663e3f10970fbe8d3dcaba0650c72da430faac7afd05964185d1a319ab86dfccb7507bf534c047b1059f6aa3db50328b69fefbd58b8d3d19d5be859732717fc59edb68b9b1ba500c3f12487935ab61f93c2efd9a1680d8b04f9c5a8213ef8b6a9b139ba23cbd39da287be88c98386e030f293343d94ebfb2c0587d2615d8088ab1193fcf0b15f7c313d10a7f73c04e82ca8c28888fda26b3d3a80145db0db4fefab54cf4d5b52050c5fc2a2d212c52634c1760bbb31b203675b1341fa8def79f23c2645411a6ca1936cc62b79f4a8de023ea2eb287b09d9638fac3718bed52b0ecd1ce2a8382d0ade43d08230aac937146cfddec8d7329c0cc7bafaac12bf430741c36596d7b64eef081c4421d6d54128e1be0638bd85a6349f000ad4e83ecd61eb57cda7c391fa54a265739ab927356e1a2135bf25f304b914c83e87a1fee3884d2cd374f12b5ed1ca5790857cc4bbcc8f1087f4517fb605403ac7de1d6830b4b49271668dca9cfc9169959a6b2c782c1f5db080ca19e013ac99592d690d90c5be986072b705dcb583e1ea8300f1fa67c2cc5fcc3857b5bd856499279357b340def18a8c6d05a52d546d8f3b6727634998e610e08f695a6e20bb756d636db2a2e719ff80ea03e88aee9208741d0e242b2096fc417a9b2beab03d93f30717458b034d2bd2eaed668754bf959e0ecfe98e17ec88de7eb2ad3ddd37845f736183b7d3b5bee00a0f784f0864dae6d092e1fe8af993c108928fd679b27a5f3b043e84a1fb5dd23f14b47b5d65ae7e127eed1763b39cf7127c4edfa9161810c013c999bb8a3a49ffc34e2f3cad2c9989f660c5846180443560de3181a5bd2679477edfb92da913cc67c845ea42b87a117243479add7b27dc743172481072fc0847829075a4ffa8e1779c016519afd7591030d85f9b9605f481895fa43b1a8ff73bdbbdb8862b178ddf8969a70d14419af5b6fa871feab87c4f808b68f13ce1ad05444137266619827ca199b37ba4c7a8c80ec46b7d2a4d9b390a94967abeaaba0608a5edad8c419e17977dd96625adcb7bc9cb92ad2e6fcddb1334cec48960a185682f133fec1040f3f1b0e93180da657792b1134e038658710c249a3981a4c781cbeb6ca000585fb242836a099fec8707d836678e8f7495ebbc296874c0a9409b00776303228ad61bd5b997d7229cf4780e528d5ac69401316c9638f163a15bdad8694e628406112d4a9e5f277ab88b23cb7c68bcc688381d1b659953534f26a589244b3872459577a6522364d86e864a32d85fa99a44ec146d1ad6923a6fb7a796760f31b2e28d584ab813f0e0ae8b5e6e5ec7e7ec93d469d8090ef4467190b68ac7f0c8cd986962efdd0808a7390469b6276b7258d16d883879240f8e598fd8ff5f0badea9775fb31a932e232dfb212c223a27322758c1908703881b384576158e28bf2e0afdc7a59504b146f31936e4633555bb63c7033746d602f3b87f201aa5d064848777271d8035b2dd1523f41ce7f219aab232bb5fb5e1632f47c3221360cd090d35b0c7bb84a069439d0f27727117e8a59d06d348051a746f2432e129f60b66dbc82089d54e5bc064a7629d666303afb1f732689f7e74a7457a01655a50c18a2bd32d9573f861343be4693d7a3bb1f4001ef0713e8dfee0f45f254e10349c416207199bd38f9fb8763fc39f323cc0a4c45fa1046da746f0ccab220f5dd456220cf4698f3c38d701b1eb2ccc6f8b394c29df366f6050f3bee46b9a4bc5a2a8ee50fa860fe5a9b947bde6b1ae6a1bc94be707d72866e9da7f9c84e42348fd8919b75f70a43e1e9810f5b5c93f9b7c2ac661d8b6bd97976a71cbf00c7ee2b36b5385a270d268e3a168343b852345eab5fde4fcb902f47b87f3b1f840d57a5afbc92fbb737e6201ff5102f8ad71fa86b92798adb25daf49733ddf5da69c940d962bb9f714868a40ed2318c7b3dcf918f9c008144e521a1b939306b6e2ef7d478f7746a434722086533484651c4a69b5956f3ec0c4da8fe96e0669548125ae6382f23bc0a83ae7af31c7271ed1dd2b7c792026772411d5deabacee58ce335f7f368cc1342b70a933c2871fc71a07a6bd181e132a674d31736d6bb2cba7c35f491001b32bb4ce9a157f40f696cbcca1bf5de9ce95042f7088a3fd35ff777065d9f9ad09860784a990f7d2fd2fcd2b30ef219ae3cdb8e92fb843c64abe619db490d19230a1fea6b851fc079265eccce108402512a0ba02cf0fc0f3e64d0aae5bee23aaa53dae89ca0d86c930520bfbfd20873b0b79e08e0e405a5592947cbb7808b340b7889530a3819c21071d8ccbe1a60c8ec30049a4552ca4b0e790edb73337ae152883141cf198660d45e69cd12ed571753ba639c1e8c3889c41eac7179c5e574d9d95e78a2923fb576b0635b47f5b615a0e492c806d42884c2fdf477f2ee6b2b2a9d281dc3ff11563b6f86b697a8494f9ac3ba90e8ac4f8b9cc1e5d41938be45a368f126a6d1fda03d60a3d622dc75e776be4e90c2d2c6e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb490c3b6a0d586bb9dfc845b236cd88877065f84483e3bea2153b4b831c34c3055a449d1cc40adc7e874d81fae1ab82c35ce2a0a84cae7141a582eca2b26e94fce81b0f8d115921fdaeee8ed6c5f2f8ba09da74658bc3f1cabeccfc908a891b04354b2d9bafdf8fea757bab853b1cac4c7df00b2256460e95c7193a028e1917dce5a517d0766fad40dd7abb8dfc75b687bf505cea3bf4a099a14f67ed23b18b15d94ab6def9ab2eafab299f858750ada144f1ad8aa9e42828bbe7dd063003eee8189bda802c3e35623236807dc79ef77f294376add03f2970d4fa96ea0fdd4fa12235fe0f36703db6976777df545a48790a918cb27dc48e3017e5baae6c4a0917794cb58892c0b0361499056ffefb9a7a4a3de3b3044d3618f9c277719126154309e80944c93f907bff96183db70e139d0887c167d4ed6047f8c24a4e703ec34feb912fcc11dd1f8b605914b19fd67e4bf66a19b57b1785b1b0664b81a6cd2946d6d975091465cef959e073fb2ebed32d043b06727f31d316ff152731ab8d7b39d0cb8b225676c8487997f15132b44256786f2b0cb73950832080a884d31c1a66b6afa1792e427bac44a074273293fb9a1c9f7eafb75ceec91121930cf0e5e58ee17eb0afb848744651f08d895e5ea0eea2ec6e692cd11e988fd8ceb24c996fc3fe2244f9a8c0a9e09b39ea53083ba528ddb4c7d4366aead52621621b03d9c037bb0e302a80bc4bd241b4c28ed1fe72a0e4738e9c2da636b9bda1be63f446cea1e158a6010210a214b120e06fd3e478982c43f588917d1d0fbd902af162b0d096b8d0de22cfe0d0e9e28f8defb07ed3ea9566aa218619912817b9c48f2876de538f9e8914d01ed80e90541a91004b6b5cb86dc9855fc5930f1580a7878088be094b0146a1cd7b177d7b250c265e27a65b154e24f193a7ef85682f7ebc62a0bbe64aea8322d23b9784eb36af0b639c9738ad35cd71f5cb79b3acea344a48ae19f0321a8f2c8863fdc7c7efb652cd25eb62a3120ebe02c0450c30735b839c813427a20da414c79a46a3304f60b896a6b3da0bb0b63c590d16593e70f0e13cc70b7bb6cbb927fa47699e24841fb7c297355fd24f40c835d42c2fe873f8eec453cf784f32af74f6596f6f832397eab7f15c793af1a06a2dfed2910533b65a78a78a422cee268c7c30e91e3b88333dc55b86c9c472d007f86d5762f6f461117dca84de98d76fbf811c4179dfd9775d3aa635e005f4d8fa251cdd4c8b50987f5eb15bf1653b6cb7dab9742ddf9b1faaebf1ceadf760731dcb3e3028f9e89c156fad6cdc22f91501b7eb343884cd47243de731000d4628ec0620458e4bd2226e25fc922e8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855mods-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(aarch-64)radiusd @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@     /bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/usr/bin/perlconfig(freeradius-server)coreutilsfreeradius-server-libsld-linux-aarch64.so.1()(64bit)ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)libc.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/shfreeradiusibs-arm-3 1670847455  !"#$%&'()*+,-./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_Updatedrpmxz5aarch64-suse-linux  !"#$%&'()*+,-./0123456789:;<=>?@?AABBBBBBBBBBBBBCBBBBBBBBBBBBBBBBDDASCII textdirectorymakefile script, ASCII textPOSIX shell script, ASCII text executableUTF-8 Unicode textELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=298d7d1a49e2361e13044048e0e23d17f6da8367, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=68a7a3e5a9daad7731368d08f44b88c7a491b53c, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=c110468c5f72576a3a28a70e389c187d45a6acde, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=39b002f4b272d0bd1f95f4d0da6f14351d7e164a, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=67c661a671e4bd37d901abf4b99810d63049ee07, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=ed5866cc22283d2dd414e0ff1f1ea11c95e8d9ee, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=bd428368b600625b81f7d09cf012f49a701d090c, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=a39a04d4aff0a51691270005b7562b840871cd19, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=1e5e126dbeb42301c148ca0702cdceeb6fd62901, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=ab22733d41b134195973cd16fcb7c1ba807721d0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d03c1416f50ba3d3d0c8775f82920638b825e1d6, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=6edf01793b841f003bb292b348825a390f4e1066, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=982d71ec96af28fb5f33b1551fd4d26681a0bd6f, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=716ca71213a5814e859cb8a072eee20501628ce4, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=051457da169a97e19f433e6eeb985a692e3b4c55, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=3e00b4ff24b82812d1245fb36bc5a772de701712, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0140f05d4616740c3681e460ef030a103d03fee6, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d9daf82ec70542a806213b3f7400dd021ffd22a5, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=bdf6c0bde525c65e14d895e6db5feb279fe2f41e, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4cd2df1153ac0f149aa0e0025f1c050edbebb28d, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=71d223df90849f413421f5726fa8ca1486f18331, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=34dfc9361b51fd096f11cf35cdeac776543a2b4f, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=47a5dbacfe546ea9b83a92b5ce5e3f1f5c9e8f3a, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=de016ca6ca865c5475f211c192f180c5745cd368, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=8b43c2655709db4fa14e838aa1e9be6e03bf3976, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4e1b61cff86aef24836437891b42438325b5a0f3, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=292b9b51db07e6b60bf8a6f5fcb3f2e76bc9eb49, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=19a3adc0410bfcca7a7a7d212bd641c98eb13638, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=616077980137325fa6c22bbdb1503639b5970e83, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=55252c02e426b704ca26cbf64630c8c12ea1eb90, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=b101ab9284d5983109b647a73737bd450fc459a4, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=123502a3ec9fce80271bb5670c0906a8b99aaac4, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=7b76d2a4ac54239a20cf9da787adefc928ff21cd, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=c1a153d0f6aca2000d35271d18dc975672c1e963, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=e67ff5cd19d0f32e0bcd8b43e46de1c7f240f9c8, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=582e26b783ec413fc0867c4dcdf7fa7a1e615524, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=8169f9b7f18c32d1ec9b2916c4d5897161a1fc96, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=8271ad94ac09831db5a4fda8c5219f6c6c5697f7, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4d5a63d8d346539b115340e66a91916c8111c4f6, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d3819a6018f062b01f04507242785ff328dddd41, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d31f8734c9fe8534930a3f6e563cfacb9f634418, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d9ac44e90f1c9cdd6b120d74b0b4468b1ab1c031, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0b2f93b0214a7679bff44565e9811f10aa80ab46, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9a19b046a7e1a2121e454d6c930994cf32b713ea, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=b6fc6f1c781de43c0a8a2b5e7d4a7fabb41922d0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=6443802492319f0d84318aeead376548b224f307, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=f33599a87c243dad1c58b6f8ceee06ff600ece6c, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=435882434bc82aade51568314a48a4607ae588b9, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=8da66ca91b5fbeafa82b5cd16196c698f3f4534e, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=f672144de80093da71eea0cbe92344792d54192f, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=cf05d8e26063b4b6caff75fd539c02069cec0baf, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=f6839a2468bf67f47a5d02a3bdca81c0eec69fa7, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=043e89920d47140f54c16f1169d154b5bbf169d6, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0d049e3c140d266cac08a9a2fbd01a3f3fff11a8, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=161bfa81f9e92d47e15d899333005141992a2c2c, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=84fcbf8576db93e0ffc09336323295359c9d1487, strippedPerl script text executableELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=b9a6aeca434ec18d2afa1dd2f2831d3028098f64, for GNU/Linux 3.7.0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=575c97b946379f1f25088349804a5e34baf16a45, for GNU/Linux 3.7.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 "&+/15:>BGLPTX\afknsw{    RR RR R R R R R R R R R R R#R RR R"RRR R R R RR R R#RR R"RR R R R R R R RR R R R R R R R R R R R R R RR 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 R R R R R R RR R R R RR R R R RR R R RR R R RR R R R R R R R R R R R R R R R R R R R RR R R R R R R R R R R R&R%R R$R R R R#R RRRR"RR R RR RR R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R RR R R R R R RR R R R R R R R R R R R R R R R R R R R R R R R RRR R R R RRRR RRR!R RR#R RRRRR"RRR R R R#R RR RRR"RR R RR RRR!R RR#R RRRRR"RRR R R qaxdElogrotateutf-8f40457229b2048449610f9484b86c076251bd58d9f7ecdfe3147c08a5c6b4808?7zXZ !t/]"k%T܍{ȳ>C9%7, [U:9]kp[d3oK#ݖƝ!x2dׅ<I"MXyJ -u*lnWrڳ\fƲ"[l9nKXr;-- ȭ(\V`l|$a~F#$Uԭft+"kiȞ8W #< s s8[-VºN!_>O.aFl~aZ4|U5>_j)%| ?1h{(c* ޥQBRjvnξl~X̆S23j;ju1#םÃqY+c%fg!Mv3J(A'o$kr,!l閆WdYǘ2شUC;U- $96x3߷dA.t6aI!Pn=PT#ypnIB-`)?r#.<ڟHl0>%o[A5i>dIqU7AcXmtV8ESj6+7U4xU"58GII$ 9-d܁9p2gRjr&Gԛ>/fN oSfsݑ@! Πh(X Upq&؉ۢ#Dh8 XOf);١eb~XW9xŶrƟYBG%-z BiVح&}mw"Ij`b4em0YN{Fj L%BƐZ'(ʙc8d㠌(ȍm’7x7&:ԄM2ͥE #'&*r7,5wڽm;a /.gQrAO&W"2rGD&w(Ek ͷ-C&׎ ;>8v'uMveåyJ`"W+(EEMpO~6Ȑ_[lXaw/e]!g[D8# pspUgA UqӢoA)!_hCA@ˇ7k o.. * gB\cC4d*΀1~[7GI9Z I:2lU@F/ޢaRa,/mF<лNI]N@d[>هX,/{bf2Htj&hәvS 1ʵ8&:8in&ec=]Ȗt`  xG?7&RiϮso{9'~r ZKB=V|_y:(k(۷0M g<„ٰr^` HRբČx9,Zk$" _JTH:̭N f'3\2:T2! h+hp%r89o]tif%-C^s݂&HE\o3#}t5 8fJ˳G?)~/{˄$:29 ΀XLP# Οw|W!CQ ׊E8haxMA]/[ȾhplQׁ-B6#6;`v7AVEm!g  O]TrF&VN`[s~XĹ9A]=y_I\UsLp MCڇO\?+ m} K$6V?xS6²0Z(nyE`OT?tr r,i~Η-u)d~a= !JoQvC#1 t DV d۳ Ig_Bh`^yDUy@)xAB8X&ͲNa|޻?JNWc bh #eFCQ .}Dt̄P? C,y dn1jՏK^ $ ?OQB(<,2aŖV c_%B(I}FavS*]ǒ̜-9OjG̾*:aǐˣ)$89:$\%Mĉӣ%&:+̋*U;1#%S1MssemIϼЌ$"w;.R@f{d\ԳS L|"-Mcl]9dM38Rys(1 5M\ "_Nt襽06L)o2crmw oW(Z@;t4Dw榐@h:ó$ҹqrۈǡ(b或dCrՠО=v2 Z In.i^/ܴ>c`@Vߒ˜Z ^|jYX^ګ9uS_d&IďsYEym#kyI,0r5ֳ.:UhԦޖς^Dt&RA[`+iHo[dH6}$Z9 <r>t"_„C. -SUƮA?)WuP CLW2AJ*>prgj:=w#*tjsAuY{pMVvK700__7ƛcX E/Kcea "X bOs:C!ۛ ?˱]\Vth_ @8݈riya^btXe[f SV])PWY?*4u.oC!9£؅"3MѶ+krDO-w+uI{q2`Lka"$GmP"{<9[V jЧ"6RIcwʻ,%w0ƺL#wC D7BOe0[KY4H`7CsxK:' y E [B]鶊v B1:mXڡg|#vY _GS;͔v@U˨LO*b=՟ I>t`+;>KHW+t*"LYN|ϣ.MBӸ WudZ&LO-=#=B2ra{*/5ϼdH?iGRde؜:>5BO .,/6`dL90˼ fHv1 ;7؇59xf $ 26"!ӽhr,wTda.T|`9VX Up)[^&(QϾ#NPYSDl\<Cфj{#3Cfqڅ FN|(5b2sۇ8N%Va`oAVfNjl#s]'؉ ޟuO&fndq(.&q%|cީKMJ/ qBޘFB xNa\PTi#^G7a3vi>1E$wdbҕR*$ykzM`|J y aV ]E}Yw7`P<n 931u &gW::l3NHXn;Z\H,:`og!^!sAgמ-!SyWkx{꼔BtL3isEe@փ3(2mhw5LUr#@fO= +i¶]>FB&Qw"xE`';Gb5pl0FZ^o@zv_N!9O&? U׮E]?4'x$ٲl)UoC>'ӟ=˪R#1x_#Jʢ"bԁy0`:kZ4I~1#T&A:G`Lwߣ—s 5TR6u1y*lΘ4$$JpbFp4@+y/=gܠbE҈ǦsՑAIi^R0A-#T Nl6Pm :CUt[%ƬKyakͪF+=c^h>]Ef|{-fg?go{OT3;ܰ/3 ; 2pNӀ=iŮ}ZR_zHUtSeD9XpAG1|F=M8vtp$-2 H{ pln. e+La050VywaozdH'Nc]@2[9pgDMǰNhVtz;#O7q (}r422LklBOT+,.l7 ֗<&8hx64j092jo0}Mj2ߛ }#Aaba=9\ î6Nq9FTQ1kVrH۔hoWE ?[0^傅 !4wxqISɍRlg  lxΩo#tJoCL?.[PgRxPԤ`<}v b:PIh VnG$l$*q;v د$  wRq 4J܅"&PbX6Nq3&$I~Ko)%93@7?0:_!3;"H]a҇c!}v܆I^=z5ƽbeDG]i+k!\WJE\{tM߼Q̘dMKt9ii%{l.=/enl{ Ռu檸KCL6J[; UOP26}㰜yF\ +e]1nc7!Ħ]ba0v5tVж _Q獥k /yKt`a@W+͋N G~DQW6(Owx@8U}9 ]20Z_#yͤN(C9׾dxԓWxuqصqh U kl؇'f>#a8 ʫ,N C1pc8$4/)WOG3zϥHE';?yK㙖LAGx܌;wxʾ3v]SF)̞G/86ζA9dwvi%6ehCނeq@)`z4tge_-ߓ+G)-⡏%W8*l FTb8V钸 §eP}_XqGj 7Ka7#M^AAcNGZFd꛳> GVeNj^GPd5N[jv34-j1es]WXv"(H5AV-f؎E2T;ˤRE.0+[&hc,uJU|#Ayn‡۶G &OISZI Loj9 {KVBn;qY̎ /7'~4̙}؎;UjŸ+qRZ "y8MҵQˤ@32Ysn W4 ݮBTf7#0]{ )ϐ+2ܑ^@(,'IȪWVŽvC04$L.^ -QA.Ȯ՘R!Kx,+VN\|!Z>(cWf;w)!QetUHWjiz!Ib"@HyP 9,0cw~Mb'ZmJGd9=I)U|wAb?׼23Ι^X׷b|7ۋe4rg8 I, CY=W>B9m( D) !WeĉPK .=>Le!քC،/57|/h䢌a#3d<[ӼA:g7D֐|[I?p=y;}t0ތ~|Wtj]Tiz mD,sk^"' (t.OY"RUيoS h0WV&⿘l![5̓!|ezs?u'hM$G$)6ĞMY89ߖO\1XO6b#ˇ :UK,\gj'"WD„mIOWXgn9_CGȦx^տ\ JBSՑ)X!Y} b $= c*sLNcЁÿlgTV,F""f?9Ʒߞ/J]ɋ(/q)0ʲ(DX]4>%PB-ؿRtͽ3Xs,Q$36QCN?>ZtȻU Hf.O4(ғ0Y zDBAj;á<ˣ%oB@"z><]5ɤvPU*S[~=žxx\$;* 0uuh$A`|!R{fV\VR[_ }@eIw8I{\vO06yMA\\磒b?, -ITC(pWӯݖ:rl΄[n :wGx+MX8g ʈK"sх@֠ #|)݌h] ``P_1 lM{?RQĸgrAhvʮA8Ó0˹y7+p<}%Q˲-] YXAr\8V'4P{n'<|3Ȕ3$Ł`F 9B$ ZŸK6K.#'w9L^!|L,r5O9HWolԓQP}U2t+ /{ڪAkM;~(J_[xo2C{:yW U[x~]0WJq IgH6JXud8p) aCHt047xOW=$p:ouS;15[vXaj~}iI$:Kj"\} 9?Ӆm7z:0_ʭVܞg=B9K+yT ƴ4`nA6X~z}07hJ\!LJZEX  G*q9L y Q?cw9fLy4h׸%ʗ' U/gWpU*#]rC%V7@r=L Bu{\22cY\ V4=K+#qh4^:L,MM/Rç$|]Dr.Ɔ*0jsI0<tmkY;lus jzOpt 8ȦELr//69o_O!帼?PeQ;U"4=j> \.a]ƭmNlsp*" @'{έWE|b붪2d:lcF=Q0DrNZmSGuJ@OuG6 ~qEBŋ6_D %ҐZ' i/RU4Z}rSܑKߗW%SηBC,<% ]܂gЎ~r&T~1Tl$,UT/%P(H:vcϩ|D/b BXxR{\9F!Rw!KeƱyr^A2$sX\v;2*0~a|$0z63kY$^bw!!sg޻4 ͗d0^BaE ,[|nmž@c 3T=C`)vZk!-AχՎט }}*_dp(L)cih*<FݔTbԃTw8T7 %wvV:7r㥕'|g4.Lx8)}hNknu'GזnyQ*%by1ր(͏i]( z R KWT4.GfPU~"v{п2mMRwN#Vm?@PB!:rJ gdYJL~(bCJZ5z:΂F`]3^)ˇa @RM3wG2%?t];/j ~1 ҡv-5"h|E%1By4ߵ&MnO+>0a$'p90\,A N 3?Gy;!U:ie_u#!,BF[B׌ GO!_kqʒW5-u{"TRFfJ-=½4}dn&ԱBU"Vs֩B[xr#\r~llʢOb7pTZ޹ޞ&]1k=m)Q6`_k鰌E O1Hr0Bm+M~0 PEP}N/tJA̠>)sm*Wj7;{ʺP$:QDvaz73!>B>..NÌ E9fAI%zHT>jQ3^?@ƞ/D͓TRk̛pPՂ66zX"޾CzrޔSl b?i#ƷAU;P]Q0GN*UXk ?ɋ:R1Kh ٻXT˟$Rbv]j}?#lZ~)<:H^ρ.p9j {[QApp LʈsUv04Z|vCxtWHuz'6 +ЩE\'nPW0 =y?@Ϧō)* wp"‘rv1T" xyowO<ݳǝ21Q o-5yGlS;><|,DzqU%mL]j@[f/)!7;LES轊Tf*\ir3=5&L=(g57MV;簕5N'XIP\UE80+27{=UmdNoIQ;ER` Rw#V5tN*ݽ_<*$O‚Ϻ w >'Bn<._Cq?]bNcf}UD_-BW_[et?& h0/~P .cNa\, /1#vz=\7`Rg2Kܗh-Zk4@05"LUA[$3qhazf'tPBSue ]kϺOظ,`%CZs/b2L۬T*|9IG&a`;@<#6pAac _pCZ{Zᙤ)i3:Oe33M S@+ѹ?V ٥L˙YWjx~-ާICUuy{}0t:Z˷X<r|OݶBEߜ盽ק*&|i>iռ4~+6TbL/AQh~9U; G/ |ƈh&pDF^ j37t{,ܪYӀ1#&ٛVYiU#eo>ks'{Erx.mU aX}2@ Қf\[EZzEs:bOCWnQ5fR0[b/5P-pT Y;MF/,MJ*Hl--p8[JEd5)E+5_vp\g~d^s r@Df%Qdž)39@CL´Kx^Ȼ_h ԧIbIduEBdu^xXxxP<~ S\`M0nS?/E_x'crQz+ze)e!Vvʽ8!P)Xͼi~z_xR[$i)Sql踐; v][Yqq `xXFNd-Uߐbq1QNCU:6UzY=++?Gl{RkOxNjR^q+sN8w(1? v`{ثxDZы?&./1ލX%3ϛ*x|mr^7{򗶺%OVG#,HP ASgYR *\{Eʐy7y6=Y۸.{_Q5URVGZAڕ,,Gt|/hh=;,ӣ[Ҫ)Ji427[9;Ce-Ve}1ȕF1 j#{rW8BTPFt=Io9w B!\ϹhQeѹ1A%yrz;`|20YFC+<,V㢓D]tޢ.@Qg|_ f!L{KCopYqb̈hryCL nvdPJ 33#Ifs d7$~<$"\ g K~Boƥƕ8yQi3"xjom5oqpW4`ŵ&k?F9>Wl؆,+F9a> g i\Ye0gT;a,}Mk , B6_rp{Br+^ mÝ̼ok-_a|1)uf#UO"6ZD@1Pv&2(tPbDOMW.~^ >c;֎ޡAx oL@wN$P Vv+5éR'u1>!3ue ^SHSQR0I%Ze=/?<%d{"8pUAj}m jLRsmK - 7rzޏu+s$>i΁{Znc *V7M4SWt$FCӢ}τ:_ pch f=tbZ<$E}2ж=>IG;)>H8=6\doHSsiZɌ$oږ mC^Yxwʖ 2[˼jiIJ0B'JDdfyf25O%gIJP$V+()^˴p@XOFqP~糪+SfxyDsB缧{\G^@*\V@HH\$o"B)!fKg:{M{%zfAZx ~d~J{Trw/,uiIb@YHS0 3dZb< a/Z #9Y2wt+ʡ6Đ@ǔ&us88T5&5h卓tV[]yػs$Y,YyԏHJ\o6d pqz\?>PT l' $@ץAt@Eղm!x(Ozocf*¶wtǠS{Vo;2Y!q,3yg\0愬 sxIvt4S>fXNS) 3> lY>>{T:dǧvf^K.кU1ɳZ,G68CD1")+QD e+{Lq/Z Xj9!Hb٪@K^V֦-,6Eq`Lmud$\ rξ2l~[Eg< inN_%TYu|\JbFJKՁo8zTB*me^ak?Y3aC_u fGH@&<PW PD@G,xT\IOے -ٌ?!Nq+eM#\lc;| _ f0ѩ >A 8z$Y&s@!*>W< $O \:vR*C_gsdG$(Wj4Ծp0̜C]~'s' KcQQ,TAYp{O<#cȿFb/w`~vT&]=r2WonsR|}1QU_U_% FHtpz⠕x[Z۫)]tz$anpNpe$A9W9޶UQ#C V֜=?a!הߎҴkݒ{1tmMmF7!urɍae}\,SRjA~ D͝3Iz7H98݆DV菝7uOOwq,X)ۈ790"O7ak (^ѫp bQW rnLĖU=ϊBM% MϾJmyDIw]y{6y`Oƙ% l JKk)pσ|DyCQGrS܀>H`CD@s3Zv=ZJ NQ2}`5|g9\AgȈV0Kf<c ({ 4;=̛u9^,}̢C[:.lYᇳFl.ڕThplWh?!xgp3ө2=SC -wo3%Ο}%eݢ:T5 *sU-r8|έoQ,(5ͫdJ;UvIQ,`?Y%+3 42qR1}\Y͢7 #Z/1dfiC!wK5kACM@T!W5Ek>,w( @;@c%!{{%VE̊ejQ-GDp,8N03{GRZ&>-Zé&|[sHƛ7h:7c'qˤqh))#a^81Ё,'3>}SCCю7I:# 0"@m@'g $]$N!o~Gb4`5{j% bGf4<\}NYzF4~OdCS҈_, =R&kuW7̌eI0jpDT ~ djK1 CgHLvA%&?Eҿ@tl.pdI%Vy\מQ]4ǒd& n,ԙ z*BAqHr} {I6BP 081MkdCb8àXHf /INXa|y]k^~#) 7 '&ß5^ G"BoZG W~%0zbAvv)j &̓yVgBE'{8.|<bjtδjmo#z%ˆD#KMِͮ \qy7+w2jY2_@ޥMUQS|z5trOAb/G?6SHV-Jl]=q;9=:9l:.0wU. J +;\'޳ Z9ӓg{R<:_8PDyW7L\-uYDʭYc*%'+X\ʯKoDQaٔ1#RAo0ImJ}h/M#̝`_yB}zHUsF aO"wtOr¤M/sy~p9qb E"noUMʨdYX2P οANj9-izuxXUH_;wjeh;_e fNc7g NUe&Ρ,<6$LD̆%F?VSc s3Hz>F2ZJEq 2lfԐu43τ2Uwua/=UΧN_O\>me56.F>$QKq+L(dzL,*fd7h<)aP982@e9h+eS K&jY(ٳ8]5K e5i` #.|2p F@-yuZӃ6 7'-h<%U+B~w*F ;ټj9izx#eS ?pDF~G]z$iq%1=ۭgP9ٓi6Ed ^א|_و?%9@PE,DA}cA`0muVsŢ>E7͠ /qktM32a*8[—7.|㗪0jBv%)-ۡTq6 lLhQh°Ka59sρfwXLu]##Ȣ#ܻ?2,tӥ8^`/@BIG:\)́P$[rW u8ěAPjVEBhvx4gljOX.s $BR]m"2N$0R6™U41 Wۜp68ASVQL G}(QS $AYt3PL&xTtPZONsQ3 C4'f9-o ֫.EQAb<Znhѻ%@1k)wxt̛X-_/qNP@z;ݙ1!GySص!5+v:E&؆ܓu~xރAN&01&aƗr$N7nD D ztd8&un~AT X*+lobXaNKLĀ @\:ֿ|w7 FG+,/R^ь {b7#fk}{âuckj,'%*rzNِ6dI5T(!Śnɥ(sԐު~gv+ @΂KLSj(1ajx0bP4lDwrGmf>FƋ#>i1c/".o~B2h{?C.Xe=I>xSM K^ LE G~ ЇЮzUnU_j4XvFim[3M.;6oygG/D"*)%!%p[a;!o[B!J5;` АPrܱ_,.~~,}6;DR"Q(0r1L>mpF/iˌ[#]僩;[ZP.Q+\i 9mx Āg5H&O!P+>@rűP,E|)O#%'h Z;߭#F@z>,&~W%nQ=䤃pΊJdA={XSpWiU*+X; rS`z{i-ĨBC}3D1 (=+xj@ P ] 񶞌:%؍fZ,i"XPBNx !2(iZI[^_1{Jͤw3sE`Gz8Ku{+nlb`oV䂓N?+QF ^V,1 R蛚adgKk|u)}ti*WV\Zy}{{O(THYm7X>!sy;HE둤 $G8VG\P8r>;֫1\r/a:?)[$ަH'&9^{m k8[_^w[^PC,[p;;=yLoez%BUe{/Z qDE'fןsx;;ͫ6ы6*m&OLm^^eB]#!oƞ $z䄂(I =P#`?M] ekDmF?RU,R׾%/6φhD6K+1 u&Ž': P;H3a,ÁEzDʟ"cF:Cw{#Ffq|L/#X|s~M/ I=bd(J9FAJDQ=_vIlRe$-?і{S} AfCTKz-N_oH*wDWBGB6GL?.+M.w|1mПM.1(׶=͊twzWEE,dG=ȽwP "3%Z( [˶am֓K]Ha<"kyN ^}ZwuÅB#zɄnhm~ \sx vgMt } zMYYaquOv] 'B؎ Fu WR^v%c d@yG08dKMs4Hl Kea 8AmvI괫M8! `l;5=|֡~x}J ĕ ݻq)CIo E[@XUmSjиgG9B"mJZPi Bp֊8z3`z X{#s QAKei-e$侀 Y=~񊠝$U~wAQ$06M>H XnenBu}2wƒjcq[V'g׉PA/QO-wvNI[04Qi㬈 Q(\ 45J1;-}Iwc)sM#Ĵf +Ի)GfTuȲMQr_Y>,gkxT2@ezJcH=גGj p8{qNo"YѴl,dZɀo 4is k:i,R`E ^LƵ/&Wp>\Sq[,4D cK7f!GDc$؈xf2W~t [fM ^l*r<T7S4 5J)zȚ#W jVJijv KlViL -QXhh},R1AnwԵq&G9d$g6&g@?_Q?nbMmS G( p4lr.akuݬ*>hG%5MeJf 졭~C 7wěK$0<^E *Tc؞ j2]pMZm$NorBθl:QǝHOQ*Vr"%_X{Cbn0tNj5zcB _;{;Y:$5Ť$)N͋u{뺐YXc iy^ W,c5w7ȆKE=Inh/92}sA8](°&mIdL@rh;,H!^`c *|HBepڊ[5K%⩼vcfNki]hj-jM$m˲ xKo7] Hb.>}3x?13x,hfk]L{Do7ZclW;Gt)-caXIw +|Iy}b_W$VULx[Ju1lv3͡髳T\\v 3D.fJCnWFY{%38-D:HQ/^˝}PBc2lHࣿ$is~g'(T4V#$TCx#QYe #rx^wx8 JLs6NFJw TlDBxJP7n\ ~N̴Ue>n.JM}Kp@8ޙ%(0:IemqY>Z:Pڿwy_}l Ɇ|0*}3:+@,*0V }TL;/ݚNjM;89gQ ,H ]C\JlrǼtOIksC'82;lM=n0zڴ[ }7 `+mzw*Db"qnEkA€8*4ch0b"nD7}s%&*Ǩ~P17VP7W1X_L貶7-Wh}ǝGeI==TZ9IU}iZF\hi*(kH揺Hy}(w9n- +]%$.v*hGz (W` @.5۷}^)F3(ȴh]A(6e`֗ mFgkn%s`e*pG I!QNB L <zLӛ̟aaKl-w/dTOo FNBqž?XQ\ݟ%D-[hFT#rF&U($S;3gRZ;rRV ѯgܽRR: m@H|RQ94yn&fClfEg`JsbkJrף4˫f {eBEh`fi!,7QKx3\ry킚wY wEE3rgB&ltI㦔߭Y%1ܧ$fTpNb.Lέ:!"rEW(a=ۼlH-ӧcmU4e†tl.!0ǥ]H;i0|^'Fj4z)thSw[ǪNY[poVCИ=u* y[pn(1[C1ep^ z?5D% h̰Z"rL =n0 i mM@R "ir.l;E3y s~n2(.ph~ lIM ?'}J#  /KkJ7-Cتiwr4;"۟ˍ^ې7:fnE-L,^ hv2IOfQ:6CB8a7m50Wl) ]=Z˪'@VvnLg 4s\$Lr@Ēc`:p.ѥwVbmu;G>7:af]Xߦ8{1JB9qsj$l_wbG~9_Ms8tEkOyЍ8K a{ A(f{xicN6b^v We3{<^8!(~pa֚+B?4ql2e齸Uv]a{5˔W%9trAzҒ9va2 Ir7@%=9;^"'D{忁DneuL!,6s{HD|kROS|$ ]>Uh03AU=W"e! sV 8+9ye~lxy$n099/dBSGE Wl0/wU!xWN:ENl#4{ 9Ww}sXZݭ+Ac(&a!hID G#֋t*1A qO5±xGL< ] 7A8'JP·ٿVD0yihgQ%D恐Տ̎"_3j`2˵wֶƪAuXƱ~j'T#aWn+>b|Wf&|ImYɸvmOmnɮGٛ6 p:Idܢ|<)Ԧ4L9XVzWl1Al&僶1#B_k1-X_8k=]\ZJrih<!^p0eD70E`#0Vґ8`#SODRpU5 M2c:%0Hh& k Sĉ)8q u=ۊĎy>O(;DF׵t Q3{XΈ|eW-Y r #m8l +&uρ]Hڱk0Ǥ*z4&kȲDʆNT!cўŻEO#1yl*b,}3g^(7~ڬza`.bPa{<۴ Ak s_aZKe9l6H*~F*ԮKT'ݳ,Q?. z zbdn${7šl/`X1]3-$-0kFW w< /B> b̄֏)ΆwX:q)P/tlϧfܷnIN+#Ss|} ]GWrz y5LXRl N YnE(>:PHQF(}\R6&e+{ʩorg}Gmݎ "%ZűNhq߫$/ '&+j}c`ΈoX0skej=WvVS]K42}nHixLoLGֻ#εN$ Lޅw FU4Kަ F)MPHXuIrmh/ĝu²3E~0z rz zq~*@.]\6Oj֩g5`mBVvѲ}X #J♬NJ%OejJPɤOEut~/=1v/c6 )wX]BE'CwL?D|FG8~鵾SiK|Dr]pRDsF>0L#{nB#`tD߉)[ɘZ=5VEL%hNsnʊIZ'PnhO1ϥv pY X9S8:ڇOV:V3[ptU,᤿3F)bXH+2}\=?OzϏoEo}CQJjEDTvbك UVWL\ڊcnשl0J:T; zLݛ`rqnbGow%Ֆ4)+DrG!Rq4 j(habw((ۑϚ٥ *ܦp`IVDYْ~ 74'U_}9OS>rύqAӗ5l) , 8f[ޛ^U "x&qYU86PUkJul51JLK-ޗC NbrvchoHb:Mcey²*Z@=xt # ўEwlqNhҩFzQ(POc0-f1w"zH\gn?;^V h:[H UGK"oV ۸Ff9`;f%&|Azb[,RjjyL>;| k~@ZҤ,՟)NLODK(11u°U"e:>,{(.Щj/BVzOeƈ 2kuu-BP˿|]^FBm[GIRMZgt3gJEHg*MdWff1V5.l3F= UAo%[G^$E!mh(cL[j1o:L=]懙,QALɨBN34Yi>0 {Wp$' 6$ O/'Z؂B6"t 54d^6mt1 d1%] ލXկ IPhmB-P ]#VkZ.L;݂2K\PY9$}ⅶ$1# 1F3 ?NgBseBy ,',*~=/BL^ v6pO LRaJ$tRUPcȹD/g|ƣb׺/TtV2J }~ ܪmk77.~fxt&5iNgZ{ P6d~euJ0O~ga7$^yHge*AD x` q/VT~4ZmwfG1,f8xrh}أ I;&Fk[w'}GBoA^'„EgKqJ580is_?j=bC/ߕ@XTXX82 i|2 # &I,+ IQllG֨ Uj׵DиTr( J~S-Q7D$!w$FNIA\C1,~Ք=n=;5 X*=s)hFa[0{Aaohl6(C l4e/ԯéH.NrX}UGP-Tl:ջ[d3|qV^ WOҍA)t܊A Mnѧ"rЙdۙE$P7~{ X-ύ:)PƕA}DeJPU[|?bŭŜ 1aXj0h q9|F $3tJ=hnn1ErpT#܀ ]O2HR|< c6)0?ubXB2/~,4H%k8WwrEHPMqz7ĞBhn+Od@almAb\B֢ilc,(aK!zJ2qC`=40YV X^t2b>!26=T+EY?^+`Ce20Lf cJ T};^5x7-\yvݙ}'*n%ecC&ŭB:FҩKnmi`Ƚ<b4Ք]̟Ynύ+,ު {<6))JFp-aGr-j2RAJlC"eS@yMrq6DȰ0c$f_T^2'qQ 1%>ؔ ;]:xiŏف*fq7 bjnc&W08%MdM$EC+q8^} z>]>Aժ>frWB9PѤn-xaIGX! \t!aKHCdgrdVyX#,ws:(\Qq+).RWΪ1"KCdYYQcn3o҃>>MjR-\W%=.qQ&MD7+4o4iCC,22K?5SL[CC4Am Ki?$F!t4ڵ@)?қW. S+5nz9 & -_ 0"}eUiW߂GIx=4R-n-f8{Y0\_Dȧ 9/t一X_0*pjqtOǝ-zIIo4x~,`kr0A ة [f:WvOsh[vt5'' =>|xw9UMsZP[tTC眸c ͺ/ [ ůI\pIMiK.J#i,y^@ӈBܡGw`](\Uno=|ZIOYllt\ȠP3ơk:lr&?L46)h+^M]<CvLFXOZ''(̷zMƱdmof)m.2iT@6ՏaFahոyCX3tkȉ{!B C?PJ>b1걌Ca' );%|eӠ [Zft#U~umh|P3cw832*.4'd>L~' ^v7,wVTSi@Mro._ &a[sSph . ǪH_.e2զ(cހN t[=aF3`j]j/>6NuCS/VTM7/^g21o p}YQ@^l_mf-䱅d Zn!O MX_6IֈCzJ݌ID<f'w0_?sa\3}ɻa3bxwq"&t ͪBˤpuAJE"A0HΌ9(>w:+y[# qh<纻z&u_ av-IE;Uw%Bbݞvg26Eϡ\Rxm4/߀r>NLY3ێMۇh%AjΈe ;T@YvDLu =Egj$𫌹y̩ = ЄOPgdȘhg[ԠZk2jZ ock~3=6m-z)96vaOoN~]c9mI& Nf(LU CXxZA_ƺHĂ&vgjxB]cqbVpaZNBϽxߍҸ=6! ^iT)MgV2n ,\ <7)h}!D}?:~߳cF>RzNX3D޽x}A{hKD%hbL::XP)y5팕 h#fG-5[)`؋b'!3f( ' 4G>sa81# <.&WZqyKEҾ$x ,}eݽO!TT vpfG UoZ.DkƂ_IFiܖ?nZy'`MkNp|92]dZ]W.xIQtxtAJ!7:<^ HN'e)f,c&׉ZsIй\ C,#JoF̚{0;ߚ: [)IsgaL-Vdrk6ot}4oյ;aMnPQ ӓ6؇|7 gܤs(l}dmBуE|BXp`"_ {԰"_HO)%==Mq]oA+3k>!RJY~.!cx Q┎aVKFs|Usd1x:6dȭT{1.F+Tz3CL֮ɕ`twp=}={WZZ\NB؉p/E ZZէi>ϑ}]RF n}EȶX]y.-n[|m !بFýp[02h?zYBwCm ZKz8JϡIn.A&'z]5}Ͱ`"vHE|/D=Wfoi;H˹2*N6䖫:AçN6I QꃑK15ɵ*QE )>DЖn~S5g b[/)>Ã1}#XPo` '.dCSVwr0 4zq2)hia*htXo {dimjԥ6Y2? -La4y|E~mbI·Ԣ#.Zw D`$o(Rd7h2s$Xɢ&Wmiʎ~fܯƼGė!b Ix3r+Fk; pj0UI\_ 8wzb{"922wy9:WrX  AH3l&\&ƙ+Z",y(m^!eW4cvxj]Fe+)6&d\M4Ck5(>4$08+Ag ]W2ʱ/O _0ӺH *(j c{Bÿ́'f5% 4 p2'|D̬t$dF-ܱd =Gmuj&\+c< HF *e1dt 56b{J >d =<㯾pjJP@)= i0J*< pMW#]<UACd Ze`GZFwa)қO%7e OaWBt]!}snE8 d@sS,.bݰGzU%Xbn-M|j%z"Ma !uqy+E~l0)o{:L@(uj-ЬSG)e/ GWpbUCҩHRheoxe $J_gurД7b)~#Q%O7oNPJۀuQ.8;=)mˊ~MVݚ,ܷ/V3gdS%8׏xUd'LL{5W_h$D% QoHD <=mN_9|S=ԏ 86.tmM{Ot3GG>E4x:MІZg|gW5Gxt+U, avָVmg=/+|?jO5 ?>oLM'6qc┲.IDxԡJ3\ Cx5 6u’4A6o5c?OafBkfJXE(t2 o"N'KP]*cMPZ  U9`zRcG=phy/W8NCۿ*MDp:!`a,6o==Ƣȩ՟TŽc|)ޓ&9vuB>юp8aA\,S!C`sʢ5 R)1^ַd"f: ;û+omzC5gSl[rpM'v`4Xys.|9$ugwTDB>|ݝaWW3Pzf/4Cv6q@czhX>7lu_ nK8!}qr![mkJ>oEߌDxy$>)crÆB6AJ*k&q sQJOɑKagO2fKvM*tq$"$N4[ַu׈ui'*ruW"/=0dF渰xP{WUW@RNGEyԨ-FRbad7jqsB5s6h-s<B7f~.T+J"aS#mW7똲E9i7rp UrAC뇈fl!qmZq(%}|5E\-oZn|oǧ N-DCU&p>If$E?=؞J+nC.I Ɗxy:EvW7gҐuݘ8+9{ɮ:ݿꃧF%"!!ކUC|3fCey * uPYXw=ݞ 137_8AJ fAMB>z1Vt)%T:Ŵc$o@&VZ:_3s?L%zU醫d s^l7!K}RxSiyvD7/Z^Zq x4*RLfDV4tI tG *[?j9u2a=b))xdVzN d %2O"P:_Q3w'o9A@ iSV]$'q';>xԈXiyjKkxvG&\vC[ed}K/MJK+4/B*^Lĵ:J^jw?d8L^a>ZLg$P{϶T[rQQn{Q CgƆ[G Oh.pfN'ͱFҥF aﵛW88^ Q( V^^"gsM&1$;bY(j ,>M~=2rXˌQPdʉ:r_ǣѪ%Yl)YOD9G:4Aif)@8s3 z _m]?xW ݾw $ ^qn]q d. eCHҠ(qQ7#^i } u0c Fm<nWЧB^2kX5s9'yb)-Jg}ҾnO8kJ'vjd"emzJ̰40fNQ;u3*#w}LA6H3 ti n xlK,9| Z_t}HnֺWi^vc@OZD'p~z±(j>]O*loޘm8/]ܙM~ )6~p}6* g<V+N֬YpnWVwgG 3prhۯxw`AhIeh85$nraE%@%W᱗D9ǏuBx,}+>Uytzh4U"햡;AkA! V玨ž\KJ [!wT BG ȟTg7Ζˮ3/\nW0 k%z~Tv>5=R,jflzm3K;YKM;Zrk"e Z UDUEZl1.??g[/Lmѷ JjG[.)'N `"2?&pd;rea^fr+ijυ6}uB%!QO'4QQ{7{3ZNL|*LcD0 C0>dEW2M(SV?K o ϝGga= |pm\Es*C墨2\:?J{rvaM>6Y>X@;?MaVY1)ab=ܙP0lo+T44W]ռYf:R-eWިק1s0P2tP ^i|Ja'EoV%dl@q8)&Cg}~ǝ (|YDu6 >'c{'Lݛ*tOd|"\H0-zP^!a6MMZo_)< ݜI.r8)yD*\0u=^Hn7j1S*$1_Dq͉A6[TK_C%B@gⵃFR}.r˸s0ѽi{%YD288R%uȄdvj|G)BCHXo^|n@߄4{1!X">랰hc5ɾ"4fc뇮Dih&x(u}}^vQUyt4|zάW cvcq3E _#Wp/ (FHf)H0#{ȑdh_FM\-/'MI j9htVcȘk-Oӄ$c3BܳJwAF L~()%-_-rIyQO+nCV ꆈd:^9jD\þICzl 9u-k@@ &|8Kd\MƩF+M\V Ӥ*0vN>JKF1}16v= beIV5D/T{s=zXs&O\T mkYhl5j?UXk8rUB,7Rp̳ˋ}Z%uת KT[ _NK_V"WM٥ 1B7 =79[ksɋzv3 O |[eSDLwp1/ړrxd= 09o+R~NO+|4A\V7Y],B cq;mBN/,Npt+yAYsˀ01›$f*3a4b\h ˭LDs谣 b&i|0y pl|@r RQV6'@l:)eU1 &(m=wu mEFI|UNsFO,Xzu(f \8WFe+_-G9mб)k2lu=3m0Qw|bdfj/deLBJR}tZ9'Ly(w[ 䯡 [U7L<0!؈W'̮5ٓx۬V5[ghʩvU+t /:I 3.xMI5)[#T)}^Yq J]bU0IvbJSSO r,ntخG[t6{/hy72wIw:3~7^-[pV;ʃG3]ZP]}($x5\^BYs<&Kmx sd3%Yu`KG:?#t^lLYl>tɺb4 "+lM3=+Чtqa4R tPϏfjbylJB:\=`FN ^ @ij%9f!GTٙbrK}4pO8IґD@uԲ`%-|^MCrRKI:W2Z8,V>d+l=~ 4f'y?{,-=)Lw?e F4y쌵+?)5=k"7 x]1#O}L1XufTܠiq:jtLbMrwdm,cOф8aVz(TBqϝHk>* DKo:Bv OL&fg+d©FkX%&6( fnWukOKyYb5!)Fy)!su^Nm *vV_R"8 .,mځ=膃fFtƵabӑV^.ԧjD3h0{0UG˚-!/&K,:~?~22~*hJY,;(Yu^$9=d}Xk]3<Ͼ.rPA+x64 ܋_(#>~bB]H|˲SY}avka5Oώ^ĉN.+B@GFB!&y4m$ hQ(i CZ3^W4y8o{Mjx~w`h 5[z#UGa5"ZIiQr1b-q_/"D _SvVU U/xLZ3|OHQI:9o>/(~{e3 a@/; *) S `'« c)`ٴt]?O܄=ڶ:ttGT3ª8c4➄쁐ثY:zPt6WcgJl:ZWqq$rd( ٟ -A6у%e$Z:6XOKM#i9T (8} }+ Z&>5Dm~+Rky#9Rڡajk{Eo5~IkarjASi:hs0Vӧ[re#^wտ\n .)lĤ6R$V|,Xf#\g<4CT0Ea*)NXswM!q};`TRefD(x%0`,{(|^ r`F3͓x{b/DE Q7O<־Xl1O4PgeY]-'M \If}\>malQ&#R8t>pf$CBͯfv<(Β$cD96zHnG0/m$#x8xQwta8m|u&XoOP;Τuv&aC6[<`q3m$r:7^xϨCCW OLi qKiSD\$WrvG#Wl߽ap?4g$!zoZy051 ΒYp'ǻbüP렄&,p%C *dLC),5K#j:VN1:3Rt=YT-FZUm_Xvyi}gSJ[.s;ڼ )HUj0i3.̼ŌwcYQCwxؤuc jqf7–ظuz>X]்r>Pb2Io$EX>%,`i\_庞E_ G9뱤uR[ եI:j ^h)% C2p~]MO"tV#8R멙L,E-Rdo5]B Pa[Oo5q=x-u&M]6ÛV֞:[ 3~)F\`~8Qe|i6e+,i2=P B-*NG m;E6H*9؄+@p!}7LL!\79ɞy `0_[Hz^( \9$;[ UVۂ +,m vѩ㿌QZbn"IJGk 6\ނ ?z@6ų2{-6RQ 轺ؔF1RNLGkwc>8 I\՗'s0}ZkC dى^U7/d-wƥ $܌bg3ǜd8\&W. (|XjS%{P8Xytʽ ۙJM> 2~w1cn]2T p>?w:>m0Y> hV?N Kj*$sk|^ӫ:W|J!FoW4zG<-[ 4=8x mMPY%Vnpu]b,z?D _OΠƿ]8Ff„y4H6b'^hrYSuSh%Y}ղgm9RIs3XGѣ+Y&ˡ+'p߭a97>iK`Ŧ454 61d+v)n१N1Vb.H=r0N!YdY/Msغ'U WisHq!Оx'T(aϙ84EUPwYmDIx|'&2IX(Ye8εj7󖓱Hᜐ#~{*; 5Oh'm$пT#S>k*f2{qDP>_\fG?]T2oYق Ys %3c"n1ɉ <2#n/_5cYQ9 )7"'_\$uCY e!+E&Pg d_NJөVcW%^G|6_98 | QC!3rϩlmlD[4CY?; Df2uPvNi2_nl/YBؼzݴa[:xNf`d0y)fش~[Ll-#YZv_ãbBPב)ړs]rGI}W8ոc7xg67gCUhb(TɘInBt GXT{ 9uPxNAɅd !S\h)[dc ?[Ը-dVg/a_,҃M/ڣ<%SR05MsP-=̡jФ_x_f@sJQBC6GpR1&#J0ҁW9-!6*>Yۉ˗m㴄Y&BO#MW΀ɪB#ZjA)=zYGtZ!FcӲedb!!j nc:\fKP $X\^vSx[.-$4,CH `j`\VGNlq2?J\#< =SR'.4՚1'>^bioU$_2O<*Ky/pz* C*RTe 'SW)~EUNox}v$)LTNTÎnxkYH__xn>Q> r=)NJvD)Q7 9u< gm*+zIfjx^Nׄ+㘆kÍ]Z&%GTAט[g~ }" f$K>twCi˶)g͌;\^!\{bkA z(>vYImN wiŖEaYkКE =<jlo ۙۿ ^\o.!;]8O>&8[k h4kB`$ ~Zx:s O}=8g2+dq&T?7 N(&24i 80Ã]?VGĪ/-<$ S M%f[u LPV ~*Pw 0~Z`T7(1 S^b;Qm㵄Cͤ +2:P k2f-}m53__~+['_QYc\ *R{SȯWac bGՎf'y9;:L@?5p-P HwAN^Zjܚʩà-"ntZ 8(aX* nWDan*2%d>/aH/.{bQz"tc>m&#,fhhQu _`NRev&W+)PaԟΫ/:{nO>eQO#FbOU[2=#ѕĸigҾ v1,)$ WIG4̤v VR—F(-@T|N5>%D{g{"䖨sI(Sd m+w8@F/9BD_UY kJuzqjsf˷Np\,A Q棏%_O6 UI6ߌTt}H#؏LHXE_5>b'Zubvxq>L7"10[Zch(y}*W& WVYi>-GDel8f,S\ X}rV`C/JfSuiMl Q{9TD|FB+H&@ɲӊ);撲8(Q`҈iԾA.ɬW|,rrW4LFf =37Xs¸z%Yě{W Zje%@"7Z2;Q9VlqO6 /uq~=|xtD^F15$!:D'Ӗ<3ullLA!<5M@G ںk[% 0ǯW|[Ѩ4n&X; HAwqA/2; r3 _Nf7#8k8D5!,s^#F#HF=9O[?i"u㟎 É2 )x!{XGO4C2OlALzJոDO/yOT LOk\B>BiJ6 ere8f-mfW]BJ F .j]m @7pfߎ%Cd W p*"%c>lg; 0QYf PHmXBTP"S;R A E9R/̢8>=;wsN8Q-=uQ;~Vh"W.Ə=F7"xO*q$d/_@I`kaf~G% h筄B2-@Ac VA '!/ҌW~wv;c(#YV|LXPKVﮐV%%fJէѱ(~xi7@|f8xr[5Pd6C&dg/E"S0WGΏ`(jK0gЄŤD0Ѓ\ZXAȮ]Epe ӜބV^8. 4h0pg~u=y 2HQk4,{rP"XO'}`wdcr+p?Uk  䞖Xd_APudTn;qXZ DG S9]'Akߣb"{@ B7`jaԳnȪ]ߪOh s _AE1=\˷㏏YV`0##!h uɿ/umq&ԜYkPpbM3 h<݈i:.^|6X ^ݏAd(zU_U[ 67\d;wH1 Q{ y荢-j"%zFSsh+Teow$uuZg-tГ4ovHy#-6"TR}*:ᦩP_#qP֘Sݭ3qZc`e'7"L\1Ϸi]o'pI~n~m(`|]YIwV,WC`n,w 4[h84x]ZeN`dž6~BIwJ;n &~ݝcc$&3cPHz=`Xayc'*+Crgv mJw62'zmRbm*ho^e'¼ЕN۪ ]jz}l IĒ9-_lo7D#;A"˞|25YI\"]1hk!E.:x6ͺQ>ݟuಲOᆢ> {:yC?'*y,Y6|&BXԆ裞t0'/3@mA߅S1@U1bxAȚM[АYjLγueL6F3b_$ʁSCTW+|4<3<:Z|*pL$al]p @Qepr, H'͡"=r9 `3tkb ZQ;@ﯤ0+o˥mugJBznp71G9۴WB+h]jKgbb0l$jOmƲj&iv~rdă93}EN( u&$+/`C їZd'VN!jf'uvWcjz.1EOЏ)E 8kӅ/lf{ON b܎TG( f4S&]N!@s41h?=>G/̲*Q%Ǩ~ '1C;)syS hz0BMv2r׏CZWY(ztKJ)}TKI?5Csy!u:"8ZCK[I%I^M֓ZkqfwXå?~_?jeBQ{I ŁЪNOB bLѻ[0l4Ƶq#dh *\6Md& zꄱ{{${ &# gGUAu^⊉4`IR2x1\0ˡO`HeK01dPg2Xc`H`u9U}9 by jn/q2xj.ײBD Cʅ[<8A{: zZiZcܵWRZ"2NmxsB5^KQpxD!#{trL)aUcb)DUen(8L&w. 㢜 $u BV=|; Q;f辕xBʓvOc*MYs/ vLcZnεȮ[_Nr}7~Cm!(]#g :1Ц.|:JP+&KoﱧkqU]1rH®9#(JH9FԲ{lgW}m5E鵒Ǻ!lsC^2үQgX()(T ]#6Z5,uASs#.HNtE9&c#j:JPM } W\͂+3>*#l+$w(',Onsk=Քw\XUquAV {_u|RM4#$,RlX&B܊cVx^P$ǫZmOͳ`bwUO읅^ 4 NV^d^lAӄTs_Z1`a1#3{l&Vfvi`3n`“Ěv]V1^krq;Mmyd/ݻJ=#,->u:|`aj\~"~@3TFmnEqloP #VWY(MuP.4qҽ3+VlZY;"hfP ~Z<+( B3_q4PRjc.eDg`sA s4QWrV+0|M;WWW.?Hh *d]Qy,I'|h };ARKJR%|l\kGroaGY [SjeJr^D+iQ䛔 ÎӪyv4g\Mm]r KcQ/4DEȡݫ]i䡳Pχg^ޟURZ0Q|m!I?PJblpO3k)pgQ1 IB_?Ђl 5=VY!C{SZL߃EvVwwa=)ߦavDN(Nx&PVh]5;܌>3yas*O?vk dP#U@YC;HǡZ1>&:" I~uvwZa/E1->NvyiQا=}RZh?LMQ/^HH&#כ(F:APv]}- x4fֺlIjmVKUƒ4~Y*tP i$-_ůY+Ǒ6_elf0P DO$ڵpvmG>2e:^=y 9̂+}is,a^?w&`31MUT&YzO,S@?^ML,6/R=i9e3J"1)榼VVBo<]}!Vk iotiC&u d1Ĉ#5mUC o\W9 gB,N#7Yol/mŽøJU٬V+hiX=i@jk\"wa} \m9>[݂FGBpAA8G}]@0l-ڜl$ #Heh|iw!`ci}g(aٮ=`p^s:)j<-9C1+qXHbw\-v4d/oX"]=3pf&l| n\GB5 $ |# PRǎwoBKz7D4 n1q [TfruOʎ& Fp۷m4d8)&#ȲOKq%%LȂq-HnJ6 $xs DAe<ӿ `]I Q&el+?j%uoCg4"Z"4s!0ZXTG(>{"E+Jiate?ys5!<5Bo0>m`FuŜ2:O8w/eܛz~^>*iX of0p?HYY. _kEm W;l`:Wz:*z&J+_lY-s \5Xv@sklr_jKq\F{|_jZbp6:){'4[_ ͡w.=:/&U;W9/d 94 XWJȄm!]H'@H8aղLOuZ(&mx 7ff@ia2nS @#ItO+/UOW4^ q,OzĿ:DjduۻZ%~l$DZoJ]j50e}` H)F^#?sLxN?̋K$0Q%}Y0"v G ~:w58D}!6YYXyAsfwo+12 8-z)Rz9u, / n% [T ks3 FF64/òlɭh>0 2'Ax2iܠhuI٫l@tTUD.EiP9qV^HfuW N3dQ"JWuq#B"#ƕר:^fENF5/:͖AYqC61cw|x+³X3-QDK0԰JV_l]Ϻ@|4(jH_4#E*K_>M- յC& bAY_7lF)@ &6 SϾ /Q/A,cXR.BG-Uj?#;!?/Mٷt{۬l2[A 105XP暛0˅@śxG+o=gk |Qp'Ih4'*;zxYtK*j7 7,,&уz馟-_۶qJM.b68IGpc* 4Y?D[u,ؘư1h$正!hpijTJF~xVA.\Pv>NѾ X e{I&fdטRueLƬ"T#Abi비LeMwF6i:3[g;&ObݰICi s^G" vU!#b D%"j;Ҩdx_xJ~sG?bAbvb!Z`)^v[?V3Bv; 7%ϼCwb$P/QY T)^ -s]uڭG8W*s}ŶЕTx'pi2Ц\zlIN#f"@6pJK4WF'! Ζ#&[ezDϲk'9"5/l:̭Bkb[MpzF,cZ߀q^& ۤ5< 4< OMcrijj s~&+e4gRcY1t%S 8\ٶ#=+h&psBq ŬlBĮ8*,p#-*Y%6X֑bd;IJ5xeRjXG9\ /Uc׫p@)cP(?;k`ͦa:fASk1L]iJ>߬ Ugdמfٰ=搖m l>#|29߶xU8?63דG4֛eQ9"6 <}<\ / " ٪ r;P+w lx]q10FQl۹IˋnlleO^v?=hg؁JdO}DA؝ E⓯5=?>Ç@evGpFxj94%Kb_3qQRi~xBNma㴑J >xy[ })s(SkDUϏpf@ >nWɾ{*% jܸ0/g'3_ǚuHYQ:7_ڤv$A[0Ū#I5(B0ֻWW;`Å!/Oz$eBUkXjNЏ=Z+py"Ҽҳ!ZR(aUI8#Qe@][tvZ;A$Rzze#A4PC,E տvgb G;zEE{.#FM'"_t<۰vr3FvvK̼]gA@qlڇfW'0IHcKHE7?%iˑN8s<15a#[?t}%m:@ ɰ"4tjc|w$3vG}U-2>WU3n nB)+W͙˃@r; URĕ֧!91~n%9X1A8y/ RHk6=ծ8cy"IQ>Ud&?:cvRb#p(HՂdž=xƳ$&ygD{:O&xҘB;&#ADӺJ;H AC\z0-tpKdF7b'd^Y" kƓl q{Ϩ-A^>TVEWtL5xȯH=4ի* u.k0\=P)rSBmoE 7H(WQhrmOp2ή׫ړ|Eh H5]}g l02KE&bˀ.E0 ]`m/Amy.S-6 DW 89blO-PfrV _COQjT.z:XmOdzbS(+wHᵜprя! Ż)C qVvD"@VK=zaK]DB^ɀS믿daAJt>LFc *m.FT$sp-ϳi>j([ aY :?e؋''d%Pd$}yc+#FSasgғl߻nqݢu6֯j0+2P=:/!NMs cAjl.=6xgY;b)3Ou-6oD:ƯŬxHz_Dx ?IY\o T&4eg&YN%QM7|rt*;#"U1lphibnlD~`qv+v*|9 8+ Q;-ҖݟN/`yrkuHRٌ/ŹAo|ot bN~傻p8tj`#F켹5~1JpD92zJL#ba2{tFE~ n+ ۂÑQѤ0[2_zBΌ$lKWN\ff*d R^Q`f uO lHb{ &D=#'x:*Sح^{~m?%rA*>60MՎ.qZc7 p Jϕh]/rA9.B831HsT`w+ަo;h,;H'm 8ծTa%[74qΙ٭i @\3+\"ag\hD<LI_A%K =CL'DV Vy9i|KAu'$:K\ Jt)REwn * gA9]3t|;ɆRvLޝ0F|ꛟ--DzV2h&p'OHUq!@@'7z?xsZ  ¥FW%|~oy{MݚJ)-\  /Bqw(1rHQKnw$dg-IK6r7ípqW@ i*̕aJPk%_@$av\b७?KU|+3pi&8B604LN)de z bQҁUA|V[FV~gd򐈠r$QgUϯC_CZ v]S/Cj0D5CByp6wuDvIwD%!tg]NDgny/&3+Mo}kɵG{i%3qM?3=M~}b0cŭ(#9RhIy%fWG_eI;1 \'P&cʩL { .b0y]$קcL8G['T >s0AjMʿl 4*O,J.mS:#830Qnz=.TDleNg _m{jp(s0'Sg~ w%4>'#2+Iϵvcv(`ܱ|I3l9yBh:hxX@?Epb~&g'XK1/Z{6}U'<}܋m'k}^Q/, 38rY)%ByÍܢQ i_̔[OnlGE90ٝmTXF~<~ 2.0YԦ-eRe "7= X%p=~!;i.6_wgIqCaCzN {'4b\E=b~ m(AXN樤4/1"^fOwg,~xC,G 5Z-%S6nY !QuWɅ܇pc}z0qa+PG3$أ޶:ηtN+ho<_('FǣNH #Tgi+lsv.ڧS At|Ǣj /gK n0@h+$$I-Q-)$1C) 5-fiI@̕ 'dhO2zYOj %A6' ﶳDB dB-Ƃ2Ιh C\*F3YBE@Y]eܽ"N?Q#_ GD]>޼SԕXigqF= 2&YzuȰR *qQ?}߭;­n1 ׮X#x 4?i$ZN<͒zdL)㸰LY,Q}[ Ͻl=l}&]^ vc jeH P6u/Xkj*%p(6ejYrReӕk_TwldH+mc#A]d_S.=6TH217IN.n?ځ04t~̋C"&qkҳ@Fs&p8?mTЮosIxJca=-O>C1`],4.{WpŖ|y^]ʝQ';4L]LB9tp WOu͒ }}W0BJ5fN% ?Ԫ!_[b冬x<*_ϠNjBb˨Y>߂&k{䝣RL`,ě8[9W8;bVp7beAZ[jSV0%aOqˎPBt+hgoY^eY\G} CuԈ.78x?)q aǫh= =;?:(?5Ό/KEdd/w΄0%qkq"|,c9ܐATwc\ Uy|T1N E2fHzMi><;[0gHdWDۚBٙޅzzx]`Ӟ }vG(:|\"/ Vֿ1c~/]qF zm7~?U"j_><:O#cWCX=QLRF A]NmMcpN%rzjN]+@"Yx6pz?+G?1J h O!Qdo䷕#ljvER6 N"&QL2+&8Ǹ w,#3-Uhqݯй-]Ƶ[>1 V|atKMN us&!Cؔwצ ecČӋ\ÖBKصKYYn1;I؁OVP#C6#ӗ/N침T)|yag>Yt6μ[..d2s:Mm(_Z2|ͧ+j{kA:S65$h[0!̇g'.=%?Q+)U09[I8 #ږٝ偬sˢj!&odx#gwHf+ EnqHO/Z |y~JnZtNf,3Sc=vvUԞgXMKEn V ^`tƛKA@~0C7A{VB4(#%@OJfbϺ{pn2aqX &hcf5zyQz=1eB92cj`{-((lЌTxh^jc6͆Gw@ L?CDy($]@NR`cCI?L\ 3;ĈKp wci]r{#}0~Dv z A儻)x^KZ̎1ݘTeO"tPoO8[{yuռ M#x.ME}$"/6#jLJDݐQۉhQCU$I/)VGyTdꜤߚ%l8O. . Hȋyi4ҝ`A2-GЀ&ݼɻ oDJlbhq(-㌩zb`୹kZGߟI_ 7Gf>XX*΍x' dDE{GXnMc?T*1;c2<`=|_ H@;7eTcԂYeǰøCk~j ;\Y*)rslE,IбݒcD!75eE##@ݼgk>(d{s^0.sU.v <<9i)Z׿ 8@R (\M! 7TD`]J>9@G _Սf+wSǑ%r[se>Z LRf?$'(8=N:n&賳N"l9aCȜ HAX6iS |7<%i]5|@X}#T e!ÊS [}^۬f\<ͫ4a˸=\oLG͑LSx@^6`Jl )"xPΒgl/yWB+B7COLJop[eH JurKrD  9t5 .Oϼg"M{ /FZBxOR5D*(yTcb92K:ZDmOÃǻJ9yJȴg\~ aB~9&ܸNA&27Y6zt2[F/x"'״<(mc-V#V|k_Ϸ'<) Bӷ8 - H6^H8-g')G⼵(͗9cQ|М@hٽrɨB5!ؕO\gʿdfD'oO(?pG3{S*EbwJR3N9y;v!P{{up*l7L39~"V*2sF)$ˢs|eVaaQF wޘ.LdAD& X4n \'aoO^J+:^.b<~kzJ{k^MWs\Zv)|=9{zR =-hb)JԉLиĨ|qÛck+DXůGD5knll8)hП#?7DZ۹L&@.4Y^h7ʅb_L%,]gu<; dSԥXO77hN+O~:dhM-]j}Zgc`Fy!>c4dH5)G;-ٞZM<Dk^tI  DG:&"^\js|7p(wypF(?Oo =[7(V7t IwCTq* ˚ %rZ)5 sq-`m-<+TgwfNr>ĖqAHsi ]@/]H X A#wr7/Tӽׁ̀L>xv>G?3WudIh >!i'[oU!Uo][iQ?zhvQ%{+OVYFk~r!?@}ۗϭR֬&˨3ĬO=d5׉_LTـ0"Yl w h䣑 N8)n9:5w`mq( 8HL6SŖf}Xcg#n奓Msi2̷e V3A,"}|#:\/&>MBMMoyyM[{S[Gmp1N;'hٵzHũ}91"SSFM5-;tc/f_ŃVkk9Zd_2 d6܆e,pG$o%wKطŽGxTVBÂӼ*eZblj8΍[Y<}4"]q^!#4g!tT۶ϯ,D\"*,6n tdjA m19pwRYvmd>7 k@ vr=;Cv3P#p?CK Ħ d h7O+t+K| i29 B$â@XM \CR܉\. <ClT1G$x2}K:S>O;-('Q.|Mڬ w8!o42-SZ=G7<:skmo`TP*DRibhӎ LWv؃8'X^BҴO{1ٖ/ i(A Ti6NL1LᇫJ[R2X@ƞl sSAa+7t[كD.4,7uןE79umQt#"XSAmyW+7B_'ӅY1b4XqKTn"|#,<,VQ)WlH:Y uҖ$:z{S@p;^l2 FS}0VY-u6rBFpsCU/XDB~$"%ޖOkkxcBfr UZ0Α;[*@z@Ԛ~4Fy_v\TN$yLN(u%s =|LHQrXhuN1 sc?gV8AA?{|o2jz5iNXsnEFq8wCT̛'LΓx\_c\*eBkѶB]^qmɌt䟉y2 Xת fr b<3${;\Ql2K!M(fH_s+M[t3-O3‰܋1݁e aʔ5:g+Gn%')0!o/+b-@Mf#FM9KڄH{{ʲn$t|d6DY!K6F^\&(m5=i! Bs}K' pqqI !ӉWcV9A%ѝ{[Fo{GJI9Ej(%tgvq׫NLaNF*E'J3t,Nmܓro͸b"x9}l75cۆ2]w$nKyB Y&^Fq+d_ y ?SdeD Y/S> 3ZnSNBD&>0,GxɪpZӚ䱟Eyu»ۉ%6Bf+ b ;"n$&N6E9ͷd> 0dC5PbR?Xyj?e?V$vV]c6:GFG \3(歵@X4/$I]+b\'X̐NkXPѦ_7lOo1Zu]x+c`ྥvslxT1-*DMQyꐔfkwĘzOaU4In<جqI/p'r]1>0UOH!7WXF{"H7kly{48Y֌=0x)T(bwn0yKV$:c#TNB\NXp%Ȣaز8ۀuH!L;p@9sp$"#(c& I<Vࡩtlu8PҼ5L? Au nF,;)]뮮=^_I0/;ԛ=lS^47@ȹ4\52W[8؊yLsEwjSVICS0[JƧiWSl(IkHf8xtt6\c M ؄)""y1=Q a|l-7 i5f xD[45U)MI7 ̼fvOz\?|~jM,sW^ z_QSvUvVNcDE^]QC f\?N|Fe0pKNdj =sĪsID.NR,ˬ+H< '@rmWRPH̆ bBLi6-K7Ԛ惡PjGBXQhRF"Zpm%!Jf/[ d=>;7fDuGȚUEhtHT$p:QdNQ]X"7\Z= Ü6}v; ̅PrTw|RPC`e|L f(-*To pE}6f*]@-l ;LFېF?SӸ+{8alNB8Cim4``y|+Q"#AOMU 5YK \p "! LQ-Vڛi9h0Y|ʚ>ZL_ũ1]J* ;0y!PQIQۓA1<:cyKWeLVQI ^$,`7#`@i枥P`˓/EKx\dt<$8=軎@:1SfM"|W6X tUiZ\~J?{G|Gd(tn^j _4Í ڛ8kGQzjRQR[Kjm]q( r5ת̞טiN @?Lٷycnca,`r4Eh[|N"ƿe-ZA7ޣz.`O#G}BI pŋƜC+/YuB1ThUކх nq\rE}fuv ?f%=25.Ipk ₎0kGTHDtH7yðK}Sw5[3j@+wGN} dR࿁ɹ=-p:vz eG efj|Jx<2ahHYY|Ap IPي|_#,^ݷg,wt>(iM=vˮXv҃mb*X|ZUEw9 -/9=‰((y3*, :F09dτPNC Rx pe8В܀TzۍzFeGkljMQ/kqfunQwiN)o2A(Z_r w $+t*P(h 324)mc5?qNV`'9ԛZTED+N"yQóٹYH3h:EpCe>jwr8B=Y'A. S$!'TQ*(v!cBY_JD0efwkEj=(uYȝh+縀 ᒤ"dj=2[i H42`JbV&^?rR186qHӲ.)eOX͔9 nw b<9sS)rW,/J|0PI%Д9D|- ؇ 'L\8{⇟$LNA(:`4屏u .BlF0mV4L$s,՟QTCZ 9b7{߉fCNU'O@R "C\TN (odcUSQEn`"ݎ$|5+^f'B|[א<?pfflv%%b {QMOjSv>oZ}Qǜ5ommxiT.E37RL[bRn ze3bT ghfSzf y?O9eY!K~wz~-uLyD_;;}$P8BED,ڈYZ-.RMdvOܓ_c=3(pZ.샹ʰ!:[ NccԹd b_;3/(2zjBܑT|S,D&CQ+Sx2Ę-.5V)(%7ykn Riwp%|arUG?\q 6kQ/H9(`;k"xdoA^1`|&4cI>O45: Qϸ-vgrZmK=ҾT\07(}Eh̗Dz1JT֔->*gsJc }Gca#j`5cI-X<ZОn0J k(\ iB :}A5!JX4p2B%23'ͥd9$=ZKc+4&:n>{sgI¾F2iܓJeup”k )KӮb၉:{sF49.}9ZJ$+RaazVRq=huҟO1fy 5^KqlHřx0|)2yK>%u0J/ ن"se["?a֒IXI߈ԩZH+oAo~@AB(&n tw<'oX%ig}7"%2YwoW0o9.w󾺩|W_ǸE9u37oɧs(iYf"qu {qzzQljzUE׮jN@CM`Yx41XǐVNjUP+'e a(zGmo"v$Ph}gQ(7%0Ճ >BT55eA,n cwt8P6:j n)V{:kYumj3e8bVGJܸp3`<٥+ ׯj]ގ v=QRhkkΘ.z±e !AgX2yCD"!vu4H+mfJyq<-R0Ih4:L.eoQ0-a6hӚt GwtNy{5i+u1-=):v ֋xm4ۙcP WjY!8hwGy@F/)1T9Qⶨ :"n]8L"|5oPWR8&@IA7wQiUZY쏷\c >u㉄c.)s Y+RaI5T L 4TgvQZsWyyA!tRo<>%W0u)C 0nl;y_7eEO8aJ''ZXc;å3U>]dAxF\~tGNx_j TS' nnvE!,EY5r|GQtH^ܸ@0~R%p 纘LF>V;-֡w&zaΔȺ'ӾDh1~ړ (CR{d"kM]0";Qlcp$Hʑa!?ް!;QI\MЌFbj[`V[*Cĕi.w.`pߵ9ʓl&[┺]xIT0D* %dNŀh  ,֎96>4d6tR^t[:FL3☍?R5 -_vsعNhސc.p՝wùJ$rG: m)ޛ  |/@ab(kl:$&0ԙ, {ZXK]i{ڵ9N9<,>;!ءwpP @'u)ڻ / |߸Z%ڽ*++$&mZ0(u&"o*NT΋|p%JxԲ*:r.8X#삍Pm#2<[mA>'$tf9SQWw>lֻK,)>_= žpLe}?>贝2g*9+˔;O?;M!Wq8g:oN͹1uq{ʈ~+[s9c'TBKd,O0Pq;)P Vȼf^H?C]ALLMʹWʓ%WyfD9CTv7SWoXZ=MhcOdtET@g& 8)Npӈ1d&UTLvG[bgE<"_Yc *-x_Lm5+32z . B d^H{"*]k_H;v { ձJ R +`ؙcr| DPNjg]( Wfs(B~7(<[w::K"$T'|]FPK91dg3RCRCCVؘʖ3H2GINOu|?8* =ASƺ.G 6yfW[Њۜ? Zee[e5_ L,6Y"}%T&+Tކ0t lhRs9)#"7/|,@o/M/6ojףp3yUuupZ zaynGop l@Khk`߶M^짋w9TOFt./g}8v=aNj>WFT=%'c JeV u@Uь^9>Tc Lg O5~m({ʀ#dh I3g1rAq[T]G +#%ZC_e2pl1wψmPo >WF@U,A:*."1=@5D>T@00O6tM!G} dQCOU*_&* V`I+n'yH+1_󀝑*Vޓ%)y&ֈW=p^`T#ysGxh]8Vv.*|;KM[B]e:w4QJ%e_<̋Kz QҗNMl#2Ot5ѪBʼnMS6#'S"λFdT0xJz8C('m$֜L>K?y z18 aҽ k)ו#!։b'}0-re1q1iNLg!((z 3%.b%7O71ìI :GV̅ |ܹ?,cdb9@G\}*W3y8isIWxhŕXշF'Yj?v$4I[B0QFvAӂ!A#*?@@GP5b(*$(WCZkns0s_"py}H*pP:-J#iBmz㌭y3017twI BzqJ Qw 5.!ߏ#ѩ8uw W,Zui^rV86m&g&>hIB|pwT%t}~g̾UNc%\K Fql`VV9O+kkqEBKŐm \K$l*ye5) =Lmq0Q~#F'EbFbXwkqß7&K#EU}D=wk*ohOאQNz\>]@]w3E5k1 ¬["!7ת 2v^$|IDjZ|u?|T:K^^0S>}n?g2gaTQAww`՘=~ ]x{W\ PHl&ad&|KRl+V"@PK{*mAmh xF'/!C^2rH # k+ta̶Fد' h3%p2`OIf8nI+~w Wr9Z__sDwJ&arLL/P3VcȤP@ H'yqYQGFdoIYYDޘQN3e7P$Qq[ 2w"I}`eII[\ӇAtt67Qg5vz?/w'z&ҟ`O/:4Q,ʘPYO|öXؑnЩYǧl6n_*ZG hԓ.,Ӕز|  \|<~F?2䦉5bMF5#/t:{aH<*4' SI瘈ohNdLgwbl[,1EU=C &Pg\f6؏`i$`Pn _=fF9Pç4Og1ΎްݎlXjnፌ)CGܼIpX_Yi-ϩ߆b(ʯ@#)O1+TRjg @mh1%2 (RV5P+L4N RIb 3弯y<V+ovjbQ'vOa+t%_M۸|ls5ƭJ˚hXC!qۇD]}V *(cg7/'M6ze7EɓcCQa4c̷Ig62Ƭ[ɍ|nq^55Rtap%٨(?(J 9t "m#A۟eIhanz]c)$mH^4߁9}P'/Avǎ~G&]>s$7dfyȉ/\Ѿ&[ute!XvKC QoxfsVnS,5[kp $nJA6Mq%߫JV"tMV8ьA>R7a%`X&iERzo7$y=;3T(anqLy7tc qvVْڞ#gy;ֵԮ184#ޠ|^&,ׂeg4̄8Bꐽg,_v!ҰgA{Yl I؏( TJ 0Qfrn> H|xy# p-c\?My-$ʷ'  ҼBMjlKv4ZcC82P各BJxj5B}͊e]*`SC<.Mkw۶/Ů vc pV ,O(Evy~0f?1U(^8+-ѓmO6֥Twī0U,q\)dxيQ?и797@NYq]J>%rʐ܄GRŨ | c5Q~RA&pƁ YOM,e 8T L^`*V"&{<6ģ.7f-glԗqYw99}MgkWב!<߇ xUD[{3:'9SsER]bŹ.(bY'#:3&,eE>sT6|`k# dii,DsƀḪD)ۯ5跙/x}ՎJQR]öR)F?M? ꑢv6xkN$M{bY=DAZ-NzH.i<7hތU(A6U cpfD!_@8|`m"zFe,u`M+zۄdp!u1XZNx߭7-/xds%+sedzSb 8:*)ݪ֛m,2]Hԋp0}'_NJ"(RRk*ߞМX8(qo#qYOĩIi_CREZWjS,ٺn?@9 #׷c 0TJ9Q0OݐńӋHx,OBeHp+&L~byk4x`ōU*l`* nÁ$k6a#8ium}f3ϚJ#J|~]|+ Z|q. u~t\-!6!׻!5dCc߆ /vٶvS\͠ <(J\0Ě8Ϭw&Y HMzHm7PUe֭ 0.?U$sJFjȺMQ=0ShyD̒t#i;<)AQz&otiX"F/Gt 8xч~!#ȑ&\FQa޶b+U[OЏ[{X Ku* ׏[+jCWR _wL̍_R<:y)+2 ݻT\.82JO&`4J!fG֖=&o廞loxZ&J2>D>˔( ƻP;~"EX}Z /#^~S̠?;?rHڏ2AZ0Na:8;Jсyg2*%ЍT",\T\ j󡯨 W/e%G8ʻb7_*ii cA@ΡnS@E/8%UT_aVk b;API/9N mIu*d u.(9iEV%rtS{(V[&\RfA ia^>1~րP-ّBL+x 7R[~OQ wF~CBWlLp6]HOyG>)-ٗA&,9Jѧ" bVAr>![l\&6ݬ7c5b)oKFr?d!>r9ct]%^(ldLԬQ>ޑ%U3C*_!+4JE K6bʽx>|CvZy)SK; I,Sb]8Yρ6Q8V18:Q.2P;׫j(4iwIMMѶPOЭfO *sa&T%.`gPpV_㮝TR7XE^`$EQbjmz lN16[ݣ*&} u\-LnBh xF[j }>p}IYNi|eYGʧjk-"Ԩ 6(R}]@U;HPcm,.~,bߒ `3K Qp >ې= $Yӗ}2UAO(f0{;@/R{dm76 xW'h[ʋwdDZk̓qcoؔ'$Q#q!F_>{ A4O| ?8M ֽ{N4~5֘`A>N1+xɞNe/qBo !cGKV^JZw"WmtvJ]>OTRX>'d*dU>$Ex=smQ c,c^-ؾeYKĸq$Vq4^6{ +JCt1j &:HQdS !FK| ؕt5gU?xCPW4hc8RBWBz5=spVߧĉf!ҩ::bc V*og+SG\EI̊&n5oqsZ3ٔd? !;%%=*"z gʤ21Ⲝb`ꑒ ><&U)[_? mHL&EQB^d|ӎF}nj,I@XW|oxOG; Fa!UFnVE @RxM,YXo(WL.gcvNLy\]Ez Ƭ c5={ɵNZE碂'z0o[&s8z_01Pa( &Oh/@.?kOJCa{uZ8f*{&hx;Ua*- }!^)l.Rh0☶tލ!&AH0VHT .M}Fs*t]V$i½'ok^JO7:A5TOZO<U8Ewl" [krkT.Q[WDLym8LB]Ԅ]@. ^}eD:k֬k`䖋f ,RH&_ BЄ($7jg96 SYڒUdpSӐLN[3ԵcMD@O2[3೐K'z(ڋcֹ@:ljNQ)sih BM fF }ͅU?؏ ^{/"]N5/HG_Os6*EÚ!ɂ.ΑñƞNsrqyBw].wX1zn #!#A$djRc syKpX%R~%:~ h=>aoK䙈m4VN\x 8|WniChv$!:DTY8~յ9lUd,lKl[(Mg%mup]d3斔n*qr&[TxKa}\ZpPTZL냛ĥ* cjأ)살ƄO`wt;O%:已2Hy"N:Q3l]a^ŝWAF&DfPZ )KHNTʮS`DOύźH\ϊuqL#lMzp_"ҫ866pIL`qe`P%;J M5 T뷾!W+> Ӈg;M}W-vl DcK5 7Go'a^Ӯ\M%j6;a#S&7f+8"[p<-pOIyop.n/Wl7+@W͛lSPF{EhOm7GUk]f)ʊBd dpËQܩ\;6! /krއ3\ M_@,N%X@ĸ́FLpέ)Ez:gȮxیg$l;OR6Zy&"ydiMcu-Q_3cVaG\fjM]]WXM,\88F=Ԍ1VV3|_8P85Ȳ ǵНY|?y\W(&oM2bA\0 6Iâdm5:gaƇ֩rDB2>WO N1`߅%LƷ9j&П~4몃?|+aa`sJ1o/s$f)gduFs?8EƛpH]hq7%K&vUk ;;lfK qBrmMtJEFliWO~Z]KКbEYdtD7E(M6X="%+V[(.]y֍={ktPupY$}kj^b'dOB3ϑA^'/(Bw;gY(/eD0Z;ŇJP0@߱/BD\p"lԡgY\YZk\TYIāw#\'FqT ]>v*vY[ڜى?k/jyFAw7SA{v~\i$ݬnֶ" Wxjkj8xF&z-#ȳ @%H E(XG<P{'$V%k>3-QgHꈥb;;ۣnjQl3*ӫ0 LkMAL:JHEь3K!Fr? eNN|B VIW:wtTΝ~SU&󭍟лXY' v+0|du ]*6~OjƌZ7Ѥ&U<] CiB(QJ yhy\/m˹JQ0Enʼzn[ <挝؝!2^/?)yŦoS{8R37Q$[ P3h ,nT^ uXmM'%T%'U3OV-IX.+ f70 YnE]n+c0a 9C M7i & ~xEM-вQiR꜔9P,F Jٜ kH@wҡdS; l&WG1w0=vMf}o-:r⎎и&ePĂ[=&aN7OГ k EM۹-iwXdʩ͸B6Ԫ,q;|a_װXBj`t kVҺׂ9#/|Q7M~m֗6 K?l kߎ 3 AX2{$O|E+*w #dewjJ-섓#-Ysx4qى"wRd\R]QwYHp`. 5FY$kIt﹁00H*{K#mxRݙo)2F-,D0mZǭ<`;LD#k30NskYIc}QgZ(?! 貆&OJx~%W#ˡ~θ{5m 4~1y=¸?(ڸM_{bn.̺~9t׺ؚu\65 /  F"YО}7C( u j\> ;e#9u LiaENQYɄhf0js(>B?:%s_]B#COUzC &g@1,#N N&1rH93PEwWn_x/tt]m7YΉWnM@嫳\~soa a ;އ}ZQjw"(d-k(%5CІ%.2-rZطRڡvjBY1/Q2ڭ) /1Ɗ0Ն4O7F:m`>k]57ws.?@ϒ]3I y60]= ȯkY쇝FNG2LMi#D \aS_87N疅s=EË(MN{ObT}+'* Է;XKy{5A,DW<N$ Q^H*9[#^tq# $|7?]05fV` 3uT7%N>"&Ϩi7 WwqLF(Nkr\{a%1߈_ (ҿm׃okKBkx:/| %qtϖRѣ,˯oz2K/9>1Xoyf̘$N﷖y >u:5q1Z^k 03}=y";=a;TސG1L)%cyBq&K%'X/Ѓ^l: s"zͫ`A8@m3Ewjɜn75J\l>97$iH.|3Q-GG2>ȪChhͤD1ZE1tŝɏd '^P +=Ωzm y|uUTo^([;vu]˨c%;4w(ɲ$Zأ3;+=EVboΥ\\Ic#زkMoy3˪è S67iKՎ7'v!< 5|Y9& Z!60/l"OݷR&lRX{k=2y!鏴S)S},d ,vbuU%1g ! 5 ~[jvע%ڙ8 Cz9t+sQ&=#~vIh5,!KeSo,UIEA9'|>X3&Gz/8DZۂ1gz-E7"_>'yc; taX Wpcs܎=`x&`e<9+A鿇%5.Kobǐ k# :CaxŰ`T O:3Ir(j]>N]L"pCahH"f5" d119CJrg?w}2PB-`TIrN 2Gaw4[e=nF3 Hɜ:v섆8w6"h O?ZS l(,<ܻ%ǁ'TЁ$vU`\ZTzd'32 @8!.5j2}O\jGwa-R HhPg1{p@M\.._ Y0ZE}iWLzBNٵx %_4mGlu ⤊'e"F$Ůk7p0 gHPoF)IrXȟR/1;\<RK}^\X88}XJʓ%q2̹AIM,B:moc՚X(X& MwJHx7+%-+Q#=#ENb8y021Դ,:{C4OI~=(g:UDnmA׈{%jJ&߁`1ei+˛Fulد]ćƸNY#Z9jB˞b%u-{G?Uۯoڞ46 k =yc˖ِI,Crxg_P٦!o Fx?'cNncl'(VGtIRoe2pI6U甾*HC~D,=7(z,bc/ZvH VsCmHmn/ Ym#ԝdx/Hpz@ ər?fCh{x@D׋$EK|;8꼢<$k =YCE0 %֠n(Lv(d7AKL⸢/ @& ("(7foʝSײ{s` /z03t7YTH-?3zvEcC32JR^R5!8h0sJ}Uum,49mƗ 6J%@oM;v/Rp@,{]n-Ke sX.noFqo`sAJQ1Kgj .~"@J?|X^=wƠuq<!EWOV9(tN`iz[,i .3>keJ).[) xrfջgIY̒WF Y /]alNl&صXqWfM&`tkںmԤ},_i zDFB?^k q3|~G,㚔V@,iBu3n9 )mJ%]W+֠Q~ 2ڸ-#flAqmaV.b rv[".F7%0769ovg2'oD;V6£j mhllJZ|'u"pVJ+k֩Bek7VTr +!R~3~J$uthJcdfl"df8k%sH9cW>%/-f [8!2].MBQG}%oExeֵ er O`|vڇ mba]6ko9{cbpN:ց>ֲK 094_?XYiϥ/68sfQ&PNh=J!L%oj{./޸gl ﯖ7"Ćh5.(g{jol+gndgD|ArI+_f0Y?)8*&.9[K撝ἃPgptsgQ krЅjcO2Gr6r 4cqFuˊ|WLJԾK!6AK9:̯5s2d R՚CM"/m,S4ޒ7Β-=kgρZGS8+c#[N,Wk;IU-+_ Ɖq5j4uΆpO‰sFZN=gdy&f[=MHhLW]I\^O51>,G L7rFƍaxy3".fs2>`& , <'HcmtٞnG4yRv{9B-/Uf@ Q0a9%7 g6\C!PJf"܌é-`AaC=}FVeZMV9CK +N1Yr/W(ɑ'\fܱ`9W}ML IjhҙY`ͮA 03˲Sgȳ۠ɂ T?G NH Q)lN $ΫXb Z۾՜جyi}Y VOnU7u23%?G^* keg ݵ8Ngݩ*>@1Y)Zrۣ*"0]TJ nHmTXg[ӗx%Qq\!;"0Y؎$9QKB@=9d(!Z4~1E~3fic(#i}^־}ܛԔuz}}6;~=EMJ_{C3 G_V&)3f^o)eMz02 Y!xB}_lvǣ4Ds9F )HՐmN7YHkb1H|"bjRhi{UHQK6ICH8n .br":7ie{eLș2;l ݴnDҩ?SQ7}> 6$"zPJ:)ESsu"z].>! 2y|`w`w8kqy%ܬ7 4Y_V|q(geϱZdKe]{ F2WM0n kF_is&Iġ.f&o ѻp^!9#CnP}| >B 8h ^ )}GsTZ ".i'*}k?W]t0o /x{%dnkgX;{i <[UҨTF}5{Fs[/ kߘ%XPd :)E a$G,=^—鱙zs;PQVS\{ZFc Tټ%a$-S~^ї4 S%c p9j'ܗ[3CV#j_\%cs9qnyʋ[r5JuSWQ:.l@Ot^Y`>8/B$>Λy0ޢzM2Ey[u g@V~{ Rv&ջY]߇!xq8AW4գ6 Ɲ Sn6emlv >*w0z)f]-Ց] #t\=%A"q_xA!$V<@'~j,72X(Ze:glNhh4OG3g=9yś룱5J>V?~'r`1,ܿd)O+r׮5~RP\5d XSAI l{~9w[<%c9yI bPGOEGsvWKH/  Wzspʝp^kkht'ˍ{J'AXFo$[*~Nօ̆ˣŏb>þW3TsZMkZuIv#̣/(ū%L&:Dn"`g7Á[_ȩm?C>S, zG0rK7l;Xx95q҆' -A̜uԽzܳmØs?n轿+0@ߡ#7YS5߂Y[@*(wHM.ф* ɼ;ŻɨVll+}f][hV 6=+7M4R4ڸ=zDf#T #qzV8F`o-P5+B+"kKyĝa<41΢؞X!bȸdПQsGEq96e="s1 'I\Gk@X)Z'TNU'5#[Wp2W^yx,6oTBƸ!ң7\WB}?͟6Ūb,k'r+gH'keO[Ec@O3`ƉARV=*$j+#z xԻO+'&ߖn:+׸Nfp-O$Q#<9$uPQM48B1R@d\S7P {@Cf|gOe '> oX$OFnyЊɐB ߯M#S@h/"Lyq}'>薻5ix(E,̀ u^y`S\rJ0\ĵKlW :v6 Sډ:47ن똆BmEQԷd::?5V4c₿xC7P㵇%{m7^(N:͸ -/Kda),(U[ D*Q8-UQg|F~ u"o7fCTIv?|Ep* b@~w$gXF0 5\1,v㷟6H5k}`߳Y:g4nD|$Lx rF1U"hT{)]K3=8`0!R<2??}Տ)r|P!~i2֧}'ǎ5}K!'n-yB-N`!6%>9䪩Q|Q\Z#`C󙗦Lf^d[^9mt3LzYߘ ^?ّ]&4GKk31PVԒY }($ AjhmJ"\VŽf,`{K+TDp'd.n!ւ-5ebO\eycAb[@3M&ʂ@Sj%*9Am4ޭDk³[tĭoCM< n@KOV#ʁ*6ˆm.|lF]V9Ԏ.Eԡ~Wł5䛫K9bp p\O Epaщ;^!e@3"V ~qlteE^So#s8fVv7`}dج3i)4Ni}SP( )' J\Q|f(nKI ~&jSRMZFLEƦۃ\Pk01N/Bރ.W&Zgj0ŠOՂ` t.8KmN sh[ گxҥ~"D]%a}n11iQwooU! &DvUQ;9Bd&5zHŸvE|#Y* |?0Ǟ**6lo6,Qte (U^ܢT2!@mWs[)f>S$܊aF0.,,W77c9躏vшu9;M/'m'1ImADkoҀ2Ȑ6{mK=F+1v܂ *渽~.O ,.-Mw_19uUƸsIhչ#[q <}xxK.L\UZ&H𣏕/k7,Q [W(hhTlRighI(d%)Kt@u>8Vl*B<ߴ%b2SRb]k`EONJu^H^ԨRXQּ**-yQkWCd  ;s@Q3RHwObZiKomm?da܁lQٌ~Yd٪ȓ)g ^&_,&:ކ wr-L)lN007Ȓ30({  ҃ jɫyߗ q.6I7=yGdcr83$0 zpjcCfWʙknx.`P%wRTx8Z2M?M1y]krKL7=2+nujߪxmD'UtKb#檗Y}yä_)ÉdE|7]|&;IDAY2D,X0EdE{ aE~m XuCt".fˏ8/?`.Ǧ'NZ㗎LXXwvjͮձ[<B۵L:%m0p.xw9~4&4-R+JSDLIp*b(3IwjHN~&8B+Nu^è I/:oW+N7W,;׿/1SAt9:Hݕ6߸3 5[StZYzk*m^8|4ʋuV0.MO.wS UR8a>Ad{7F]xb9?b\o5 8#uE`m*΄/1&^IJ#E_0lI0mnmf[ 6-|:ԝݼ &fV` OWpcG&R0u-Oy __jIeLx3 EA=jmYD oE[. ydR%u :PP.Ary&A>âf#I_3 !n TH^hkRCrGoT4^5dXv D l]W40WJZh^i衑5%pRI`{G U1h+k?P dtIZw$[n~9uya_(ua5b j],#zJIрs,Ge(x\Х'E@~<1rasWwe9l1EW[Vt1 .na"ȣ @vvxg$W F<`VڿܡM LԼWY>Nh9ߖ^VЊj;Gii5Z3GGx>ta¬V:Sn8X'ciLV G4-l/u1$/RG`kI $hd>a%:u繦#sjiD+Mݬ:ZTAl yAnjsQޅZfOm,SИD*QUI)+XoGe^yMf]{K;]r&*_ݡZW <~"B%Kk!n7a8[2 5c#zeVot1i[{D<ә>}^FI3lWYMRž|qql@2CH8 ~u5\q<"7~d1y_f(;HJ޵'!ԆCPE)|V_ ]Q!q<kl[y| EZUgKNe8M/-H*爞T0K pQI IYzM76c"/Uj‘6EE3l2BIƄN czpW;-i?h78ޑ oBZ~.ÔW΄No6[lDT._{IF1xPR\W&G-maqL9D7)X4L'[ Ab&B-t8a Ъ͟AoR+vCu?- ImhF#_h 5ki`Sk?!1%yKa)8^4 aJ i>]-hjbo^+o7g봏6Q(}ZBBV3 >>p> VZ?Sp=a}^s q׏ ~othRVw߀K(; D#5ܻbuaV P6zQ0U%ibڦ<\b!ɂMuXGWi0i (&QKWϽr]U:Ø(M02LbN2 dt\eBK5!X[*ME)*1XBv2w7[Cv:26d:·e~k!-  ~ۃZ+VW$cϮ[1N {=U1[<d'3vC?@\&,&P 93BwTT䲖pfk9@ۤ=PO8yFݣ\9Sڭ,9*xo[u)xWB;*U)**"5.>eҠ"zm=jJMN PGJ]nl $3؄Jyb|ȴ@!-/KۙBRAտ󊛭ts#ZS .w4&I` 7Nu-KPb@myZJgLYЂflW"U,6 ҄} =k#c)Ghz Y0&Gs˲⟌ "&'/b@G ԽA.j4`#3b RMs:89 g _KeL~ΦT km\54 esd5gG))p@dWK{o73xhǏЎinbXCsB~.b?񼾴 ?rbXj& 7N]fE 2~i< Ê[“_du;BU4{Òq+`ri+h$zelsvd݌ ""x@[}ؘ-!>;ۭM~P̓al>`K;dn&|e),P) 8P P)زoI'%S^ܤ7$ VZ:\7?jSR:7 H@Z@Tҁ(t*Qi0+,-8 BhFS<ؠ0ՁZ&D+tu۾5rI 8f 4iK}2|O#@ɽ8&$<;Ȕ%tو?ClSavEFd Nv{jjϣd /U@۩&lhn-t@;bHIa%>R f+ o @0d;&`I} LMr20m^0Me# z<.*mR1H#,ɝydGGJ)uy`@.p>$}9#]$4ٞ9j+$˺-+A4(ow):b! 5N-4]b7VMP,&O`6(߂b}K`@iؕo|n#%lBaQМ¨d4( Qq+9 roυnHJfsG[;ws\$LRXg:5 ps^Gbn3ӝsW 2>0"Rn %Abk;LnFQ>BV u^Y,w!'vcęL]Ձh fNN`ŧ?Υ/RydĴQE:cJo ې(i`^ ^V;ibm(_CTCB~$8`$HdAaӴM2Rc֢yķ㝯✝R,%xKѐx##RA;<C- $ "iĮ;A48yr1DS>2`U#AQ\^pO]s(7غCADXQpcTQ+3H9|snb𨻊[SV*AH7M#[̍XČeL3-E/4ཆ.ә&n \S ҉ξfUx,bDc k1 1f4aA y-0Xb݆N1,A- 8 /)Fr'iVVSZFlk_Qv Bu߯SLPn_ThJnjMĥdZs:RT9< XL +RU0ב_`>t>D?9˘2F]k1ߎ<1ZKY\\WɊ W ps+_β9qCuQXʭR  BfAr> z;W7#n;0)t]K! K ,q̍2]2t$X^|_tX^l: `÷洔zLKF4)|B*3;c4C!AG]iQc] Ka>0DF(rѤu\vgQj-H&+\Ê/\6JEAaE"&+׻&VJ0\m|>Ջ0:V#&J</1E_4|3 HULQ*S^ULȱ1Y7EحEEͧx^YdtE ŏa= h>‘> mmA$.I[U#qo/֒ˢZ#Z-xu];T1lIH )v{ }6"u@|yReSaKI VxFiD^*t@wJ,<`*Cr)*gyzs3^|0;ˠtb5e2MjP@i7t剌mWF0 p笝Jq82>s@h"bGc%-xЕ wpb! BP䎦_b況9( ObGפ[7o-i(YJ0夸3Yg˺Cy!=~7_4]TEbnAL{l  {?UʣD 0 Q726oL.4V zR% V3GW۽ ¿3|?1b늞K^N[ֳag" Hz~Đ3^ċёx "vcy2_?Ðz vi뗍zߤm缆p->\,x-aRmoQ֓rm & go`MɊq*} =arX寑-A3ӢeI+HaavYk\Ú_?p2]~P"‰ЀE`aLjIՆ104s/l۷e$b i$ e+? n׀7&mv+V)Ɵ:.HtoZua~T9;Őb?$ VW3[֘5&sb] y!NH*6B>I?ҥ^g̩F])mP죂:<]lK`eCϾN-\3A`/ a',\RrwJ68Й>5!*SCW)iW3)c{Q%Í%0=AʷAc?ٝ29|,ӄuE> j؈5:qu䬪mTY3>l6jSW#b^ IRET_ E 2P;&q4Kj#h rCG%"e;pQd{-0E+Ӕ^f5F{Z!Ěty01uŻw➐ypp1 $/ {p2!+y+~#`_1IV`Ph'x) ov2wfkYݼ0V`:}Z0nYN‚gICyQӴU󯶵20K)iߋbmGbvJ"ș#>ߠCJO`mh9wlnжt&,/Twv yb7yZoțpg@Ö$ #Pbb'҇S^]e-!Ip a_yCU*o{-r9ӎkK Ʉ6"^2:] +*K 9r'WH'f!*_ ZJ$rX-Lev%;?z~Ìf|侯3`r|x˹1VcWBNdGVC_?cQVD3E4R~ oO!:u V͸wJ`Jq\͚pqhPzRcEd@BQvԨ}NۅTOξSA d7H GII .$0$)@,W*Mŝ< vˋ|7$k^%"! ,'EhvϲOВJ'$P$qk |y~Z Np/L6,{kK 9b:6#:iս|Kdh }%{,h=Bl$S?ouE=Hր4#w;o+Kܘd<Dt?c4)9Fp0a0ÒI6muGoDwDY*)ܬ[78kb\d2 \y܏D".>nY״:mN12V6} UGE5U3"Ksê<$d5dɫ"Qy'\I6kpSGhAZ}.UZuh+,i`ǦXj LkY5[y mbG,|UV~Ԟ`/r.-_5Qyux=_s,R .f\8l,r<ݐ.,~-@aiV]5;79ou "c^H`X'b@>5e#f4s;|] h ڋgT,_v;rD?9Dz ӕw_Hp_8* /ԳupQO0@BŌ"G+&>##`֣Di!ͫb7 33h,W0iH1";*>v+$BW/Dԉ ۰[YxA l}\bjcfMhe~MRQfM3SGMxW#-" ٣a_hdΈW>MP Q}{*Htvܑt$vb@r,s°΃ #2OXtGGxA bx4H#ݍy|>BZk~̭AUZwrϽQB ?鬅!l$zU]ktf 9~*ҸC*u∵DEbyZQ>Sf|BKw(iMu'veP l|N 7`EоXTŕι-*  Y)]j4FUiEzGtHL68^:Z8+[-7_e2JS,( j5Գ 0(VaJ+3bOCTanX5*\D լi [ٟh!>`m\{xNڦ5hpVf0Th=o4[+MP?bΦ!msΩs?T&01,JG odAy.iRx=P}_^rm)7WY!tωVCt+aJSI&b+@REvQׁ-Ja,+PhNjwx=*B:Kp,NUbYۋWTrÏՀDnTj JGV*`ha:|tAE~#j0X-8F7HbP>D/E^\,^m7`7r?-e ~-fߪMDHD0~ ܇g1C-X} 7د1s:m $4/cb5 >xM!~`7r_=M".ύHVYA{hiI>; c^>| vl1HXk> 'v! ;=H-,R2?@JӦ S{VgN(2?E"OΫT&UBE3ldȉ MSgzT/EcAJO u&J0eP@ e^L<[jSuf.xͥB dYbݭKڢL= +ﹲ=ͿtTUET)hƃ_4ڞS0*wsI!ZI<':5wף}()]T1R$6ڀ#g@%qA;P,+|eƷz&=C 8ב%}#F,w~ƭ-:DrudSr[Ok2b,*4TG'.X<78hz}xD/rPR%8v*vQVT\`!]xSQW@`oxc5E ݪ.PhXp,0N5i+6PT*ߐђUʲ>seE&fmK LYŐ{CeʹD3<^ѭ7 fvQ9̢DϚ'Ұ9τrI psWwIˆגE?= JUwR՛l׼8Wu叺V_ӖJBW=UaG3J\a Puw@hv2Te*\M[ e|ftK"vf/vY_-\Z4a2竌r`F]\]lʶ<mB1~[pJkɢ"L̛PWVŮQX |dϜXgiN5mQ_:g{:)B`r fQ:,̞!e J{c~݉S\Vy`ZJW%/^/|tbAo+TyR=,҃I\0YM @}قYӢĒ<=;bLӝ'wGm_υ2GbLjK~7joxړ[~)i}V&'įJ^L1d'XC*Gg.sXs7:VJ־V3 aFvw} ;27ԺaA"5ozǸ6FՉ8jx(jM󣅎UzTfY /vmJ4 Lt l $ /)˯LAX\%QгAݽpm4DhV|/5L#$$.B>9[!5lXeo{{qssuYLZq+fW0eAwꤓJ|~GR[UA_\16{#1|Ia!KmH|#?d9!}V]Gt-o/+~>Tw,!&5&pj/&on%U0 xJ\`fg(8h#J1C[!W4o)bRZ1X?u_Afrw[¦cZmS&R=oW6FG-צݤ9$.`nf]Kӕ =|&q =MAŵ`b Li-Ƒxk|]YkPTD܆nBHS5r?sP"eHֆ'sƕ4k*vy 1geM3\ Q`xX'\ j۵њpPs/#5OD! WϘKZyoAF.)r)y<ÁHӹxt5T"ctJ()RZu˞Q$ε҅70]= zS}v ']%ܣ@TsKP$m]䶬WM^o&/h,B Pl룰ֽb?% Yj,AviWyPdvce6/8gI X~yitq+eyo&, mNԚ}[&AL[bZ󢰣2%KRIIz4$-p9("nEg#xgag x2ܤ3]AiNJ ==R5{GSlosGᄲWhZ'd20pq}$SFXF¼LJQ8hRRъaWca@'6lV's8Ř?nɾAYOa<ì3SZz7S”⬡''gq~@^cK)6I*u Irh稾 x* "@TJCm*E`&n)C[-60)ߊ'֮w(7fkA.*ELZ``@_4'Vz %4C2Y2o}R7My\rY#&'5 g8)˫ ocۓ׭j-N7Ez0v5 LF+Is?֠3~ o8\[1@E%.1oMo|6WLIЗO@S:GRV#D`E'i&en/2`d [m֭ 秹+0k a7S,+Žq.7KjAqi/ưbL=>l",<p$3e>nPuf}a4B v{ƺjӴJtkk׾4d- )]krzu@2ߊl^$cઉ3Yv0O*2JU~AW>%*~(} Vlww)Ѹ2͝9y1X+=_CY.aM< [Drj$ѨA@ 14䌑mI^0k Q+\E9=\H $rRӮ\4ؘ)|ְؓTS_`<T>eՙy ?(suLFWsǠ(eQMBz,*,w}kqA űVR//jL1qt7gJcb2_PbB؟5vAc<5'/N0O*h45z& }= Ҽ$n]3})xethԲnCjc?~㢆Ypc\6ӇٞnK}pIi&D$fNJSo_JPYNЕPE\q|YŠ`0fkql41xCeʜaΌoY)| ԺH*>FQXm7=<pb}/sP$]@Z íǝC1 |E$M&h:<΅:O 7Ǔ@'5 sM\m 0Ef Tp$ cGVru|݌Fy1器h]ޏ;洯Ut)gA~|c)Ї()|N.{?yi3q52u1 綽,%yheuFM }gbn%hN~FHzcS8WNiGܤChB0#G̍ (~ޢ1пU͡D){\E4 a!#@-KVs[@l4- ~a% _Wz' n<!VÙ0nwQb8!PHfэC.ӽ߄Wh#* H,"1M04ݶb v\3]e$рc~esyPPhLOH^5p YZ