dpdk-examples-19.11.4-150300.16.1<>,cdc$)p9|1Ggn[">~W_c}ܕAA#eVP'_Yz9\OHU<1CA[B\jݥޣs0)DY޿R釧WIk|зlQ9C1(θM͢4NoQλ,YYF\sԥ>- P6JTrHɆ&0{'lrR< ]8ûcأY4 '8!!NB0ߋT@Ce^ 1.x%70i>?'?'d $ T2 HYiox      t    tFhffgf(8 F9$F:ͯFGHHIXY\]D^7Ib cd3e8f;l=uPv+w,xy'0'4':'|Cdpdk-examples19.11.4150300.16.1Data Plane Development Kit example applicationsExample applications utilizing the Data Plane Development Kit, such as L2 and L3 forwarding.c$)ibs-arm-5ZTSUSE Linux Enterprise 15SUSE LLC BSD-3-Clause AND GPL-2.0-only AND LGPL-2.1-onlyhttps://www.suse.com/System/Librarieshttp://dpdk.orglinuxaarch64    0 hp 8 h 8  p  ( 0 X(h   (  H  p  8   {NcQQ!62A '^e`5'2.ci =_1/ h E {<W*_{  tjpmj[;iE  R k o    } uL%3,2^ H1i 5jr:3i;jC"L"8:-7F ? U  M>|dg{f!5{[fovzoar|gH{of{fvzoaHS.r{T( Rf i p)T( #|f04PC J8 ,  R^kJTKc `sU  g+3 26aQ1%M1Z&}(i_]0 $<; G3Fwh< f;EJ $M-@0%+\]6l &Wcn# #B$!pU_# A.IF /(s ?*( o, B77kl k.2 7*Ka  >DIFA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤큤큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤c$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Qc$'Q_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VCc$'J_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VCc$'J_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VCc$#_VCc$#_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VC_VCc$'J_VC_VC_VCc$'J_VC_VC_VC2346fb25b40eacfe1593233fef98c11217675d555288534125d19f7afc2a079ef1291df6719ffb5e7ac768c29972d126c7b99200aae400307eba33b450bf5c5184be2912a56dd9467fa25b1f60ea78eb438cb99250b5ac56fa5f8057f86aefc7d4c17e433a8387990a5363169897b1273413b49adde8d2cbc305c66d231035589f93f86774ccefc65a9a779a196c64d12a3a3dbc4ec03bf9d4052f52bbaccdfda9ad16688015f3968398ef75b9dcba1736d040e3620d44faea6407b9c1dc832d0fff020fd828ee01637f6b95a8a3636c01b53cd3e8d836efab9b8476feedefe1056b2de826525a9cdd1e0fdba8b29f2526dfa5ead1ed0c4bc5e20793ba0409e8da8ce90f03159f30c613ad763a87aaf606a289afbba5aa70ccfd08d2ff59370745d4ee07f02fcdc4e82b78908f15484bbcec97ff0073f05cfa72aaaf97dd8155c907ced557ed22ad12789b3813a6f138b69ec8106158aedd87b63f89edfc84e10159f30b7a210e8c299242bb812056c344fc2bd0c2b55f4a191099d607b137315bad645a0b307d2263af0bf192b9891559a665ef42ccb5ee41ce81bbe49d6d9e12daee5b2941c1655ed9d01459110c7e0f1fa59ab22492249daeb44c29298499d1561759e4cc72b99d55f3c87883fcfe5d4fa347914c10e5ef4b543ac4a26d21ce622a42dfec76992c54ec54bce7332848b285948e926c71591fff39460e956170b13e54a0a61b73cdd3c38ea56b547ece2f476213e8c391be8eeaed5fa1debfe656e73f51b92ce4e572a13bb90e12c31bca75645f4b4c3ac855c72dc4e7077d893058dcc483bf691784e57f8f879dc45f8ac00eeebb76a07ede1b2353b110a927fcfae6eacf70bd1be0a462e1a4930f7e80b58b4d4f7650ff20c305c9d2700bcebe499f13bfbfe590d379f7bf62d83311d724df6249ec5e98cd5b79e403e480ea5b8c59ff6431f02c9b3a6a5d3c2bff27e95156a06bd8cb5ec0b3d1a467c9d5db6f21027c51a8d7645fb20a2f77d9bfb8ca930fc38bacd925d2e0bc0ed7b0481600d6d3be55a6077a932b0b30631c45ce0940ad21764fd9f3cd7f77a5486cc63d25153d1e6c314bf7c3484dafd403b56244c0fb7fa1e3e2615a8e83acf6bbdbd1bbf9ada729f25eea1f1e6f425d9967714f95899854cb094d5a713794961dd3cd820d6b0723fa24357e1d4c84a5c70a1567a65fa8600339544666437bbdabf7310a72f89a8a2a4cc9422ffd4467669277f97c78e297abd783662d777fee7105b1c85f8ac42dfd092029291f8beac4eac11697bc1c0b81952b6a56ec53964e71ffac1ec44634479dcafed59cc62790bc98a69bfbe4e0d6e4b5a77deead4684751796b27aa6bfbb9d27e07e4a83b670286e1cd2399444f50e8700388965f084aeaa33ea2d76f5dae352a76123760f5604637f3fdb3dce8b97acff23f2ea13102ef2dbf0f856d95938deeac5c491f3bdcc56e2e795aa2989b66649fcf4f820e74279f8f486d5a2094183c4c671a95e1f0b9e1000c2f3cea7fec57d8bd0a93ac858d80ba6a48ca2527e4a2f15b7c6b3f812aa817d70610cc68d2fe4ed3101ed1e8f0cbbfd1e127041783628bd62ef5a2901fa81b636d6311ac8d38364fb09823f6dfd7432b279fce8dd2fcb7789617127aa43fcb5bd0e527298b8fc1c98d93c8c5183d5ef1243ef309d82f81a97fbd81ce1f62e2b49683e75338d42480465fac06f7ced9b69fc3d25f227ff85377e1e48acd89858ee6a5a24405894a1f0634458f509c7d4641b9d454793c7969063bff61ab1bb963165e00a46ec0f78dc3e10bd486ca1100707e73075694af91ffe35b1a2b9ffd03fc1028572dfd5f1ba03eb2875c6ad832ec48efd1ed5aa7691c295fc7225a6c55786ec9f58e676aa931dc41efe0fed002c5e85db9704d0b3514bced20b3b88357a0f56aaabbb6917171bc7a924401481022be0cf1400b4558ebce6366eaab6faacc5b2433e50a59487ff0b1f514ebb250803d16ff1505a730ccb778492abd4d7a111499a4877a4567fbc5d3b0f116af41eaaa230408263eb25c4eae34c442a4ec1d5705858d38daea23a451b73db80e6b22ccf22cbd7b2b40b6cf7741cffe0b7f705ad1cd0ce9a86c98309f4b5c4aa62e911a3199ced2c5c324389933dc9e74ff8805a27141390e1113fd4545e2b28f1e906a166767a4fdce6befec18bb27d961ab96c391c2c76f4d5be960f4d6025d395be7d4a8af3dd5494f7f7ad4a46138aa179ec0b8ddb925c128ccb65a119eb8ce214b6be2e10d3d6fbbef57e12ecbf18191aabaf5c787a586baa0ab0a887d0f344329264e923744c50537bf0753fd1dc484a4545524103d4dcc20a555dc910efbef36df3c1bf49ec5467902b7205b4848ff932acfc60a5d5de353d061d4a31602665bd02a3f05c34dedba518cfde397d7a64b06a6e3ed6751785d15b7b3ce01d7715edf0f828d79f568bc0314aaa44217c68a41ad198121c2a97d956b8e8b3d06226247809adecd9edc36c20ca4354954f06723f70becfd299d19eae0fbbab7e81b58ea848a5fbbc74b81053530006147b691d812fe20fcfc0e98fc9189f2bec316e24958302b77d3e20861d356cb8880e71b017660de5d1e87e2188c88f5c9a1cd46b2d6d527a4c5460b8b72ecea0354a13a42aaa71a40bddb4bb999ebae16d25cacfc4a647026fc5b819a31c4e32712936f078e6a293d91c79fc496e71ff05bc405417f0c1db85a7190394b2036261f492c3c6befc8563e0893074c449300cc95f5fa2741a28340e5d3d7ba03bddcf3144f58a46b117ae94d9671326518bdf5e2780665ce1410271206a4e7a4e6e2517ec43bf57be9e3878277deb92cc88972954080bca1b8dcb2d503b738d311f3de4d7b42bc3e7e6ea22c249781acc1fc597e59f1b39ba7b9ec733b04d7fc51c5a6ef6665f8c67379404be45edce275866d67c2d5269b5839a26b75f07b222484f4641e309e998edb6f4716a18573b4fbe270e7c8dad8a11102f63bf6c6ebbba858080d20e1fc19c882bf288d967fc300be34584484d03694313906650d72f54db7a502b2f6682c9af6fa3322103e9b04b5af9dc7d16fa36e19d209fb072d012b94b18fd7216d5cea79a754b496c5fa392b189ca862e929587ab3c7be8bb5a5c4e0d38e33516809a00b3952f1906307f01dc1d55493e5691361b863f26c4eef2347587603e9e9f1532a798c2e8f42e13c751e49d05d1b3ab28987c40834c4aedf1b660cacc00398f45bfe433e36a90892c6d7b76eeef51c4e14b284fffc4fd90a150946c62e3ea720194d03f84263a92a11fa25858a53886d89a472221805a7f73afa0a78cfc52db058d15a17a0abe51e62a2d24f99aa2494ad8470662721e21b288a33d1fab16852b787ed1dca8a2369d2d967b4c981332a0c70e597072d845b9985d80a11202bd2a8e6d194d0be8f5bc3ffaaafc022d94482104543591b3ba8292b287da77a49a55015a810d6b6802690298576be78914c7764b6bf850b53e6c14393f1a87f80bab4418b8c1bb8eaac31dc886a71bcf7cb5ae99998c26ccb5a8ef55244f232eaac0340654e63ed47edc4fb46e9b2a89e2e06cf05100a5153b87dd6b98a726300f006d3e15cd30250c60f01a809b04e23c3accd7252bcbb388a7b6cf600d7f1de5c9971f52ae15f67ded82220e9b7732ab93c0a3cfd8ef2faca87d31d8d902969bc891b3c139dd15c07e75f02b46c9ce01912452109ed516bf90722c7f63e04b3fcdcb9d2428aa1fb834ec75a01fedf9caae9740b9a712735de0dc2f988ce3035df94bdc5594166830d5ea05653a096becd7eb90cc4f7c21913043399f4de8ca13b56c1e6ad363b912cdf30fedbf754b1e8dffd6771db8b77bdcbe9dba97d8dea0c721a502e493e4c0df8e082eaad6d39709285e622b2b8f09e340c65482756124790d27b56a94ff2bf35f9a2d3e23b65ab851089ba159b11c6fd0aeb337afc2ac46ecd1997831427fbec41cf6f58a08b36a457b6930d79ecfb62b0cc05373d99f61a570c9b39ed0f3c8ac56fb5560ae9b81208fdc5a7f0604dcea12d5d867e79886e5abe0b1342989d1dd07dce6132ef6de4d6fcc0d8fa46f77bfd8e257cfaadf47fd8f11aa83901074c98147cf36da173c59a4b08ebdaae99934f5cfeb8a0c234ba36660947bc20d636c804aef706dfc000c0ac2b28ed7f92fb2be046ed349effd0e91742ebe65a6c9d2a9bb9ed8da2161c48d9ac0d7d510471fd8a1eb0d01f7a5a2c68daee0e9a20333989d90292f2da295b8a62e6a562894c19c7d22c65cb66c5cf49605523adf07791e076526e18f616f0e3b1026fee734b9162ee924bcc90f7ff5ba3451fcb2808cee33447b1ea1d3db697830d24d39c81a621a4f01cf736e100084132b28c27ed85d851964cca5c99e4466596bb070a8b774ba2c550793e69b7ae702ad003206fb7abf0560c8a2a24cefed46f38ffa3d3b494ff74920ad85ceb58b8153a5a4b8761c840a4d5660042f16d795de70850ff19f2d24c5f956007291bfb62e0426c3e2221f59c4cf3e093624f02dc55a1913e642f2a9278a0c417ccb14381472827a70eac52bdf00514fc4d6b3bf71b68ad234da26d2914aef88d406c91ed7a72685f22ef057a4e9f12c255d7ea0e5e12cbdbdfe2f378485d647c79f08caa98f3a0f09c3251644082ab70844ba205a4cae1f09e54c6695a1714fa87ce1f305dce8dffb6b9047ae0d406d8fc3bd00e539e7596166ef4b788bbf2b0f062488e1095521cc1ec49e48bf17d94e776deabfa4418e6611489e50849e3305a4861ddcca1871a9ba06c8a18dd55201dbd3f8bffd14ce6079006f1c63bbd86667c0b4f6b19121324bf4acac7b9d7cff94b3c9190c623f6f1d12d604a299e84b021d3106e23809fd8f7c53bd6e6b35c5a1cf467e28723b96cae687703bfba9ea80843cd9d562df613c9f4f1b504f2cf1a4289ccb529d46e5c37b0244e1cde6a79f04d369af415f01cec8dd98736a2a3ce4d9279b14c908d19800c932a85f8a0c7c0d9f9a6f05bcf0bd576bcea73bf0117eadd1c99dc437447226aa36d574331f2101738a6d5d05751e5ea55fff128a257675fd5f46708b590757fbfa369b447269e7c6e31c5ba533d8024c3d292393dec38594548c784c24c54de8532da5452649b83917434c046686bcc35400a6f63fdd1b31d37e87f2d3ac3202331ad226b29949e756f1e6fdfc5c3c983f15e8c67fe1f5df71080d0cb9c7634effbe38ebdc0116bb3e2b28753bbc859e1638b8bb94817c58c52e1693140455bbc3f4381f4171234cba6f04e9e9aa0c16395aaf82cb91ca65bea3ef74a07210b9b7008a061dc5ae20a1361aafc89acae4313b00853663866b0350440ce8cc1680d59679f10c825ef0f99e4f8d251e2ba02d8a2534edd76c15f6fe2ae3c383c55f074276b813b1e1714e51e124f53e647d5b18588bcd1fc1922fe51b4f8b4ced445c185dcf55141a33ed38a93a3ed520e2ed7b7fd7d02fdc602bc6dab4ccd6f288de5f4cacf8a27e07cbd3436dffd7364a609ec4af546d4a994e7315193c5b3d4a5f626b4ce3c1c248e79a9dff8761138911c9325223a21664cf2c430883fa259e4966487d2cbdc8d7617e14c00a3eb8ab61db274e42cad0846cc4639fbd794d93c70fbe16b2af3ce605f8fbab65d6f395f0cb879fc2b2a54194c79aa7e609cd938a4b6abe15ffb664893f538265aee853e4c49e179d2e14e9284fd4152714a56d4f99bf75805aa3e9eb959f361032e727d213b74122e3433e331f75b0d0f7fe91e57ae9c51fb2be0605beb6c9011bcb6a3c94ec23e7f5924cac8c51446a0cd2e15526082c7021fa3bedac7fc2d85d85b38b1ffad094026cb0a998b178fa09d5b9a615c6626b9ff93cf86f57f238510a33691b0afcb0fddddc59710ddf4d7a991dbc3100d816e65c1ffc76b3bd1575fe3999292404a90c5db90eddb4c993cb591e43195ded1e4343861b15b9aef6599a17bbdd56164a2e1237d4ebb206a4ecc67bc66ca5715597f8f147cdc9de5be7b623e54c4d412aea6a76078a1d4505046a930bca82622b8353a648f93d6df6bad2c622109ce023a0df297de940de3e15242ce38f78de1cb131006dab06c9744276f6010ed77df2335145ab36ac47654294be33cc3d2fd208b64bab35573b1a533f67315861ac139cd69133713fa8f1360bf8b6faa44dc12cd38ec2825c7e68d79559ecdf35853bf96d9505a3b8e40f2a7deecd1e30f01c1815f57686dd4be74638e9a34757ebd4a36867f79a29c9cb4400b8e08c6004e070c01ab232a85bbed499281c0aa78aab530fd818da2868e08a0576ef96108fdce8154dc6aab9f488e364d84c7e705862e2f3e9fb88a686e8c953720d110aeec334d6fe9efb48597ff6557b8b6367b0bda3ee7090d566d8e640741e093ae8e095bd97a2e3061ee7b2847d38f51e6f306a71239bb9f241c9fc2e86565a489686339af537b4b9df45069a7b507b107a97fc0d6801711806eab9584d45db7551bbb8ab4be21c5b8b7fd689204c38da2c6d287918ea0bbdfa80c6c98916d0e20c3ead40e56d5756097078ca7c974f5b66ae14fb780c9448095466a1d4b51c773514ef2064bcb2cb2729928cb5e53714095398a7d854a23c352e7631111e7d0f175fe86f8d594bea7d518e5cbabdcd391cc0fbd68a9bfcb3717f926bbef09566fcf722b757f919a13cb77d28dcc593193ebc88f2eb35a67cdd8302182b2b33df56f95503c89eba84f65c7d478908f53e00833d716c3068e3c991b1c3271d1a6575cb3ed5a4a20d86e7de362b55259190cac2d191c5cafe6444cafc3fcebb97d401aee72cffd23f2db0a623f3d09280bef261e7d3a1fbaf93b2a3142d9b1083538ca0f58080753aee84e21bca7333a60e44f9fc1b87c5dbef50f438be7522e8f28f1ce25dd28c6e9f08be8a593bbe046979f2f6e989350c5471844b951c9d9d2f1d95f31081e61635647ebb5e4fefafcaf4b37d7bf3ce319c7a54ef1b4313fa4f6c005fccd8689cf13e1d3b78c424ddcae133235b2f5731e78f205a27a7e3e7b2af0c6d9b127f2a22208ef62de48d967b208a79eeb4948bae8c0383cd145c2372848cf8c4fac79764463ba059186a7f0fef326f1fc1df77eb7a4cc40207683cf5d9b3803d6baee62b2aa5a0536675a60f67b4a597d017cbe8d5ecee975c8ce5b55e8f4f898740f74e71b27940f0cbdefe591cb43de9a339343dd2965beb60eb551f53198c4ec6d1a05b56a5c8e882b8fa2860d906e78f48648231ba826d2c31495c367432f8ec0ed6a7cab1f930d0ad7316bf0906be26ec0fe4baa6aa6114e98e96ec4f4e2fdb532c6259a15c3f9923a6dab363371e79a54a7e0b81e84a3afa587d65aad84649356ef4d5cb535e15c38e20c57ac984593f13e82ff8ae7a16e31b76364edbc225a96ea91929241deaa83a7a6906084cfcf447194054897355f10ba8c35d0a0e1370e907e5796ae47c63a0256268ce459c12fb83572b1c6bd66e39135b1850102d5d5a7094106e4061412cd167c44417127808c0dff868a93d7935e05345fe07712ba3a93e71a66580dc8cdee8063d56496c0bfb7a0bb1ef2f34e8f7c2fb4d247f8ede4530da98e207828ccdeaf0b44478f74d6a5f7adbeee98dd65df87c81e1aa351f9b872b743560a4a5a214a640729bb23591ce8dc2a3190a7e876ecf4314458cae2dec48c1991bc0bf071dec085cc3c4ff628ecbc07b5b8fe8ff9ebbaf2c3a32b229b67a8f6a780096987f1c42f7d88f7ce2d92e720749c82992479fcfae49b3b20cbba391ae0b14e11c5da3cff003f40d99a601ae060116d3630251a2712a7d4f5f48db0dcb0d24169d8a6947416117c491297f23c4514d549364cda690c89aab1f5190be649ec149254978acccae25d9ed2c2de5c8134ab88010032b7b68061c91cb52244f1a96cffd68b6b21d707d09c28285f8e9a44f7f04f959b16cbc86815b3dd194d82ed9999d90ba74a1bd50ff8fb0e00850ca8d12db73333cc2621aece10d6933ab265b1feb1ae28b114e2a027e7dd442e30284accba99907cf2e647e8d1837a6d8948a0320463e5dd9142a25b98809de4cc30b4f7f8641dfcd45305a15345dffc85cb28a555aa0487232f996f3efb817b9faf80b02d324d13702ac7ce64e68e97ad45a9fd68131cc20a2aca96dec717ec03f81bf543824b95e6867d9ae4534cdace48e0d972175d5449f92c6122643d9b66bc7125bc707c5d3ab362c1d70764dcb4ef24e8c8b986f383f25f0fe0dbe35f60c2e322ae5ea6afb15e7cf2a3b3ba5185aa6296c902c3a34ec6865d991b10a1d5325005d61110285cbec4c9c6caa3dc326d6698a32e7fa4d844a25f5f014da3debb28f2566e53a7783189e3dcad2a44803c90093dbcc4fe81eed57debcdc78b3e6c3f62ca2df18d2f5f5f31d54938f9652187d9136e58ab4cc4960414b2b50f3adfeb0f5cfa6978849e31fd54d74165dbdbd82eb3714d9cb077800e8a3f317a95b918378a3f4f5841d6654f106099b6dc0f1555375e8994a744925c26a821204bf9801ecc07bd67d05d11c91cfe67d9984c84bfac65bff71674a1253877a01a73c8614cf652a4363d2b2992d4672052064685ef5e63a6c62e9f1659e388d4b862b9f0abb9575dca785c6ae445acf24c8f1cd0c5bb11651f8280b26f80779ac10acfa4f9a953604403e50053953b9e1c3e88a5852ad4aa20686df9e3986324f1077abeb2c512e4da1f69be27f5064e82338f5765b692e6da25a979d9e915f60aed69d9958037b7f6c2fb66baa1832bbdc81a109257a793022f86dacca7e73a886a670ba2623fb87102107c97b85d1e50be6c438fadbed84d2827a5032e36b2308312efba0d52654ece4760a5a4b758e27c3bf983d8208c6b97d429a141dcced5faefd10055c0569e985025bb74131abddd1e3321d63b77e4942eab8649748ee45070b613f1528813e5d8b9af3a427d102591e60f381f2f9352ed1ba1dff112bc11241212b8d67d14f6f0ba0c61d6a7717161d4ab316cf6f195dd8cbcc31272b9c556e0fe67495fd92574c299e0f387696d130d211494f74681b0bdd66f95027321f05fe951020a1fca5178181112abc5e8b1586082ed2de8dbb8476095c0c18a0852229c54d5fdec17b0a0c3e34bab9cdce7b7844eb396f5e82eb6613ed0680bde005f3771d64fa19cc7c6f0a7ae2dd3a1ccebba2167ed6fc04d07e24bc6469dfe480de10709cc457cc093dd2a7e5a4cb5ebd1781fbe8218050e1d4f215df575dc0ba24c5fbfaeb0a3e967047ce2eedbc5805cfff9cc192d8b359a0ef143a19d0a01e9b7575d4a2a057bcd0db3ea710567b1539da3d077da3251398ae391299f86135f33fa3691390bca6ee5345b8aae20248a221b8db3ab906aa557ac44b9cc3ec55680c254c0480312e97f2470fa06b45784eab74f08b36df4c334d795eee95fc51d562dcd25d5e5dfbc1327cad12c0d51d5bc81a1288e025e6713b3175cc5c4de3d159a88f6c31ba4c68b87b42d03917c50b7c4df70b68dcce6224787336a7a17e1dcfe8c1a72bafa8cece832e4fbbeaf624ce98be89c70245bb9d06f213fa52ed73035e5077aa0ec7153900ade2fe073d5c34b9ec5f4f8c8835f9474379f9089638df4d9fe129a8b6ff8447d1c06178a7bdde44ea3d0e2c44dd19ba9d52cafc6be419a3b28a83ca4bae4cfca813783d0f6f1b9ad1081903379559b4cf5aca682faca3d36984843e18d5ae5f63467e64a5cf48ba7484da7b98375d9647d0fb02430014499a7e72018f475bb28b19ead77834d658a8c7b8081f00a121150a375809b59ecb5dce9efcb821c2c84e90f733fde306f647ac5cd18f18c6da2776c9df609665e8a79d95b149b12fdb1224c2f27fa3329292ac13f279f0be918c33bcabc497f2831d72d9d66aaccd4ad9d1bc5683b729bd8f2bf3194cd90df192d246132f1cbd584978e5cb5d1fc3c01574d558eac71b07bd16feb7320c7896e92aad070d338388113aa18b7c796bc2dfcd3330fee702e917c3a10b736aa1833d0b4bf751741547b84587960cfc1c652c4b66f61efb451e601115278c224e091fc91eae444a10a691aae0b0724047fdb33a61f007cffad2a7a217e021b368eaabed4733271ef5d8ade03715032c181432d19273d7fb093736da2aa8486a8d31675f3411f0375293deb64df76a02bb6e5a4192571816a9f43a8b85e0856c864fb33d3ea62220fffa0c58df3f44e2ff69c8fa4565661920c2a7c1b5f305aee210b9ae68887c590d1d83a48e7ae35c68a9c9d6b75b936bb1344d3463391d70f536c7da5f54af2f2d0dea2613dbcd121a86a438116976d1ae0eda067609036da99ba3f7aa221d52dccc979c43148afcd40e024e0647276d2c26d93f732d7d01dcba88a020070c8c0ff8a0a70297ce39fc7d4d379a8467069d2e2a060afa05cc004962ae95fad34bbda65d2713d961cc4a2ea68a12e417acf3671341083028b634d75de0c2ecc3502b0da3eed9b680e2e9eff9411ffcf32eb501ab3e7aee2c36ae1f391b3640b6cbd73ff064755f7bbd55eebfbb5c1c89591ebabca36409d5fe7a9cfd5778c3d089a9ae118db83e1b1fad5b65acba3d2f9fdecfef3e947e4a60e8089f7803daf4e8dcadbaab3aeaa44218824327275dd7fd6b9a325aca71b0d6e75cd179cbebd022e617fe593410231041c0399734fa42052cf35f2b1bfe7ed141d7b1e11082a8e211b9f8da623423397893d725ba8a832ac9981180aab3d9df8b00bdbc347a61d52f0aa3304414bc98f97ed2dd3a70109819451198a43767071225341b4fc711ec47e2efcc550a8d091139e844ee95284b3ffeded4b1ee78f527c13d0834b34b5b3171536893c0b0e667e2643b285a82fd45db294b990b71308310f753d181c06e942e95b11ffca37fa7c5b3b7a83b6970865573b5440a7c0ba1d8e4612b6c877f6f89f2d301164dbc34a79e21ec7bd514ecfdfffd4baabf727c0e421f61e371506a1bba4fd37a94fb9750d0fb5d285f27654fdaaefe2f9c29536b731c875d1db30abb01a5a9a782f5b4d705828fa7c3959bb52ad8b84a491033ec1e6d7c15d1c3ce30cce37b930a012a0a9cd047170046e0a6b2f2e9002c19e7d7246770ec2d7e157fb33dec4b05ec0dc2eb1bb56a4d6d88fbf34d72315c12d05d33b2743f63cbe218b4771bfd95660f0e955f07d2b5952134157822c761dd3ea3586458bb08af543d158801f6871b5cfb052e1b337e4d2df61f5642dc639600621a58f78f07986f8d7e1d7c07e9b5fbbce7f999cf86aeba942fe9a2a75dc91cd1350103d314ae1871045c3900e206379e06dadf1784ebd18f0576afb7aeaacb1d060fb386498171d4ec7b19196b39ad6423352111447f4dcf5771923c01a15f58b45118a59ce194697abc8fcfc91140513d97bad21041e86c02e4a3d2fcc2a12dbb7123f27209ce3a6011579a42ed29dce9c69295adb4307960f621255e83cbeef83e46e37bfc4f89fa7f7b2ee88db9046c206ec712d1ea3d5dac5b0a63a3706363290c7844e9dcfb8bc2ef95424318ad208ef4fa4dcea7ff87e23a82a99561e1d190233499fc8e4052c46826bb8b7cffc372096e89ee3b077e3a38db25a26aad2839387de50272b3331d26c329cb4889c4dbdcadf4fb718ec921567979fd59194916c6a526f863336fae153eacc0bbce497e5724acfab999bab3b0e1096dc0461f3f5e6a0db54d5efa82a06d02f8055f4bc9fbec14973d73572415d36d50bb7b94b057156caf8b5d9e611fac38d964dbc869a67934842810d2e64d09abd5c2245f0fa99721069de3e4e031b4cd3ed06b13ee2404e805219e89631bdfb97233219e2e06b0539d2e73206b30647798c2b60ef75dac08eb6d00b054ced65691000d370bb66981a7d35700fdd6a83438240ecf3e5880287fd10bb17d447e15a9ece1d797c04c3a8c74eb20ad27cb05e6bb741949e3556d74ddb654e444856c6a5172599526e1eee7c574d946fe34401ad16d00bb4e34dfeac53f20562698a553a928617f88f3efe0c4a28a09e5451b55ed0fbb91d724e237e0429dfbab3e315b4e3fcc4b322bcf824d600a74e9accef0c428268b91ec9ad4d189784f07155f587067e1e548e0ecabcad353e09b2fa22598c3673f68fd2250e2fb12c427539d5e96646f32813e783393a60e662575ce89c614a31e33a5ee93dff138b631868d6e24fdf286830552a20163ffbcb920fb72239b32b8823ea26b2456aaa0f12634d7b744b13d5e7db9cd3890333edb9932987c14629dbdc9997aa1cdef73c9ed98177ccdeee30a333cb30815eab45e186f8c92fe97cbc5cf74f51b09ec495771720a59f830df893dc4527ff1f55f283709892779106fb61c77b0a6473ea11fe1e3833960351725794bc39fb0b9a51395bb59c38e849010020fcc11a2b15a8acf2befeeb711e231fa7cd8354e80e7010bb73b78363d2935345fbec2c82cebf8a1a356c2533c1d4678324f76995e2b962638fc5ea5111428c481716f4f3dee1952c8bacec7f332272b23ba5342c4aec105fbb093878dfeec1b40fdccd2c7503babc01f467d535219856e24d79d4e608e2a86d50426786d418f9f82ac324e68e7eb8ad939f1a34785e2f62b049c84d2ba5f9f0c2036332cf770c78cedb72a9b270ed793dc1ef90eac905732a86dd07459ff3ceeca3482250fea10a570a6bf79b823bf27fc6f9450b53a0cdc7c988746330afc33a027926d99768fa862a7bc32c8233204a858fc5628176583fbaf192253f8a1bd3d3fa88e67f3646fa72fa08ee483370d84930cc4872266076dc1e7a252486a4778a5518abc4ba106bc0fbe9446a8a06d2c4fcaa4e831f5e80a2795aad812e90ddeb57af43b03b3c03fbfbe83f88efe674c1317443324119caf564353fde807ea3cbc66ae07d9bfe188d87d5ca304551c614564344ac9b998b959bb38f0ad35c5dd473015478b636ea5b50e11b253dfcb7d9673cb36b037d54d14ddccbcd8423a9842930988ff29f6b9b6473191b38e8160cadd3db4e97fa7796abadb1978c4e425a3c40507adf635029cdcbd14cd35e4277c03a9da9e347e0a64d4441cfb1b646dbc80b1afafa6700742e6d55f553d92659c9356b97a41a369f295a07b3db3a5a4b8761c840a4d5660042f16d795de70850ff19f2d24c5f956007291bfb62ea255d87f9612dce33b022d81d71449f5133090f8cfa86367e988c4735baac945649cc862d4e0a6f3804e93f39b3e2de3291e15796032084189a35f48d33f1ffe42c4bb50a5ba9aa175ff9a6ca257ce9b949832c4ba2c052f8eb86b6d87f03666346f549719d34ce69f47b9b4c95077f88d9a8ec2e8f061d9095047a9b5d60d0fe52b62785a3fc4f08dfbcd1850bcde511d8550209f1a6ae2dffe8b7960e43b47146158e16a9ac1aa335a55f8dc1c88d07efcc7ab458a517367528d495182db4127a84c3912bb0b24b4fb0f1528e18166ed41ebbf92d622d91db219ceba1df30f118ec7b300237d5946fd4c443b14298eb4b554b1360531a52cde83595d0427ca067c34521cffb6dd042f8ddb002b3cd7fcf2972d833f3cb6af24ff8c3829e428f75d08f04b7fe5f021904d904bffdd40c987387bb648e4b08d8a51dffd9e30197874b4c72a155383690542eb985dadd338c99a74c9cf7728b4958e8eea417cef45bcad80795bc9098ca8a8e738a6b22847deb101dfb0abdc36dfa8e880c2d5747874f26e7f26ebcab38676b14b5c3bcfc7523cea76c4c2f5cde7fa777182f031b3bed899bca516714db68079a997a9bd470fd07b24b5cd4757369ad31465088d2971306519d1a92b1c921055249ad904556256701254a0b3f2b4e7f5b4c9e3e07ca9c873a53917af29ad06bb3579ce0e481233116e0eb0b28744b7756fc453618dc47d43907cc8190e777420b6c093d78436b19c41b6a434f94a0c6ef5e968142fda70535396ebaffeee4ba7649f19ca432796c0ba33622db0286a9f462f99f01945eebfdc6312fe471abd2513d7dcecb4beecbda089e1a063e77568c0059d98003cc0b6ebbf908e0c84d53632963b1d1ecbe44eca9980278cf469f935ee4ae5362d55269aa9e81531e8091201985b9791bb4acc728e9daa6d39df4f4d01986515d4f0fef15c3fe2ad7f51c1c5383853cde8d8c66f39575e588041481df72a2eaf8c689db216730c2a0fe4aa3f6414cdafcb6e8ba82c3915be86a705e7c12c48cbccd490528432f8e8a1dcade195f037c03cb62bc354f6f97acb795e31717979c1f36bf98d240b743200047c254d0d732d4cfe08af926f34fff3ff10ac6118a45ac7815499ec921dc1f77f57f3bc449d0c23480724440001d86b130a3ed9ad7a4324e5789df970c4a5e762c9ef572d4bab8f929f40f097ba04bfadf1a9745cbc3f64ce717745d9ced6d81fe1ad6f33a908269293fc67f822ef31023362eaa6bffe8af43e1fc0ca5c46aeb4c23c45be23adf79bf125399a6c8b11e87094627f349bebdde65b82c9174810307ce888f68fad03fa0cb92cf54fac5279df1fc2dbd09bdbac1f648532988ac8270b2f298197ff00ada38824d070339d472b83edae08a47ae2d93cf4b3b08618183e342b80bdb6b585627d886bb80b4df23a13c63e7b8e3761bf3e754dcdb5f55029de2739024c66dca82ef3602310c728a9b94d827744c4f204dcb3cd037a55ec4ae152ed5c3b8013f36798c0eff74a920258d191eb133a04b3515cd18a473618ce3e1c01616731070a2e7755ef4a33a62b5a991e02b9246a066c508ed21df9cea46c8cec2f7aea8552531da85edf79c62fb27a63c205bb44b6c645dbd1c9a26a3ff1c9b6a1d3615735fbc0d2f38ae8d57ed17adf22959f3e16029bd44e4ee0939d56ee617468a829a424fec5a52f64d9f3ef9eae6a2c3c1aaf35cfade70c7ee2f8a656c9b682c068ac95405891dc58638bfd1a10474e9ed8ce27d762bcda95e922e56013a04f21d294ddc0a5b720847782b906f7175bc51d0ea5b6830bb9aaa7727124d14dce62bfa3277dfa3320a55de8308bcac97d350a958f7da6d7edb1c242bdabad03717dcb128eee027fb16097fd700b26d558d6cfcd85617f1e1a53753dc22ef780cebecee3de68956e321fba4792778bbfafae60d4157eb82e6d8a7bd74eec9b879c882444b9a5b29d5de5db8b165f2d021322d541b0c2961b9cfce7581ac4560c715144aba3a62ead62b5843f38d63fd1f80de095567738725820170798cd1d075000154bc813ae683e56d4fea7845e8af74c91e2a7ff3d7bb585e7e57337a5b1c4c831b3ab6d1ae145473453beb15a4e7be2fd821a65107bb1226a679a80897d8548512207bd84e3d721e1266ec70537fcbe8a5d6f92c6c11bea0cdef828f9e362ce033d8a98b5007784bb99fbc49e577b05ba80ed9e4751517eca42b54fea51265e2dabee188ed3fb5cb6bf41f1348731bfd6c719df3ec0423007190f9918505ca67ebc081833edfc2100a99fe1d548b41ecadaf6d8d96a2af186dce60164a001bc27d6cce9240e78cd6df66b7690d282882f813f2aa661f50f9d3b497e6875488740fff39acf113751a0483a5030750f2f6024ebcf155d73d0aabf87ce2d76fb378f1caf6c59f7ad044569c987c5dcaf207022d5f78ceffd21ed3caef5c8910f0737d3c2377ad417d3e1f6c46df96db079513acc9ac66ee76d9940c07f1012275664b005cd6c987aebd9f6de1e11c527f274627b1048889bb61ffe6b5360d97123bcda35e89d11e99ab032f78f48054c71debe7b1c05f72cb1566445a7d0fab4989fe7fc53e8476a5cd671fed3536338b8531a10fe133a92b5a3f3f6e4a7772529cd5b9e1c4394efb6f755b6eb799f28f67d51773c81610b6fb407778b2d23f301f54999588af87868a580f180d8c0661844c6e153f202307068cb47e229c4c6a3152f1516a07efada60388e4fa2a77727b71c5e5b7554ced4b3cea784c27e9745612022192449b0b01f1bbea3d024902d9f72b5ac0a9c3ea3585494a55df791cc8afe15e8b5bce78a2e591a05d85301f0e1d78f46b4a8ea32b80eeafdca4fc51dfa992ba08b3f4a80299e3b3cc88330e3c56c9ae6b3979b7e17e72c0afa3ca9aa6d8091f8b28858ad12c792c8fab3503e63bb7d5efe4653d54e4462a48283ab8d891c91976e910678a10916a78bdf313d3b01c6ae934e4a1d4463dbbb4111b79547765fbbb141888556fd6a938b2fa413e7763e364b06b69084876104db35d5c1b67493ed5de7f179d537f09e08b383c76079c15bef6f19029e9db2a8a574ec351b1b2b106006177e95e7d4d1a746306e40feaf0de6c99341848a8ec0a50849d1affbf75d6285a73f6db3d701cde04925d840acc6b257562382af0644faeb43de21a4136d51b66465aa9888ea9f8c648d0e26208824f15a81533d8c6bfd12f83af530c4e0f061d5023d6bc8eb9886568b3e26294d0df38ed83e438c245f94aaa52c2ece4c15547756e0d328c330b89b799dabb596e9d7f51fc949b12e694c6bc7a2dfd189917597f0eb2641974d244a189eee5a52495edd5fb742daea06806c1382f500af741ea55904acd51b7876979d1c5c7c5f79561c0ffb457cbdcca932bb5ca4e63ebfd00342aabc26352c9599b515a63f29d5a2bd3dc2a123b43cb9186535f6443d405d5a63511664cea1abe39a8b52dde3be600783b825b82060d9709ee8f686569092899d0602882071dc901987903f869639ae2c3f7859c459482f1cd8fbf7c7de4985af4e748ea057766cae63f93e71ba01808e3cf3e2d828639a2037f2eb0bacb829079d660e547df1cabe42c17ad82df2b6d89e1656cc89b5c080c5ed75a243acbac7573dc3c051b55ecfb0b510376da8ff912f2ce45eea541bc918488c59819ef791aa46e0e38d1481b6afbeeffd28a1afbffb484d926c3a58ba686047bbed7f985da7ea986b78275bf6b4aa7f95341769cad1401cf3640baa28fe8a58bfc267c0ba4f29da551233237e3fa112f25fbf1c25cbeb780c53b93bfd401a40d63a932dc5022bc01a922504e6c420b5f2bf9ad58e8810f4c606ef9770790351a0ea33d9846b52749e8c5b9ef4d53bafce397f097618a900d1320a7e9af180ae19da9e62f4c91d1b9af4b59a288c085c97ca2a44134e75db8d567b1a61043945830b22a21ab0741e235c11c83e0bbf7d9bc2508cc9b4a4d7a51b7e416ad9fa5239ddbc5d3293c40c488c1e459c8629e83f3602ba558bf005046cf7b11d73cdcefce0bb34eee4827e07c0f89a1a2e3a6c8d804e6f85e27d40700ca8a7aa4b3646949ae7883b9f15808e2ecd04aa8ec64b855eec926ea747c0a72f14e1c52a6f7f1a245cc19b346a6eb1eaf3d11712f5b970465d4d7ad72d0ab88739f60504f303f9522f5bfe9d0c1dbfaef8c65c775842b7b6499a6b56cea60ad8580b3ac4e1b892fab2604a05861fbb31d9fbf4e1fff7c1c9170ede854796eb498d04b1a2617c4da032970c7075eb3c3aff41f75cefd756fbb79c447e7d3033e8f688242e0b7a8ef074534066e5b480434d440317caf533878b6a45c9fcaf7a97f08c178f22beb584ccd1e264f86e08af127d7ffe4d8edffcb6c27a0770a54378c0bd65ccbc434fb6af012b2cb53c93be67056b0ca5b0f30cfa9018b91f6507db810db8b719c1b8196579d2c6a444b170887c66714e2fb5467b7bd6c97da777c7afa12e9a721efbfa963e431fb32d9a1f14a98eb87c6bcc7503119dd705bf6c52080229b4e2a025f87675cd290beda2b770c7f152cce2f8b1d9cae306737a11cb3b5a721fe9764bc269877f243e71cd9762d95dfe07dffb8664e470185bf43033fa5eb5b9d313dded82be20a4ddece8c4209d3b36b8452d196c4dc733bac4bd4b2304271c0c0e315e93722c2c49928546e15910ce13c41cd0c50cdb3e104ce94d06417436a1f548b39a340d3b5e11c62f8b1eb7be2ba5eee8879ec6bf9d2bf4386c0a70deebf03500c6f99c54f0804cd641c159035f947708fa625dfb1a66a3be8d9d8864453b662d667db512e11df6ed6e2c27f1259c8b865c492bf483cf9d1aff6946e2954899a55853acdb1a08f5ad23a5a4b8761c840a4d5660042f16d795de70850ff19f2d24c5f956007291bfb62e0f41f309c84768b036de3ad9764cbf1010939fdb7349ce1bdebdaef6c0db2278a3010205cabb6e4587c5b45b569261bdee0e41ee0056a25a4fae5e4341d2f744cd29d915a806255bd0e584ab2999e75fc63a5a71b31e0f00824e79eff4befd42f1033e84169b25616e727b8cb26c7ff49207e9bc4c231fb8d81c53c746586c393eee067b083f131d5a9076d56e47cdd97c0b809c2ae6c46647419a183a22abf0edfaeb144c7d5bda829665b8f7985176ed985b923d69ffe74a4976aab0eb1d9236ec4b8847ce4d3288134c28a71b7674c8c2078d7b8b439a56e661b11b3a4d59ff2a98d8df1c7eee6162fbd6c397726d6ce068d4bc80262070393e1e19f57a2000cb24a6dbe436f9305adad1c71bed6181f1701497450f09588cf83fb577434e853e1919e4f94a85dad0f8223a29731a718114facaa5ff06aaa75c965da94d428563215e3ff7e88543939cad3fa9d68f7789af59dc00ac915cb570ed1e19220f5311f0d61997c18cb6f6d119c7a3a30bd16d3339ba75f196465f27f23d039f26d01ff545fcbbb9e2f9fe189e15eb86ee8814c7dc245e850a192a67e2fb30d93251a67893a6a604644eaebc33f0ef3572e2967afdb196be635df715297688ab95fe767d8adadedd1e526d0c459df38dad7c15fb87b96212573fa1727ba9ec0b392dd23f40233669cea465aa3d6d1f6c794a6168823f1d2c6324101cbccc05e74d721115738ec1eed85f9e1db1a1a86b560b2c4973e3837e3febaa0cea22e52418a73e161aa9fbbf7960e870dd323de52149ffc534b8b20532732d4270da9b2f8337559e98979b5e2fb83d8333d74c8d65082069af52359f85d6b43bbc9f50dcb31e39982a532f094299851a0125e434c4c6f7711f02887b022eb17d3f2ca4049b9416ed9de4c2163d6d65c9b392902b1ca2b8e5058acb0c349f7b0b75a95ea8bc25790180c09bcbcde8691b21f8792917c691077cc605f31bbfcf3627a96ab08f5e15088554b0bf462745980905eec414a38d62b0bbbf7b5505e5992ff670e6ae9cbf2a63a029c2e7362ddae3da4e08a85f3a960dd70d6d88c48e120ef009d172aedb6f60de80c781f33d3b0b88ca73857b6db1a0d156e734a2c3c8547c3462f22ac8aba018ac4fe4589c95c1469b67d592904f1effc1e0cabfab1f4cf2873c11068c553b2fa0b832c8efac20be1ca0964df993dfd18f34c2ccf832bf12b6dba16a419fe192f95f6825aaf4a29cf4345d9268882341c3ad1c5e4f572925fcfc7d7b2b5c53e9de81c0744878cd3814b82e1533af0a1e8c3475843b6c72235deccd1891a958e77c8c9939cfd43321c21ffe8f89778b88c41dfa3fd130c580dd06e6ef13dc49d484257fd42ea32744eea59876350bc23f04ea6a4fe1a92be297c08bf412c1af5c3588a81fc37c223b409270a2933dab993e0bdd8a843e3510c9250e19d038815eed4bfcf029c9f7e8e843cbd12ccbe318cfcc4e2d695780628b51c23d271cb12dbbad01a7678810ad2ebc379c9cc32b3728bd9c08fd242bcfa0ef3abd1c92c3fef1568b2d4539ecc5fe3dff83a16c7c70e5419e7ac998e86d92510e06431ffeb72af0eafbbacb32eb8d255d5e922bcd7febac4886b15cfc075e1ba8d6e891fcbdb7030ae8d1021a9cfe746d32cce9bf65e3b66087ffc615224ef8917d905f7be964bf96ecb4de8c0d533f359d37731bbaa06415b4ce8959bcded51a0f456d9cc16c2ccbf898902fb38753339a3367af3bd45ae2efc3b456a79533c90cb5bf54b13af8eaf8f1197001d6acc542acaef8d8f104141fdf0101afde9a8bdb6c65afdb78d4b11cb1f627bb19425631f440ebe44f3d299d8f0cb7773479d05c685d848eac07834fe693eb9537df199d0374150c351d28c96228fdb0dda1ff31c1c2b3845c302bedbcb272184c61803c8caf46979c41075be45fe1776da732412cb9ef139ee3cbb005547b74dcc316490721b0c419588c069bc8986df50530949a755aa99f33a349b74466ae33fc687bd6e2d4ad89da101820a0549036c523fef0e72b00677bdd84e29f32487facf6f9ba6781b413002acdb7df5e7d2c6ab2cfcb7f2e62ea375c19b987a95f429bb61bafbadf62e4e3d5d716d8504de744945be3c6ee9531f43c21da7d7f75d43e611549b972dccdded9c313701d7a3c8af6f403ebc615dad02f6c67ba7a0997aabad6470a5b34e58fe3233c7064f13906d3333170a7674c19349fbd9c07001abc0df53f336d846a9ad6bf2a378b38e129482a0cc85c83a9b17d2a6ac3d2f893125211435d0cbd1ba7a64add003e655eca2b4c975b6c2f64ab0348b0ade7b8d86a89743afd6707e71691ded7e006e552b9a7f42abf7217920863a62c79bf96f5b9854d19d51b020dbbc2a99d240edcc3e2fe8da60ddd800d37e14fa805e1d1ef3e67827d3f341f12193a6ee64dbfed7b5ed62a08ec06dbe9dfc7aace65c3eba7b32fedb9e797c639925ee3d86da52877a8197890eeaed92f36b22cc8983470e18f744643058aa3a5e378a91ec733653496d7c67eceec7066c82b0e2707b19c04b2f0bb7e4d3631823532a6a90ed870057e34a15a5e81e92866cb938e15e2860db246b698f0fa20ca0acf4f561a87a56dd3bfa5a4b8761c840a4d5660042f16d795de70850ff19f2d24c5f956007291bfb62eba56cf9c6ad9aff5b2f19a202285990a8fb058971f2884aaa4c97af70dd8dfbd1da84ee916dd45ccbbe1726a572af48e41b94b1c92c7c7371a8f99a018070eaaa5a4b8761c840a4d5660042f16d795de70850ff19f2d24c5f956007291bfb62erootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootdpdk-19.11.4-150300.16.1.src.rpmdpdk-any-examplesdpdk-examplesdpdk-examples(aarch-64)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@     /bin/bash/usr/bin/envlibc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.17)(64bit)librt.so.1()(64bit)librt.so.1(GLIBC_2.17)(64bit)librte_acl.so.20.0()(64bit)librte_acl.so.20.0(DPDK_20.0)(64bit)librte_bbdev.so.0.200()(64bit)librte_bbdev.so.0.200(EXPERIMENTAL)(64bit)librte_cfgfile.so.20.0()(64bit)librte_cfgfile.so.20.0(DPDK_20.0)(64bit)librte_cmdline.so.20.0()(64bit)librte_cmdline.so.20.0(DPDK_20.0)(64bit)librte_cryptodev.so.20.0()(64bit)librte_cryptodev.so.20.0(DPDK_20.0)(64bit)librte_cryptodev.so.20.0(EXPERIMENTAL)(64bit)librte_eal.so.20.0()(64bit)librte_eal.so.20.0(DPDK_20.0)(64bit)librte_ethdev.so.20.0()(64bit)librte_ethdev.so.20.0(DPDK_20.0)(64bit)librte_ethdev.so.20.0(EXPERIMENTAL)(64bit)librte_eventdev.so.20.0()(64bit)librte_eventdev.so.20.0(DPDK_20.0)(64bit)librte_flow_classify.so.0.200()(64bit)librte_flow_classify.so.0.200(EXPERIMENTAL)(64bit)librte_hash.so.20.0()(64bit)librte_hash.so.20.0(DPDK_20.0)(64bit)librte_ip_frag.so.20.0()(64bit)librte_ip_frag.so.20.0(DPDK_20.0)(64bit)librte_ipsec.so.0.200()(64bit)librte_ipsec.so.0.200(EXPERIMENTAL)(64bit)librte_jobstats.so.20.0()(64bit)librte_jobstats.so.20.0(DPDK_20.0)(64bit)librte_kni.so.20.0()(64bit)librte_kni.so.20.0(DPDK_20.0)(64bit)librte_kni.so.20.0(EXPERIMENTAL)(64bit)librte_lpm.so.20.0()(64bit)librte_lpm.so.20.0(DPDK_20.0)(64bit)librte_mbuf.so.20.0()(64bit)librte_mbuf.so.20.0(DPDK_20.0)(64bit)librte_mempool.so.20.0()(64bit)librte_mempool.so.20.0(DPDK_20.0)(64bit)librte_meter.so.20.0()(64bit)librte_meter.so.20.0(DPDK_20.0)(64bit)librte_metrics.so.20.0()(64bit)librte_metrics.so.20.0(DPDK_20.0)(64bit)librte_net.so.20.0()(64bit)librte_net.so.20.0(DPDK_20.0)(64bit)librte_pci.so.20.0()(64bit)librte_pci.so.20.0(DPDK_20.0)(64bit)librte_pipeline.so.20.0()(64bit)librte_pipeline.so.20.0(DPDK_20.0)(64bit)librte_pipeline.so.20.0(EXPERIMENTAL)(64bit)librte_pmd_bnxt.so.20.0()(64bit)librte_pmd_bnxt.so.20.0(DPDK_20.0)(64bit)librte_pmd_bond.so.20.0()(64bit)librte_pmd_bond.so.20.0(DPDK_20.0)(64bit)librte_pmd_crypto_scheduler.so.20.0()(64bit)librte_pmd_crypto_scheduler.so.20.0(DPDK_20.0)(64bit)librte_pmd_i40e.so.20.0()(64bit)librte_pmd_i40e.so.20.0(DPDK_20.0)(64bit)librte_pmd_ixgbe.so.20.0()(64bit)librte_pmd_ixgbe.so.20.0(DPDK_20.0)(64bit)librte_port.so.20.0()(64bit)librte_port.so.20.0(DPDK_20.0)(64bit)librte_power.so.20.0()(64bit)librte_power.so.20.0(DPDK_20.0)(64bit)librte_power.so.20.0(EXPERIMENTAL)(64bit)librte_rawdev.so.20.0()(64bit)librte_rawdev.so.20.0(DPDK_20.0)(64bit)librte_reorder.so.20.0()(64bit)librte_reorder.so.20.0(DPDK_20.0)(64bit)librte_ring.so.20.0()(64bit)librte_ring.so.20.0(DPDK_20.0)(64bit)librte_sched.so.20.0()(64bit)librte_sched.so.20.0(DPDK_20.0)(64bit)librte_security.so.20.0()(64bit)librte_security.so.20.0(DPDK_20.0)(64bit)librte_security.so.20.0(EXPERIMENTAL)(64bit)librte_table.so.20.0()(64bit)librte_table.so.20.0(DPDK_20.0)(64bit)librte_timer.so.20.0()(64bit)librte_timer.so.20.0(DPDK_20.0)(64bit)librte_vhost.so.20.0()(64bit)librte_vhost.so.20.0(DPDK_20.0)(64bit)librte_vhost.so.20.0(EXPERIMENTAL)(64bit)libvirt.so.0()(64bit)libvirt.so.0(LIBVIRT_0.0.3)(64bit)libvirt.so.0(LIBVIRT_0.1.0)(64bit)libvirt.so.0(LIBVIRT_0.1.4)(64bit)libvirt.so.0(LIBVIRT_0.7.3)(64bit)libvirt.so.0(LIBVIRT_0.8.5)(64bit)libvirt.so.0(LIBVIRT_0.9.13)(64bit)libvirt.so.0(LIBVIRT_0.9.3)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0.4-14.0-15.2-1dpdk-any-examples4.14.3c@bk@bj_s!_i@_2@^@^l@^\@]@]@]\@\Y@\o@\I[Ѱ@[[['ZZ@ZZZH@Z\ZTZ@X6@W= SLES15 It needs rdma-core >= v16.- Removed 0002-kni-fix-build-on-SLE12-SP3.patch since no longer referenced in .spec files - Added 0002-dpdk-eal-ppc-rte_smp_mb.patch to fix an issue on ppc64le platforms with v18.02 - Updated to version 18.02; some of the changes include: * Added function to allow releasing internal EAL resources on exit * Added igb, ixgbe and i40e ethernet driver to support RSS with flow API * Updated i40e driver to support PPPoE/PPPoL2TP * Added MAC loopback support for i40e * Added support of run time determination of number of queues per i40e VF * Updated mlx5 driver * Updated mlx4 driver * Added NVGRE and UDP tunnels support in Solarflare network PMD * Added AVF (Adaptive Virtual Function) net PMD * Added feature supports for live migration from vhost-net to vhost-user * Updated the AESNI-MB PMD * Updated the DPAA_SEC crypto driver to support rte_security * Added Wireless Base Band Device (bbdev) abstraction * Added New eventdev Ordered Packet Distribution Library (OPDL) PMD * Added new pipeline use case for dpdk-test-eventdev application * Updated Eventdev sample application to support event devices based on capability * Added Rawdev, a generic device support library * Added new multi-process communication channel * Added GRO support for VxLAN-tunneled packets * Increased default Rx and Tx ring size in sample applications * Added new DPDK build system using the tools “meson” and “ninja” [EXPERIMENTAL]- The vm_power example does not work for ppc64le since it uses the IXGBE PMD driver which is not available for that platform(bsc#1082154): * Disable CONFIG_RTE_LIBRTE_POWER for the sample application; * Disable CONFIG_RTE_LIBRTE_IXGBE_PMD for the actual PMD driver;- Upgraded to latest stable release 17.11.1 (LTS): some of the fixes include: * location changes of the GPL and LGPL licenses; * net/mlx4: - fix drop flow resources leak * net/bnxt: - double increment of idx during Tx ring alloc - group info usage - check for ether type - size of Tx ring in HW - number of pools for RSS - return code in MAC address set - link speed setting with autoneg off * net/nfp: - MTU settings - jumbo settings - CRC strip check behaviour * net/sfc: - multicast address list copy memory leak - DMA memory leak after kvarg processing failure - fix label name to be consistent * net/i40e: - VLAN offload setting issue - FDIR input set conflict - FDIR rule confiliction issue - setting MAC address of VF - flow director Rx resource defect - warn when writing global registers - multiple driver support - interrupt conflict with multi-driver - Rx interrupt - check multi-driver option parsing - flow director filter * net/qede: - enable LRO over tunnels - reject config with no Rx queue - check tunnel L3 header - tunnel header size in Tx BD configuration - VF LRO tunnel configuration * net/mlx5: - Tx checksum offloads - un-supported RSS hash fields use - device operation type - pedantic compilation - fix pedantic compilation - flow item validation - flow RSS configuration - UAR remapping on non configured queues - secondary process verification - port stop by verify flows are still present - flow priority on queue action- Enable(disabled by default) MLX4 and MLX5 pmd(fate#322609)- Upgraded to latest major 17.11(fate#322609); some of the fixes include: * Extended port_id range from uint8_t to uint16_t * Added a new driver for Marvell Armada 7k/8k devices * Updated mlx4 driver * Updated mlx5 driver * Added SoftNIC PMD * Added support for NXP DPAA Devices * Updated support for Cavium OCTEONTX Device * Added PF support to the Netronome NFP PMD * Updated bnxt PMD * Added bus agnostic functions to cryptodev for PMD initialization * Updated QAT crypto PMD * Updated the AESNI MB PMD * Updated the OpenSSL PMD * Added NXP DPAA SEC crypto PMD * Add new benchmarking mode to dpdk-test-crypto-perf application * Added IOMMU support to libvhost-user * Added the Generic Segmentation Offload Library * Added the Flow Classification Library - Removed 0002-kni-fix-build-on-SLE12-SP3.patch since patch merged upstream and available in 17.11- Added missing supported broadcom chipset family Broadcom NetXtreme II BCM57810- Upgraded to latest stable 17.08.1; some of the fixes include: * net/qede: disable per-VF Tx switching feature * revert "net/virtio: flush Rx queues on start" * various fixes for mlx5 PMD drivers * various fixes for bnxt PMD drivers * various fixes for i40e PMD drivers * various fixes for crypto PMD drivers * testpmd: fix for non-consecutive ports * ethdev: fix ABI version- Add missing libelf-devel dependency- Updated to 17.08(bsc#1050250, bsc#1046598, fate#322913, fate#322608) Some of the new features are listed below: * Increase minimum x86 ISA version to SSE4.2 * Added Fail-Safe PMD * Added support for generic flow API (rte_flow) on igb NICs * Added support for generic flow API (rte_flow) on enic * Added support for Chelsio T6 family of adapters * Added latency and performance improvements for cxgbe * Updated mlx5 driver * Added NXP DPAA2 Eventdev PMD * Added dpdk-test-eventdev test application * from 17.05: * Added mbuf raw free API * Added free Tx mbuf on demand API * Added VFIO hotplug support * Added PowerPC support for i40e and its vector PMD * Added VF max bandwidth setting in i40e * Added LiquidIO network PMD * Added support for NXP DPAA2 Network PMD * Added support for NXP DPAA2 - FSLMC bus * Added support for the Wind River Systems AVP PMD * Added vmxnet3 version 3 support * Added MTU feature support to Virtio and Vhost * Added event driven programming model library (rte_eventdev) * Added Software Eventdev PMD * Added Cavium OCTEONTX Eventdev PMD * Added NXP DPAA2 SEC crypto PMD * from 17.02: * Added generic EAL API for I/O device memory read/write operations * Added VF Daemon (VFD) for i40e. - EXPERIMENTAL * Added generic flow API (rte_flow) * Added APIs for MACsec offload support to the ixgbe PMD * Added Solarflare libefx-based network PMD. * Added support for Mellanox ConnectX-5 adapters (mlx5) * Added ARMv8 crypto PMD * Added crypto performance test application * more details can be found in http://dpdk.org/doc/guides/rel_notes/release_17_08.html http://dpdk.org/doc/guides/rel_notes/release_17_05.html http://dpdk.org/doc/guides/rel_notes/release_17_02.html [-0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch - 0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch - 0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch - 0005-kni-fix-build-with-gcc-7.1.patch - 0006-kni-fix-ethtool-build-with-kernel-4.11.patch - 0007-igb_uio-switch-to-new-irq-function-for-MSI-X.patch] - Use updated patch to enable HAVE_TRANS_START_HELPER for SLE12SP3(bsc#1031705). [+ 0002-kni-fix-build-on-SLE12-SP3.patch]- Enabled CONFIG_RTE_MAJOR_ABI: libs SONAME equal the DPDK release version- Split libs into a subpackage to provide multiple installable versions on same sytem- Do not use obsolete pci_enable_msix for() kernel > 4.8 [+0006-kni-fix-ethtool-build-with-kernel-4.11.patch, +0007-igb_uio-switch-to-new-irq-function-for-MSI-X.patch]- Updated to 16.11.2 which provide bug fixes as below(fate#321541): * mbuf: fix missing includes in exported header * eal: fix debug macro redefinition * net/nfp: fix packet/data length conversion * net/i40e: fix setup when bulk is disabled * pci: fix device registration on FreeBSD * net/i40e: ensure vector mode is not used with QinQ * nic_uio: fix device binding at boot * net/bnx2x: fix transmit queue free threshold * net/vmxnet3: fix queue size changes * kni: fix build with kernel 4.11 * kni: fix possible memory leak * kni: fix crash caused by freeing mempool * net/i40e: fix allocation check * net/virtio: fix crash when closing twice * net/ixgbevf: set xstats id values * net/i40e: fix hash input set on X722 * eal/linux: fix build with glibc 2.25 * net/i40e: fix incorrect packet index reference * net/thunderx: fix 32-bit build * net/thunderx: fix build on FreeBSD * net/thunderx: fix deadlock in Rx path * net/ixgbe: fix setting MTU on stopped device * vfio: fix secondary process start * net/virtio-user: fix address on 32-bit system * net/virtio: fix MSI-X for modern devices * net/virtio: fix link status always down * net/ixgbe: fix multi-queue mode check in SRIOV mode * net/i40e/base: fix potential out of bound array access * vhost: fix false sharing * net/thunderx: fix stats access out of bounds * net/virtio: disable LSC interrupt if MSIX not enabled * net/i40e: fix mbuf alloc failed counter * net: fix stripped VLAN flag for offload emulation * vfio: fix disabling INTx * net/igb: fix VF MAC address setting * net/igb: fix VF MAC address setting * net/ixgbe: fix VF Rx mode for allmulticast disabled * net/bonding: fix updating slave link status * net/virtio-user: fix overflow * net/i40e: fix TC bitmap of VEB * net/ixgbe/base: fix build error * net/ixgbe: fix Rx queue blocking issue * net/ixgbe: fix all queues drop setting of DCB * net/ixgbe: fix TC bandwidth setting more details can be found in http://dpdk.org/ml/archives/stable/2017-May/001809.html [- 0005-kni-fix-build-with-kernel-4.11.patch] - use default gcc which is now gcc7 (bsc#1042372) [+0005-kni-fix-build-with-gcc-7.1.patch]- Add upstream patch to fix building against linux kernel 4.11 [+0005-kni-fix-build-with-kernel-4.11.patch]- sync mailbox definitions with Linux PF driver(bsc#1035993) [+0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch]- Enable HAVE_TRANS_START_HELPER for SLE12SP3(bsc#1031705). [+0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch]- Fix dpdk KMP build fails(bsc#1031750) - enable igb_uio kernel module(fate#322394) - update kernel version for SLES12SP3 4.4.59 for bsc#1031705 [*0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch]- Enable HAVE_VF_VLAN_PROTO for SLE12SP3(bsc#1031705). [+0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch]- Disable dpdk-kmp package for ix86.- Upgrade to LTS release of 16.11 which contains fixes below(fate#321541): * app/test: fix symmetric session free in crypto perf tests * app/testpmd: fix check for invalid ports * app/testpmd: fix static build link ordering * crypto/aesni_gcm: fix IV size in capabilities * crypto/aesni_gcm: fix J0 padding bytes * crypto/aesni_mb: fix incorrect crypto session * crypto/openssl: fix extra bytes written at end of data * crypto/openssl: fix indentation in guide * crypto/qat: fix IV size in capabilities * crypto/qat: fix to avoid buffer overwrite in OOP case * cryptodev: fix crash on null dereference * cryptodev: fix loop in device query * devargs: reset driver name pointer on parsing failure * drivers/crypto: fix different auth/cipher keys * ethdev: check maximum number of queues for statistics * ethdev: fix extended statistics name index * ethdev: fix port data mismatched in multiple process model * ethdev: fix port lookup if none * ethdev: remove invalid function from version map * examples/ethtool: fix driver information * examples/ethtool: fix querying non-PCI devices * examples/ip_pipeline: fix coremask limitation * examples/ip_pipeline: fix parsing of pass-through pipeline * examples/l2fwd-crypto: fix overflow * examples/vhost: fix calculation of mbuf count * examples/vhost: fix lcore initialization * mempool: fix API documentation * mempool: fix stack handler dequeue * net/af_packet: fix fd use after free * net/bnx2x: fix Rx mode configuration * net/cxgbe/base: initialize variable before reading EEPROM * net/cxgbe: fix parenthesis on bitwise operation * net/ena: fix setting host attributes * net/enic: fix hardcoding of some flow director masks * net/enic: fix memory leak with oversized Tx packets * net/enic: remove unnecessary function parameter attributes * net/i40e: enable auto link update for 25G * net/i40e: fix Rx checksum flag * net/i40e: fix TC bandwidth definition * net/i40e: fix VF reset flow * net/i40e: fix checksum flag in x86 vector Rx * net/i40e: fix crash in close * net/i40e: fix deletion of all macvlan filters * net/i40e: fix ethertype filter on X722 * net/i40e: fix link update delay * net/i40e: fix logging for Tx free threshold check * net/i40e: fix segment number in reassemble process * net/i40e: fix wrong return value when handling PF message * net/i40e: fix xstats value mapping * net/i40evf: fix casting between structs * net/i40evf: fix reporting of imissed packets * net/ixgbe: fix blocked interrupts * net/ixgbe: fix received packets number for ARM * net/ixgbe: fix received packets number for ARM NEON * net/ixgbevf: fix max packet length * net/mlx5: fix RSS hash result for flows * net/mlx5: fix Rx packet validation and type * net/mlx5: fix Tx doorbell * net/mlx5: fix endianness in Tx completion queue * net/mlx5: fix inconsistent link status * net/mlx5: fix leak when starvation occurs * net/mlx5: fix link status query * net/mlx5: fix memory leak when parsing device params * net/mlx5: fix missing inline attributes * net/mlx5: fix updating total length of multi-packet send * net/mlx: fix IPv4 and IPv6 packet type * net/nfp: fix VLAN offload flags check * net/nfp: fix typo in Tx offload capabilities * net/pcap: fix timestamps in output pcap file * net/qede/base: fix FreeBSD build * net/qede: add vendor/device id info * net/qede: fix PF fastpath status block index * net/qede: fix filtering code * net/qede: fix function declaration * net/qede: fix per queue statisitics * net/qede: fix resource leak * net/vhost: fix socket file deleted on stop * net/vhost: fix unix socket not removed as closing * net/virtio-user: fix not properly reset device * net/virtio-user: fix wrongly get/set features * net/virtio: fix build without virtio-user * net/virtio: fix crash when number of virtio devices > 1 * net/virtio: fix multiple process support * net/virtio: fix performance regression due to TSO * net/virtio: fix rewriting LSC flag * net/virtio: fix wrong Rx/Tx method for secondary process * net/virtio: optimize header reset on any layout * net/virtio: store IO port info locally * net/virtio: store PCI operators pointer locally * net/vmxnet3: fix Rx deadlock * pci: fix check of mknod * pmdinfogen: fix endianness with cross-compilation * pmdinfogen: fix null dereference * sched: fix crash when freeing port * usertools: fix active interface detection when binding * vdev: fix detaching with alias * vfio: fix file descriptor leak in multi-process * vhost: allow many vhost-user ports * vhost: do not GSO when no header is present * vhost: fix dead loop in enqueue path * vhost: fix guest/host physical address mapping * vhost: fix long stall of negotiation * vhost: fix memory leak- Fix broken dpdk-pmd/* soft links(bsc#1026804).- Do not disable cryptodev as EXPREMENTAL tag has been removed. - Remove CONFIG_RTE_LIBRTE_MBUF_OFFLOAD as cryptodev is not depending on it anymore and its removed from the upstream.- Enable rte_kni kernel module for dpdk(fate#322394). [+preamble] - Build dpdk-thunderx only for aarch64- Update to version 16.11(fate#321541). Some of the new features are listed below: * Added software parser for packet type. * Improved offloads support in mbuf. * Added vhost-user dequeue zero copy support. * Added vhost-user indirect descriptors support. * Added vhost PMD xstats. * Added virtio NEON support for ARM. * Updated the ixgbe base driver. * Added APIs for VF management to the ixgbe PMD. * Updated the enic driver. * Added openssl PMD. * Added support for new gcc -march option. Detailed changes can be obtained from http://dpdk.org/doc/guides/rel_notes/release_16_11.html - Resolved fixes in the updated versions are : * enic: Fixed several flow director issues. * enic: Fixed inadvertent setting of L4 checksum ptype on ICMP packets. * enic: Fixed high driver overhead when servicing Rx queues beyond the first.- Added gcc-6 as default compiler for CRC/mtune & other optimizations. - Fix possible parallel installation of dpdk subpackages.- Add pre_checkin.sh to generate the dpdk-thunderx.spec file- Fixed paths using %{name} to have the dpdk.spec aligned with dpdk-thunderx.spec- Added back in all the architectures to keep .spec files aligned * Driving thunderx platform architectural dependency via the ExclusiveArch tag- Added support to build code for Thunderx platform(fate#321960). - Introduced new dpdk-thunderx.spec file: * Removed architectures not supporting Thunderx platform (e.g. x86) * Added dependency on gcc v5.0 for armv8a-crc- Update to version 16.07.2. Some of the fixes are listed below: * ethdev: prevent duplicate event callback * hash: fix bucket size usage * hash: fix unlimited cuckoo path * lpm: fix freeing memory * lpm: fix freeing unused sub-table on rule delete * mempool: fix leak if populate fails * mempool: fix search of maximum contiguous pages * pci: fix probing error if no driver found * net/bnx2x: fix maximum PF queues * net/bnxt: fix bit shift size * net/bnxt: fix crash when closing * net/enic: fix Rx queue index when not using Rx scatter * net/enic: fix crash on MTU update or Rx queue reconfigure * net/enic: fix crash with removed flow director filters * net/enic: fix max packet length check * net/enic: fix multi-queue Rx performance * net/enic: revert truncated packets counter fix * net/fm10k: fix VF Tx queue initialization * net/i40e: fix Rx hang when disable LLDP * net/ixgbe: fix VF registers * net/thunderx: fix Tx checksum handling * [The list of changes is rather long so please consult the following resources for the complete list of new features, bugfixes and other changes in this release: - http://dpdk.org/doc/guides-16.07/rel_notes/release_16_07.html#id2]- Update to version 16.07.1. Some of the fixes are listed below: * contigmem: zero all pages during mmap * crypto/null: fix key size increment value * hash: fix false zero signature key hit lookup * mem: fix crash on hugepage mapping error * mbuf: fix error handling on pool creation * net/e1000: fix returned number of available Rx descriptors * net/enic: fix freeing memory for descriptor ring * net/i40e: fix dropping packets with ethertype 0x88A8 * net/i40e: fix mbuf leak during Rx queue release * net/i40e: fix null pointer dereferences when using VMDq+RSS * net/ixgbe/base: fix possible corruption of shadow RAM * net/ixgbe: fix VF reset to apply to correct VF * net/virtio_user: fix error management during init * [The list of changes is rather long so please consult the following resources for the complete list of new features, bugfixes and other changes in this release: - http://dpdk.org/doc/guides-16.07/rel_notes/release_16_07.html#fixes-in-16-07-01-stable-release]- Drop code for generating our own linker script. * Commit 948fd64befc3 (" mk: replace the combined library with a linker script") added upstream support for building and installing a linker script so we drop our code from the spec file which generated a much larger and possibly broken linker script resulting to linking issues (boo#1002534)- Update to version 16.07. Some of the new features are listed below: * Removed the mempool cache memory if caching is not being used. * Added mempool external cache for non-EAL thread. * Changed the memory allocation scheme in the mempool library. * Added a new driver for Broadcom NetXtreme-C devices. * Added a new driver for ThunderX nicvf devices. * Added mailbox interrupt support for ixgbe and igb VFs. * Updated the ixgbe base driver. * Updated the i40e base driver. * Updated the enic driver. * Updated the mlx5 driver. * Added support for virtio on IBM POWER8. * Added support for Virtio in containers. * Added vhost-user client mode. * Added NSH packet recognition in i40e. * Added AES-CTR support to AESNI MB PMD. * Added AES counter mode support for Intel QuickAssist devices. * Added KASUMI SW PMD. * Added multi-writer support for RTE Hash with Intel TSX. * Improved IP Pipeline Application. * Added keepalive enhancements. * Added packet capture framework. * Added floating VEB support for i40e PF driver. * Added support for live migration of a VM with SRIOV VF. * [The list of changes is rather long so please consult the following resources for the complete list of new features, bugfixes and other changes in this release: - http://dpdk.org/doc/guides/rel_notes/release_16_07.html - http://dpdk.org/browse/dpdk/tree/doc/guides/rel_notes/release_16_07.rst - Or the doc/guides/rel_notes/release_16_07.rst file in the released tarball.] - Removed patches that are already avilable in dpdk-16.07 [ -0002-examples-ip_pipeline-fix-implicit-declaration-of-fun.patch - 0003-mk-fix-external-shared-library-dependencies-of-libraries.patch - 0004-54f9e32-vhost-handle-dirty-pages-logging-request.patch - 0005-d293dac-vhost-claim-support-of-guest-announce.patch - 0006-d639996-vhost-enable-log_shmfd-protocol-feature.patch - 0007-ixgbe-fix-VLAN-filter-missing-brackets.patch - 0008-app-testpmd-handle-SIGINT-and-SIGTERM.patch - 0009-bonding-copy-entire-config-structure-in-mode-4.patch - 0010-bonding-fix-active-slaves-with-no-primary.patch - 0011-bonding-do-not-ignore-multicast-in-mode-4.patch - 0012-bonding-do-not-activate-slave-twice.patch - 0013-bonding-fix-crash-when-no-slave-device.patch - 0014-bonding-fix-detach-of-bonded-device.patch - 0015-bonding-fix-detach-of-slave-devices.patch - 0016-eal-linux-support-built-in-kernel-modules.patch - 0017-examples-l3fwd-handle-SIGINT-and-SIGTERM.patch - 0018-fm10k-fix-VLAN-flag-in-scattered-Rx.patch - 0019-i40e-base-fix-driver-load-failure.patch - 0020-i40e-base-fix-missing-check-for-stopped-admin-queue.patch - 0021-i40e-fix-inverted-check-for-no-refcount.patch - 0022-i40e-fix-overflow.patch - 0023-i40e-fix-VLAN-filtering.patch - 0024-mempool-fix-leak-when-creation-fails.patch - 0025-pcap-fix-captured-frame-length.patch - 0026-port-fix-crash-for-ethdev-writer-nodrop.patch - 0027-port-fix-crash-for-ring-writer-nodrop.patch - 0028-tools-fix-unbinding-failure-handling.patch - 0029-tools-support-Python-3-in-bind-script.patch - 0030-tools-support-binding-to-built-in-kernel-modules.patch - 0031-vhost-fix-leak-of-fds-and-mmaps.patch - 0032-virtio-fix-crash-in-statistics-functions.patch - 0033-virtio-fix-descriptors-pointing-to-the-same-buffer.patch - 0034-virtio-fix-restart.patch - 0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi.patch - 0036-examples-fix-build-dependencies.patch - 0037-examples-ethtool-fix-build.patch - 0099-mk-fix-gcc-5-version-on-suse.patch - 0100-kni-fix-build-with-gcc-6.patch - 0101-ixgbe-fix-uninitialized-warning.patch - 0102-ixgbe-fix-constant-sign-in-left-shift-operator.patch - 0103-e1000-base-Add-missing-braces-to-the-if-statements.patch - 0104-igb-fix-constant-sign-in-left-shift-operator.patch - 0105-e1000-fix-missing-link-interrupt-check-brackets.patch - 0106-app-test-fix-missing-brackets.patch - 0107-examples-ip_pipeline-use-unsigned-constants-for-left.patch ] - Created soft link for dpdk_proc_info and dpdk_nic_bind(from dpdk-procinfo, dpdk-devbind) to keep compatibility. - Added a new binary dpdk-pdump dpdk-procinfo- Add _constraints file to force build dpdk with sse3 enabled x86 machine(bsc#993462). - Enable compilation for ppc64le with the help of Rüdiger(ro@suse.de). - Enable example package for aarch64 using Rüdiger(ro@suse.de) changes. - Do not enable PMD_RING on ppc64le (missing rte_eth_from_rings). - Disable examples that need LPM which is disabled on non-x86. [+0036-examples-fix-build-dependencies.patch, +0037-examples-ethtool-fix-build.patch, +_constraints]- Added support for aarch64 compilation. [+0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi.patch] - Disabled aarch64 dpdk-examples package for the time being as it contains lots of Intel specific code. - Added proper "Group" field for the subpackages .- Add upstream patches to fix building with gcc >= 6 * 0100-kni-fix-build-with-gcc-6.patch * 0101-ixgbe-fix-uninitialized-warning.patch * 0102-ixgbe-fix-constant-sign-in-left-shift-operator.patch * 0103-e1000-base-Add-missing-braces-to-the-if-statements.patch * 0104-igb-fix-constant-sign-in-left-shift-operator.patch * 0105-e1000-fix-missing-link-interrupt-check-brackets.patch * 0106-app-test-fix-missing-brackets.patch * 0107-examples-ip_pipeline-use-unsigned-constants-for-left.patch- Removed unwanted files(bsc#984437).- Added missing GPL-2.0 and LGPL-2.1 licenses.- Update tarball URL.- Applied all the fixes recommended by upstream for v2.2 stable release(bsc#981996). [+0008-app-testpmd-handle-SIGINT-and-SIGTERM.patch, +0009-bonding-copy-entire-config-structure-in-mode-4.patch, +0010-bonding-fix-active-slaves-with-no-primary.patch, +0011-bonding-do-not-ignore-multicast-in-mode-4.patch, +0012-bonding-do-not-activate-slave-twice.patch, +0013-bonding-fix-crash-when-no-slave-device.patch, +0014-bonding-fix-detach-of-bonded-device.patch, +0015-bonding-fix-detach-of-slave-devices.patch, +0016-eal-linux-support-built-in-kernel-modules.patch, +0017-examples-l3fwd-handle-SIGINT-and-SIGTERM.patch, +0018-fm10k-fix-VLAN-flag-in-scattered-Rx.patch, +0019-i40e-base-fix-driver-load-failure.patch, +0020-i40e-base-fix-missing-check-for-stopped-admin-queue.patch, +0021-i40e-fix-inverted-check-for-no-refcount.patch, +0022-i40e-fix-overflow.patch, +0023-i40e-fix-VLAN-filtering.patch, +0024-mempool-fix-leak-when-creation-fails.patch, +0025-pcap-fix-captured-frame-length.patch, +0026-port-fix-crash-for-ethdev-writer-nodrop.patch, +0027-port-fix-crash-for-ring-writer-nodrop.patch, +0028-tools-fix-unbinding-failure-handling.patch, +0029-tools-support-Python-3-in-bind-script.patch, +0030-tools-support-binding-to-built-in-kernel-modules.patch, +0031-vhost-fix-leak-of-fds-and-mmaps.patch, +0032-virtio-fix-crash-in-statistics-functions.patch, +0033-virtio-fix-descriptors-pointing-to-the-same-buffer.patch, +0034-virtio-fix-restart.patch]- Use fdupes to manage duplicate files- Create DPDK packages for 32 bit x86(bsc#977639).- Add upstream patch for the ixgbe driver * 0007-ixgbe-fix-VLAN-filter-missing-brackets.patch: Fix VLAN filtering logic by adding the missing brackets in the 'if' statement.- DPDK is most common vhost-user backend, Adding upstream patches to help qemu vm live migration with vhost-user (fate#320713). [+ 0004-54f9e32-vhost-handle-dirty-pages-logging-request.patch + 0005-d293dac-vhost-claim-support-of-guest-announce.patch + 0006-d639996-vhost-enable-log_shmfd-protocol-feature.patch]- Move the combined library back to the devel package (bsc#975123) Ever since we dropped the CONFIG_RTE_BUILD_COMBINE_LIBS=y option, the libdpdk.so is no longer a shared object but rather a linker script generated by the spec file. This means that it is only used during linking and the linker will add the individual DPDK libraries to the DT_NEEDED tag on the dependent binaries.- Fix shared linking against libdpdk.so (bsc#975123) * Restore the 0003-mk-fix-external-shared-library-dependencies-of-libraries.patch patch which sets the correct dependencies for the shared libraries. * Drop CONFIG_RTE_BUILD_COMBINE_LIBS since a custom linker script is used to create and install a more lightweight version of libdpdk.so. * Include the combined libdpdk.so library to the regular package since it is also necessary during runtime.- Removed unwnated patch and reformated patch file names(bsc#974903). [- dpdk-2.2-dtneeded.patch, - dpdk-2.2-examples.patch, - enic-pun-fix.patch, - dpdk-2.2-warningflags.patch, + 0001-enic-fix-Type-punning-and-strict-aliasing-warning.patch + 0002-examples-ip_pipeline-fix-implicit-declaration-of-fun.patch] - Added CONFIG_RTE_BUILD_COMBINE_LIBS flags to club all all *.so into one library- Intial version 2.2.0(fate#319169)  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDrFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~r     rr19.11.419.11.4-150300.16.119.11.4-150300.16.1      !!!!!!"""""""""""""""""""###$$%%&&&%'''''''%($)))))$*****$+++,,,---../01110222////////////////////.3333.44444555666666777777777777788899:::9;;;;;;;9<===>>>????????@@@AAABBBBBCCCCCCCDDDDEEEEEEFFFFFFFEEEEEEEEEEEGGGHHHdpdk_example_basicfwddpdk_example_bbdevdpdk_example_bond_appdpdk_example_cmdlinedpdk_example_eventdev_pipelinedpdk_example_fips_validationdpdk_example_flowdpdk_example_flow_classifydpdk_example_helloworlddpdk_example_ip_pipelinedpdk_example_ipsec-secgwdpdk_example_ipv4_multicastdpdk_example_knidpdk_example_l2fwddpdk_example_l2fwd-cryptodpdk_example_l2fwd-eventdpdk_example_l2fwd-jobstatsdpdk_example_l2fwd-keepalivedpdk_example_l3fwddpdk_example_l3fwd-acldpdk_example_l3fwd-powerdpdk_example_link_status_interruptdpdk_example_ntb_fwddpdk_example_packet_orderingdpdk_example_qos_meterdpdk_example_qos_scheddpdk_example_rxtx_callbacksdpdk_example_service_coresdpdk_example_tep_terminationdpdk_example_timerdpdk_example_vdpadpdk_example_vhost-blkdpdk_example_vhost-cryptodpdk_example_vhost-switchdpdk_example_vm_power_mgrdpdk_example_vmdq_appdpdk_example_vmdq_dcb_appexamplesMakefilebbdev_appMakefilemain.cmeson.buildbondMakefilemain.cmain.hmeson.buildbpfREADMEdummy.ct1.ct2.ct3.ccmdlineMakefilecommands.ccommands.hmain.cmeson.buildparse_obj_list.cparse_obj_list.hdistributorMakefilemain.cmeson.buildethtoolMakefileethtool-appMakefileethapp.cethapp.hmain.clibMakefilerte_ethtool.crte_ethtool.hmeson.buildeventdev_pipelineMakefilemain.cmeson.buildpipeline_common.hpipeline_worker_generic.cpipeline_worker_tx.cfips_validationMakefilefips_dev_self_test.cfips_dev_self_test.hfips_validation.cfips_validation.hfips_validation_aes.cfips_validation_ccm.cfips_validation_cmac.cfips_validation_gcm.cfips_validation_hmac.cfips_validation_sha.cfips_validation_tdes.cmain.cmeson.buildflow_classifyMakefileflow_classify.cipv4_rules_file.txtmeson.buildflow_filteringMakefileflow_blocks.cmain.cmeson.buildhelloworldMakefilemain.cmeson.buildioatMakefileioatfwd.cmeson.buildip_fragmentationMakefilemain.cmeson.buildip_pipelineMakefileaction.caction.hcli.ccli.hcommon.hconn.cconn.hcryptodev.ccryptodev.hexamplesfirewall.cliflow.cliflow_crypto.clikni.clil2fwd.cliroute.cliroute_ecmp.clirss.clitap.clikni.ckni.hlink.clink.hmain.cmempool.cmempool.hmeson.buildparser.cparser.hpipeline.cpipeline.hswq.cswq.htap.ctap.hthread.cthread.htmgr.ctmgr.hip_reassemblyMakefilemain.cmeson.buildipsec-secgwMakefileep0.cfgep1.cfgesp.cesp.hipip.hipsec-secgw.cipsec.cipsec.hipsec_process.cmeson.buildparser.cparser.hrt.csa.csp4.csp6.ctestbypass_defs.shcommon_defs.shcommon_defs_secgw.shdata_rxtx.shlinux_test4.shlinux_test6.shpkttest.pypkttest.shrun_test.shtrs_3descbc_sha1_common_defs.shtrs_3descbc_sha1_defs.shtrs_3descbc_sha1_esn_atom_defs.shtrs_3descbc_sha1_esn_defs.shtrs_3descbc_sha1_old_defs.shtrs_aescbc_sha1_common_defs.shtrs_aescbc_sha1_defs.shtrs_aescbc_sha1_esn_atom_defs.shtrs_aescbc_sha1_esn_defs.shtrs_aescbc_sha1_old_defs.shtrs_aesctr_sha1_common_defs.shtrs_aesctr_sha1_defs.shtrs_aesctr_sha1_esn_atom_defs.shtrs_aesctr_sha1_esn_defs.shtrs_aesctr_sha1_old_defs.shtrs_aesgcm_common_defs.shtrs_aesgcm_defs.shtrs_aesgcm_esn_atom_defs.shtrs_aesgcm_esn_defs.shtrs_aesgcm_inline_crypto_defs.shtrs_aesgcm_inline_crypto_fallback_defs.shtrs_aesgcm_inline_crypto_old_defs.shtrs_aesgcm_old_defs.shtrs_ipv6opts.pytun_3descbc_sha1_common_defs.shtun_3descbc_sha1_defs.shtun_3descbc_sha1_esn_atom_defs.shtun_3descbc_sha1_esn_defs.shtun_3descbc_sha1_old_defs.shtun_aescbc_sha1_common_defs.shtun_aescbc_sha1_defs.shtun_aescbc_sha1_esn_atom_defs.shtun_aescbc_sha1_esn_defs.shtun_aescbc_sha1_old_defs.shtun_aesctr_sha1_common_defs.shtun_aesctr_sha1_defs.shtun_aesctr_sha1_esn_atom_defs.shtun_aesctr_sha1_esn_defs.shtun_aesctr_sha1_old_defs.shtun_aesgcm_common_defs.shtun_aesgcm_defs.shtun_aesgcm_esn_atom_defs.shtun_aesgcm_esn_defs.shtun_aesgcm_inline_crypto_defs.shtun_aesgcm_inline_crypto_fallback_defs.shtun_aesgcm_inline_crypto_old_defs.shtun_aesgcm_old_defs.shtun_null_header_reconstruct.pyipv4_multicastMakefilemain.cmeson.buildkniMakefilemain.cmeson.buildl2fwdl2fwd-catMakefilecat.ccat.hl2fwd-cat.cmeson.buildl2fwd-cryptoMakefilemain.cmeson.buildl2fwd-eventMakefilel2fwd_common.cl2fwd_common.hl2fwd_event.cl2fwd_event.hl2fwd_event_generic.cl2fwd_event_internal_port.cl2fwd_poll.cl2fwd_poll.hmain.cmeson.buildl2fwd-jobstatsMakefilemain.cmeson.buildl2fwd-keepaliveMakefileka-agentMakefilemain.cmain.cmeson.buildshm.cshm.hMakefilemain.cmeson.buildl3fwdl3fwd-aclMakefilemain.cmeson.buildl3fwd-powerMakefilemain.cmain.hmeson.buildperf_core.cperf_core.hMakefilel3fwd.hl3fwd_altivec.hl3fwd_common.hl3fwd_em.cl3fwd_em.hl3fwd_em_hlm.hl3fwd_em_hlm_neon.hl3fwd_em_hlm_sse.hl3fwd_em_sequential.hl3fwd_lpm.cl3fwd_lpm.hl3fwd_lpm_altivec.hl3fwd_lpm_neon.hl3fwd_lpm_sse.hl3fwd_neon.hl3fwd_sse.hmain.cmeson.buildlink_status_interruptMakefilemain.cmeson.buildmeson.buildmulti_processMakefileclient_server_mpMakefilemp_clientMakefileclient.cmeson.buildmp_serverMakefileargs.cargs.hinit.cinit.hmain.cmeson.buildsharedcommon.hhotplug_mpMakefilecommands.ccommands.hmain.cmeson.buildsimple_mpMakefilemain.cmeson.buildmp_commands.cmp_commands.hsymmetric_mpMakefilemain.cmeson.buildntbMakefilemeson.buildntb_fwd.cpacket_orderingMakefilemain.cmeson.buildperformance-threadMakefilecommonarcharm64ctx.cctx.hstack.hx86ctx.cctx.hstack.hcommon.mklthread.clthread.hlthread_api.hlthread_cond.clthread_cond.hlthread_diag.clthread_diag.hlthread_diag_api.hlthread_int.hlthread_mutex.clthread_mutex.hlthread_objcache.hlthread_pool.hlthread_queue.hlthread_sched.clthread_sched.hlthread_timer.hlthread_tls.clthread_tls.hl3fwd-threadMakefilemain.cmeson.buildtest.shpthread_shimMakefilemain.cmeson.buildpthread_shim.cpthread_shim.hptpclientMakefilemeson.buildptpclient.cqos_meterMakefilemain.cmain.hmeson.buildrte_policer.crte_policer.hqos_schedMakefileapp_thread.cargs.ccfg_file.ccfg_file.hcmdline.cinit.cmain.cmain.hmeson.buildprofile.cfgprofile_ov.cfgstats.crxtx_callbacksMakefilemain.cmeson.buildserver_node_efdMakefilenodeMakefilemeson.buildnode.cserverMakefileargs.cargs.hinit.cinit.hmain.cmeson.buildsharedcommon.hservice_coresMakefilemain.cmeson.buildskeletonMakefilebasicfwd.cmeson.buildtep_terminationMakefilemain.cmain.hmeson.buildvxlan.cvxlan.hvxlan_setup.cvxlan_setup.htimerMakefilemain.cmeson.buildvdpaMakefilemain.cmeson.buildvhostMakefilemain.cmain.hmeson.buildvirtio_net.cvhost_blkMakefileblk.cblk_spec.hmeson.buildvhost_blk.cvhost_blk.hvhost_blk_compat.cvhost_cryptoMakefilemain.cmain.c.initmeson.buildvm_power_managerMakefilechannel_manager.cchannel_manager.hchannel_monitor.cchannel_monitor.hguest_cliMakefilemain.cmeson.buildparse.cparse.hvm_power_cli_guest.cvm_power_cli_guest.hmain.cmeson.buildoob_monitor.hoob_monitor_nop.coob_monitor_x86.cparse.cparse.hpower_manager.cpower_manager.hvm_power_cli.cvm_power_cli.hvmdqMakefilemain.cmeson.buildvmdq_dcbMakefilemain.cmeson.build/usr/bin//usr/share/dpdk//usr/share/dpdk/examples//usr/share/dpdk/examples/bbdev_app//usr/share/dpdk/examples/bond//usr/share/dpdk/examples/bpf//usr/share/dpdk/examples/cmdline//usr/share/dpdk/examples/distributor//usr/share/dpdk/examples/ethtool//usr/share/dpdk/examples/ethtool/ethtool-app//usr/share/dpdk/examples/ethtool/lib//usr/share/dpdk/examples/eventdev_pipeline//usr/share/dpdk/examples/fips_validation//usr/share/dpdk/examples/flow_classify//usr/share/dpdk/examples/flow_filtering//usr/share/dpdk/examples/helloworld//usr/share/dpdk/examples/ioat//usr/share/dpdk/examples/ip_fragmentation//usr/share/dpdk/examples/ip_pipeline//usr/share/dpdk/examples/ip_pipeline/examples//usr/share/dpdk/examples/ip_reassembly//usr/share/dpdk/examples/ipsec-secgw//usr/share/dpdk/examples/ipsec-secgw/test//usr/share/dpdk/examples/ipv4_multicast//usr/share/dpdk/examples/kni//usr/share/dpdk/examples/l2fwd-cat//usr/share/dpdk/examples/l2fwd-crypto//usr/share/dpdk/examples/l2fwd-event//usr/share/dpdk/examples/l2fwd-jobstats//usr/share/dpdk/examples/l2fwd-keepalive//usr/share/dpdk/examples/l2fwd-keepalive/ka-agent//usr/share/dpdk/examples/l2fwd//usr/share/dpdk/examples/l3fwd-acl//usr/share/dpdk/examples/l3fwd-power//usr/share/dpdk/examples/l3fwd//usr/share/dpdk/examples/link_status_interrupt//usr/share/dpdk/examples/multi_process//usr/share/dpdk/examples/multi_process/client_server_mp//usr/share/dpdk/examples/multi_process/client_server_mp/mp_client//usr/share/dpdk/examples/multi_process/client_server_mp/mp_server//usr/share/dpdk/examples/multi_process/client_server_mp/shared//usr/share/dpdk/examples/multi_process/hotplug_mp//usr/share/dpdk/examples/multi_process/simple_mp//usr/share/dpdk/examples/multi_process/symmetric_mp//usr/share/dpdk/examples/ntb//usr/share/dpdk/examples/packet_ordering//usr/share/dpdk/examples/performance-thread//usr/share/dpdk/examples/performance-thread/common//usr/share/dpdk/examples/performance-thread/common/arch//usr/share/dpdk/examples/performance-thread/common/arch/arm64//usr/share/dpdk/examples/performance-thread/common/arch/x86//usr/share/dpdk/examples/performance-thread/l3fwd-thread//usr/share/dpdk/examples/performance-thread/pthread_shim//usr/share/dpdk/examples/ptpclient//usr/share/dpdk/examples/qos_meter//usr/share/dpdk/examples/qos_sched//usr/share/dpdk/examples/rxtx_callbacks//usr/share/dpdk/examples/server_node_efd//usr/share/dpdk/examples/server_node_efd/node//usr/share/dpdk/examples/server_node_efd/server//usr/share/dpdk/examples/server_node_efd/shared//usr/share/dpdk/examples/service_cores//usr/share/dpdk/examples/skeleton//usr/share/dpdk/examples/tep_termination//usr/share/dpdk/examples/timer//usr/share/dpdk/examples/vdpa//usr/share/dpdk/examples/vhost//usr/share/dpdk/examples/vhost_blk//usr/share/dpdk/examples/vhost_crypto//usr/share/dpdk/examples/vm_power_manager//usr/share/dpdk/examples/vm_power_manager/guest_cli//usr/share/dpdk/examples/vmdq//usr/share/dpdk/examples/vmdq_dcb/-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:25950/SUSE_SLE-15-SP3_Update/06e7d1a1371fa731af18a74b9731d929-dpdk.SUSE_SLE-15-SP3_Updatedrpmxz5aarch64-suse-linux  !"#$%&%'(&%'((&%&((((%'(((&((%'(&%&%'(&(%'((&%'(&(((%'((((((((((((&%'(&&%'((&%'(&%'(&%'(&%'(((((((((%&&&&&&&&&(((((((&((((((((((((%'(&%'&&(((((((&((((((%))))))*)))))))))))))))))))))))))*)))))))))))))))))))))))*%'(&%'(&%%'(((&%'(&%'(((((((((&%'(&%'%'((&(('(&%%'(&%'((&(('(((((((((((((((((&%'(&&%&%&%'(&%'(((((&%(%'(((&%'(&((%'(&%'&(%'(&%&%%%(((%((('(((((((((((((((((((%'(&)%'(&((%'&(%'((&((%'((((((((&&&(%'(&%&%'&(%'(((((&%(%'(&%'(&%'((&((((%'(&%'(&%'((&(%'((&(((%'((&%'((((%'(&(((((&(((((((((%'(&%'(&ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=9f3f50d9e399d9c6c9d8f22c3a0636d58b7aae4a, 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]=699d6ec2aa4f5e2e428b80197b12fe0aafe8e87d, 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]=055cf89b54c632dcf7086460fd10776ab75978cb, 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]=a11d42dfce2a52144497f09b56aafcd8c76697dc, 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]=de8b81fd9a5ebca65a315513c7b220e11d0858e9, 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]=680a4023722bdab9aeec0c4601bc36b49d2819f0, 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]=91a4d940d45fdce409dbd91c0d43cbf6139f7140, 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]=12a546094020c918ec8e66816c5185382ae36f4c, 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]=510a34e7c74314343bbc5e746a2957f09fb82f1b, 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]=a82db5736a0a8e0dbd6168d918130f47a4770ebc, 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]=8ad8b497f7b83d1e0f7d2b17c1b28a96d7101e62, 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]=b64d3f6e8162897ebd7b926539e313c94118f3b2, 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]=30ae4e73a8743fd4d426ea052781a24118cb138c, 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]=e6141643570c4ee6a7469e68a47bf474877ca9e7, 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]=b4fdd7ab7d548d12e9c1faafb4041902b290c2f2, 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]=031a60c928c81c8b1a08f48978e819fbd5222435, 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]=29b6d2f0c53df8a048438c99a38c6f90bdbbb0c6, 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]=a2eb62af0e9ad5224c91c0be35623c88f7f84559, 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]=d44761c2db7b467a1ac18d929bf810027bf4c39d, 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]=7b1897d22fe0b626fa9ac01ceae1290b0b90c283, 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]=03cee490eecb24de98ba67cb59d5ad639a0ed311, 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]=fd0c723437e52604d4b28b80749fd11a98ec510a, 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]=5fbc3ef5247ea4b25bb5e105ea9172d9fbf60f01, 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]=92349dbdedef2d739553e9ba95c7932be708f62b, 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]=82d4b267d9620adfddb90b29969afea2508806b1, 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]=9c297db29ea495d3840830c0b966926f0ea31a28, 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]=53add639e27ef4827d6cf1230aba5b8d10fc9735, 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]=f95fa8df38d81e6b0ab551da90e731387ee26bed, 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]=7fb0b8c871f62254b0525c5553ad833255b01d85, 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]=a32387307f49e0df075dd2c6f5bc59fdb3565ff9, 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]=02646c6be169be25271346d255f32db09cefc905, 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]=e09f2c87538d674db6630231f67eee0d49a079eb, 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]=dae937a64d861e626b9a589b5f8f1168cd97360c, 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]=e848be4088ce1d96078b35abf291858c9411c341, 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]=2e81c83f73b2555e6f464a22b6eadf453db9f661, 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]=97a6f5baad38c4252ddc8b483be2bdd8dda9a2f8, 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]=1287f33c6588b8405f795fbabdb9c8565cfdd0d4, for GNU/Linux 3.7.0, strippeddirectoryASCII textmakefile script, ASCII textC source, ASCII textBourne-Again shell script, ASCII text executablePython script, ASCII text executable )0;GTdi+BKZiv           R*R,RRRR)RR+RRRR*R,RLR RRRR)RR R+RKRRRR*R,R;RRRRR:R)RR+RRRRRRRRRRRR*RRRRR)RRRRRR*R,RRRRR)RR+RRRR*R,R2RRRR)R1RR+RRRRR*R,RRRSRRRRRR)RR+RRRRRRRRR,RNRRLR%RRSRRR*RRR6R7RCR5RRRBR)RRR+RKRRMR$RRRR*RQRPR,R2RRR(RR!RRRR RRRR'RR RR)R1RRROR+RRRRRRR,R2R*RRRRR)R1RR+RRRR*R,R2RR&R%RRRR)R1RR+RR$RRR*RRRRR)RRRRR*R,RRRR=RRRRR8RDR)RRRRRR*R,RRRR)RR+RRRR*R,RRRR)RR+RRRRRRRRRutf-8fa26d0c8730ac7c3a5a58278cc2247a02564b9eebddd407ec34a99f92d6586ee?7zXZ !t/]"k%{D=Ņ3E7 zoH$&z fx3k%:W%57Lr@ܞ+ !0Yqa7+L(>qYOꂄo)xDwݢ"9줠DA=aA?u"|X%Gtfb^s(Rb^jj~PޮgѴ[⚻1tާfL`p XNvKk.*?F~فMP! +R!vN'cr;y)z c1qd'Mα&6Fnvg$–S:q6-g-z]+<7tgq-оU!T Nnfx w*zZAux3i8WNHHWyD1] :\/Ye.Ap1x&kF+?'u_yr5&gtTD+MSC Jʡ Gc (R^m% EbC mpHb>jw(j:]Mcl2Jѩ^a7 Vjb`Qh?2ŽFrֶZ+eFR PxiDj'd >#ˮq^OyN6}s鳧x|VG Y͜m!j@ɽ@C۫ornBxt:,RZߖ֯dNT1"; Iq3zqR[B֥qXHOTTuhNhj2BM\PxZГ =2\Uq>7< l^AMJЕC3h֟ >q~5c2[X~fw'Kuot H\>y0(9gfgNW봬 *SZ s7co7ObhUTO e77%}*r/{"BP܎A%42WէfĔ Tp 偲=_Imz0g&5fp80a5+xe!5Rm(;z lbJO&,7)|f6|VѯboGg $-8[Xӊpc[hLRRAҿ6p /_0`-\o>J t26D,q 4X4ƙ%_ i]AW !7_2S6zF޵Wy%$uPY̠E|3ɩy"!EMr[`$yf\EP8j.f<ԯS|Ϸ+$d\]?\+,"ɵVN`T _rԹa.g6)s(5{@ T(T(iN܏(s:8OR|yS0b}Ot5B5.Ó@J"cg&-jTZ%h&2BSPIvk*#q&B/4ᵙT㎱5rづ+48%[JEZr 5ES7f& nݐQ(=qԹ VliP>{'\Arې,s% *z$2>HV} CJ]H]Vks33˜4+)%峟nYP/gALPVl@ȤE{ص:/7Y-;*,!_IByw=i=Pov&}/W[v؝!&w!YeNGQ};%6ցC!eC\ "[y7t'bmnQ"g4K <E!FҨg YDEJ U4VEHr.bqX'SJncvV<97X#f}=/r>E:qsL ѽ%i9&&^ AȻJ;yEkBӿ ^ bSg!sJxn8OWE5%JƉ`Pe9 huq]OI; RA`|,5t]LۄAc}OήR7X#ap܍)BRHI' O^i*aA(?j|PJg3{,&N~9o2**6gXorCfs5a`k(\Ǎm yoEׇܠIng֮7|PGXjkAr=Z*GUD@f1·eErk+>yxvd.67 ".r1j5}Qb\& gڝdĽ4 !hl\$I<1"o'&Q8`D;7q_*Ũ~\X( I: @ؼB'Ԛ C{񏖶MVtc|\Ϯ=T LkSgW&ȏx'ϏM|j. |b,)6+zץ1˿{+!?.)n~`{^f<|+^#q\:ǝ6 I}03Iv-Ow\>&z| BQQO#Q''vs[A4-`Uυ`Vl*LQDtidRpo$720G9*B|3v{9WVտ8֦ϪJ6 T=4=ŗHrCKP6ފ¾ \h:V?y%#4Bs-:=7;5VƻXWrxZBxXf;4Vh¢-z!kmz6$0"pzJ '>[/$7%ڊqÜ) ̮ķo!YN|sv1E9dvR\A&;T'yZnauE]]^-^C2Ky(z5͆ޱXCVTpj{#俱FMm!7+n : + R$1zKO=Ɗ]gן5!@(ldN7|9ݾ9oY͸toSGaz`Sql\3X|ߏG<*UX4n~Pr1Gdro2!p9mlK7;1_wE3˫`e,7D<ˍE6R ǚ: @2&pIy)8o&+BV ]-*AhQ OM$ɋߴ/@4L+#|.d<. $>^)V](yw;i 6ό =s(]$n+&GZ弒$|퓒\@IeV=s')1^y-? dfu<:R fՆԂ;*yfMP5{֯1(NM3q˞ǴUAl@+)S{;|9E "iUbx) sG;b*j/1/_۩>df{ˑn $aqؘ3-nNJ|u?s ċ46'3 v˕S\A!*͒Yb >n9+?5;Y3< 9.&VoQc%ct5J\,H6ݰ^=m GV ;bwg 7>hWḭ^'#.[rN{=6磩۽{yRnT^Biٔ6#=XдO3 {]\MH~,sbMC)wf:x1L.hl-@6m@'ͮGApvʬcYN0Etc̢BO{GC~.dI=jT&4_QΩ6tǸ;3wbH|iRo)b5} ydMU]v5w; t[ɷsOLf)4+<$z<#V$uWŻ{Otx+A3r->'Ǐ|<&rg+O6#ki} #;[U b ?XbBZj?ypg^;~i$|ŰLY'+y-PxPjXNeLT), j)cugA-uk+M@P fBCCDٳ+#{v>ZgRK` M-,%!!_ 6dAA80el[IIF&YQ'g;S-R Y~, aOΪ{VzOGЇި۔x2Usqc+7^3Ψzئ GYʡTB5#K\ncX+S =MYQ_^te;)/b!3oCSfT:@, 3TK%v.yrRsSC< v/LYAܟt逝8U NI xrqB,l7? cdffSEP7udnP;RH r 0/EKk@Yb%iX6+J;NJь'670p0t/^Jص2e1r^a<~n"㫦 kwEVE$ǭ>&^6&6%9 ?VLWuagya r+ a @Ή))Cm zi ķk 8p{xQ$TblHYK,T85dW7]S: )9Rjň_l ./d6I]=f>y*SL7glK8&38l.^C;ze\'ɲJ*[R(O|?N WE*Ϯ@_]^?$ZG>aрdl7T*# 7IdS`G yż63K:Sθ /#)_~,;=eJ ᐄa/Fop̉/IƩ8,nٖXI)L4#6]7\EDKPBX1LU$g`ό3 +ŀlzv'$QEE`Զ5v@\GHI9 +4<} `ѲbT c UAAXu>u򂔌x2lIJhsnnhaa/(\u`GK.%h ;r" #. Hۯ nRT{gF+&bƇlt^}lwd?䂑 T$Zi~A}jV:vOVr~7Zv\IW/XY L#T\ {<$;SS5GapI@*Rc~|g(^ئczq:otV|y U4l*C8FR;uHČإCm*Մr`#Jw=j׺Aiɂu7J[qx|}=݋dЀY?<ưR'>2?I?cΫ6u9,$ 4LYv`PGV0^жX+-ifv~z,hK⺑QuyC]TJ&חaT6_@%8t*W(L7Ȥ>ۡ%FUB |zޜ"wUf; PکG-(嫽^H=j엖5<q~ܝr=GRBD~{9`J$tɤ t.1QgE1?|GPqSZdH6.!uBcʎOUO} SоmR4`mPDpx?H`$[<{QO L'{v>…ϾY T[d¡"EH t }9c$9;ܫa~fta~E R[HJN:"Jlŭв=:( ӌNTwp;}L>ڈn8%ni N Fqt*v/)QY{IBk-ۘP؆Im&kO!ޔ~$JKGISSSh Lxxc&yBWtq"k}4fRsaȳf 3Nj{p?ÂJ΅9 9#= H*zkyVm#SB`5o/%hk?!R [ݠ1jL2Ǧ1+ s2J *٘FO%;<~^4]0HimX=P3GOlpyB~}V5 GM__Uocs%zFÜٚJE)]trpr[&z3hK VFtު/UM<{ xTT5^& k{>7$zWS Ppk`nSfxOmRQE$Q{Tx/72u~QmcL6x"j=Kݛ⽿$MV3{F/w,;8wk|/<a@ &.ƭ{lK8J7@@krdMoLv\%-SG$Y6R Z7D#E,lYR 7.ZX/WxJѓR'>Kfi}',}~Po:F <Qv FOQi~IcSVľSHǼZ|ZI {_geFc<`V,:ywZT(”3iʥ#bهpl;I@;Fo"<`.Cd6V*hr ntOyA=  iX^ѨǗ\Ԭo@U7,[Ռ_*4Q~JWMR$)+aThR3]0~ Ƥ28jŬH[EՁu |j#bGog4%7 pYb8I` \uT^}޿$hj4@,~^G٫Ȼ2Uda펆HY7]p%Un.96o{īD]'fQg3jݽunqc=[iNbjD/egb?\n1&i:?-:g+aWT(UMk_b7 !PlJ髦Sdzp:TNdځ4CBwǧ Ф*akit% k2@)9UjZ;A"s-s3G+GQpdspmnt CLDr,VjIѐ2إ 񿣖ZrS37V~V;sk+~[OB pm.s;3Gc {8KKf顔pcݩI::0s&&YVa/ Lutf_bReBzdϏmR`"h?/LDZ0x%QP[8leъVikTgtsk;xȫXo!0l.deh}곁.4W8)cJć(P 5>io€Plɓ1i?"!) {4wB8?U.Oꅋ} /pk`20`v.: ~s9)y:tWAGY bT5S\W3Ļ/!WjS=2>uJ,\3ut^." ̰RPj"jLNnat}$,4bTf^QM:0y:܈ V'v~f Ĺ;-[$Û| : hǙUN6jtvKL,mk՞y$pp"btXǞTTI ){ObS헸[8!lgЭLJuf%69OBz§P^a\//@&Rp-s,T_s%l9嶰%Cp]%6Ld1%4@[[hE&{|kFbXx}&2YLӹM8-F(ORoB <;MHh.;xƾ&oXρ!Jvjn鬬xRG˖.,oBa5tO6dnؐ<58ٺ8]{=-2[vIgF%g>/pۢF4jXYhtͳĭ\rmFŎ-}fJ?f+<.9fkQ# a ?KJHA*,#ihk h5gzqLC%䎳/nr|6:kv%={1c~g)k=Պ(gZA @iKzz5q )DmпڽL_Ftiߕ x1p-W^ &l} HUJja" t= *?mؚ!r֫SN1 5-S& ]h"'QJ<>R3y]r!Q7^>f4|,I@ʿ̑LX k؁JbSucu1&v[!f |ajR~m`8h3Z+%PV-|0 rr<Z.*6݇gsɅ.?RYtwǟKG]!?)QL07qT}C襖Cd<~[Zv|8aLȏE+!63x%FzlooBT]uwy RA3vx?#=d\q#Ur-ѠV֙\ 1fO_Q{l2bLzH;[r?%ҁYma'Tl]nt(7a 4aFȔCFNj[IP_kZKE)1{AFe.sV{Eb7̢hHZɮfbS,.3XI޴B b *P)jpK$ȡfִ&l3 abr@z )w?琎7.ia 72NoyKs24yZͲ4Zlpn3 @LsSMރmbQX._ɔo?֨k3} ً,lB⦥y-x/cѮMeRs˜-َj˭b8JGD$!b'-9?Mh:4 n8lח3B쾬z{&OsWThLP% y/XS;U 8Ex,;HqF\}! (U3Ky\RD<3yU[J/+bڟ% 4:f|tuhu{FKw}&{V=47<)sOu$oJ~kWϗ A/gxUKL<9_"˩g8WidRK%("8#/rj8G̓ϩpO=Uf8>?2"jlԸW O Cb?,s)#`Á2J\NQBy@|KZE:cT(#\n A:W0Luנ|okvHFpkePjtj9ie3~쑐_4_EjĥC@7{xae[xoNwL1{IcX4AS;0*FJu\`/mwoDRDD6apGw<*sPԔh;pS "GI7@[eŸ֩ʫ`,7ɶؤ }fCM"w.2R)t Ƕ3ݠ`>_֛}I Fd?Zi|o"G.p3rdݺoEU'tʁs'T"n4ɵ8@zެ Ȗ8A}nN/;Tз_8(s5Ց$mǻjbf0Jh [h_Qvv`<`(BFV+4tc/.Dճhh1_ BҼB~ZDґ[RZ$q; ŎX3wyQ]t 7/k AEVIԆ nw,{0;M*'DɇBX'a`_0XbqG'qřg&T']l4h>lcz۲)A 46M))z'DRn箜 $Liy'G`Lw{k.Ϸ6{%DPXߣ~uwdns7F8Nz)f_I $8w^~e^3FCTU&J]:>fJ|!\*ʢ\cA mvOFC6 [?ś*1F6n9߱4<&FR'O{! o&G͜UrN8Bn%60ե0A_:QHޚZhyęSQYhdHb5wM+ؕxܛN9StfmGL}֥e6etګǀ)݋GK a93ſbn0ǀMÈ / o0J%AYyzug tFx.̓¦'e9 w>)GT?MR؍-C['_ߗ,qJ^2vT.+OBnˏGzѨCT\>=,}h2]K? "v3av UFʓG;rD`sʗ-WO_zҊSZEktmUv.<2\w5<@u]Dg šI0̵tc:/Z߰ORF;0I>C+.b,%AڐW, =p_iɞ'^H'"%A)n %ݪ,>f) ?'\u{r =z.jyb Z~$T܎y@&i6Rs #dAQ`-*3&US&me `B."=a%XP&@(vL|Uk@x!48XԲ v4'rWڍ** ~1u|C`š<,daNXÝ@1>#P8 ̞mVr**=DZ>%+W$c;}Ї gAuΤ{?s|u,%**t ,pBr(s0\)Cۿ7S`PVבּdX T#1&L2SX*wu^W zPU%# 6"BE< ]~ayEO7Ztg*v" Dp4N# >stZ[^-L41#G[-mBN _.6/9Tl+nĻ<#L h?KnX \y:=6 Q!EYcwUpZ2I{24c7 @AǪLKBB&mkD9@q^3Wîym_E1(c܉Gho:&v}w*a |R4 WZvmp>+8^2B5! E@^۲s!bzq ~oNhG±Vt>ɂOlJZzG$f3;!6`;l9:8 r#[Uҝ6k-:qIp,j݇:sv([WoK X&R[ GR_,s|Cc8(ׯљu cs!iSuPiy KVE @| }jK}e١0dQ9 3v1FRg3H,tQ,  8BBWGfW32muAnPT=)k^κY ʖb*kZbEHyo{k$9nIRY("m`血[/ޮBL,2OޛFbPNy=+vUPSx*8il ȀM4?HtcD|Z"cl]dWـ/5scd o]Qg[.kOpf%h6gv"2Vڔao36i؇\6ڰ(K{໯'R;cCO7Ggw73l^XnC~n1(vy;+'f [ܝ4d:0u;õQ^-C$eq$a~0) f l2[x}<'iM׷4F6>kDA!jUB5iQ {%jXrf`.- ;4 G 5'$﮺!Rxfpq.LsTR$ 9W7g,G[L e~]u͝JIBtG#=TZB>l'.Y><qbMB?vu$pD#PHzqP.z^+>[S;5҃k%5GO"k2ɷ<Ռ @'('N('*uAl*=6X="+lC`u=F˓p0wf t*рeΆnVj2$ g]ce迳iDby_8\UJtD7AY"wԄ&7tkQ\5Է:8hXS/Gz> PuhAU:5qtW%Əg20n<3C|vP6[h7At Ezc}] ǂ/v˻c̝6]`︎[VbM: xU.J;13:]k$ Jҙ${Hhe%YHOu;ZK%ifIlk.2ͼ>/&@T$pXB' U@^$0 B^w %7&j~Jl`[ (pOaV9Lri_֦&M)}) 1˴7O*̶ :]܅V}$v"*Բv.;% e\Nu{57nROsÓR'34,,SX_4v$7MR}WĴ Ap~F|eMpN3CE㏾I[Cn&^ʻJ`nV7APȉ*ԏ%=Vw*:#yR_A a4rR ֌+yK<jk26nzA*[}z`dUjϿ(XIYIgujyT;ay>>gztl*9[ 1f )H@JŒQYPPf>izE-X!~hY0dAG)B#֡oYDi;Qv.رJ(S.<ҵ:^<a,#[7(!j2G&_ ٺI/Z Ɣ= j7r /f++b/H{b#Sٱĺu@%A?GF, sCsO?Uos/zǽ]tx>ܾeުw8>f=#GRSk+xW;l)<'&t}^hBk,DTd<ӭpxHYJy p2gP\7Lt^5ZYr#+d[^ ѷTn1c'Ih#3`qtrXMgADb[l?O9D,ShAp 'ȏBf&)$QERϒX'4^kkUǍkEGXFCafo" 0)0>sZoջpe {*E*<Ìw?Y~rA΢Viڃ# 0)lފ)b֭ʟyIUsM Lx\η9W2t~gC$lku>_wq~.db2$71؇f '!hK#d\?_lv$9s?#})Yt4@UOc dw55Wus7UCnM^)^3.P<̥\T<Tdx5VxZX&o!Hy%*Hz٢&*bA7K $$T*_kx-_k09:܃߻Ay ﰲ&CT"9󉓽0 nUP~H@eX$Y*v\a\1z3]YCc Y@'tAAڿ}0C[ Yy# .k |AE|E<(ۇ6r fm_H9U4T_7,`B/b*G8V!Nz_kBuui5!"?ELN&@"֝J!F1Č=@U]?)4Dvño_>1q.q K.ne) (&0,R{eE0C H*kvǏBu<إm.}_Ƞ1uLwO2 /b|R^1yxW˒I%BX<2Z&{=rvu# cpDN"(ivW|n @E$(rx_"lDַ,+6~P_ ]< Z`%c>GUDLևE}&B*b>{~]s6:eIu,;7 1P_EmFs*R3HmQyjHI$,ls~SG;G zǛ"P*zQ&IܛN)MFЮ׏^-g1vmPܷۜ"&qv$xP  N,tB_nca/{+ϝ`슉4Ao8=s3]Pc|Ɓynx­X"*GmYj }+9+녠8\Kα:<\D ADh(aA+:__-ƒ~dĿ=tl\n]VQm&TZ0ojX:B8r^^dPݢ@ueDB 1GR6^z pHjޡsrVa:}y#Lւ$X =ϜH-UKfGJZIG?/Bv1h݈^6@RmP,p{#AqbP=S0!_֕bnyܩB|o{[04yct\& Z}}ʔ~#q \k̼qA+UdQFF·d(rO!.2%.¥ALBM^|%ݐLɉvvXFO4W,"`)yF/ptqG~wC6Nm?T=uƒ L#!Bׄ}XSj,8;=a%g&;끝\\tR7=ڛO!=gux<_obNfؤ CЅw6$9Dݟ<~$rԇV*VZ .~Wrs{eO5jLKXyI;* V|z%QTѶ_ ō$p'{b)6`,,Vb 0;b*~jAl#5mI2\w(݆I;h ]!$*_yT0Tz'3e#y#NQp cCnfBi_z<@}Чblq6uRNޛnTؕ>Χ+R mbupHDٜ 8D=z/ lgMp6+E"ܡ\/gZX|#r荱l7#fX ۥB|\PEzl&c3$UӽI(]w]I`? -S5e?hsn䵇1GhX^׎*BCL+2 kJOzs&S3 $&6 |ʵzT$5U#˕^9c+o\b=`b]4(@Qld<.iq1j[8T$jl0)$75l9:jc^C|<8PZߍE8FV*RxN7JU /*# )_EsIp>b[G\iT40ɽ0TXUhΜ M'ݧve 6+J_hɑH܉P>~N9rC;tدbў蓅 g! 6_XhZo >$K/gX #jRvK S_ND3"Ѽyso*ԍ89QW7hąX=wfʦ,EᏏYR3Z˘@!].-.yGy;6v_|]rV omAvV )9 }q2A^6 nbE?r/+Qz8Sl=}v;BD{aE57$& Y>_V~ǕQd[ݛ3TUO/:r O|P3sC2>Bo`XRIcN|OL Y[ 昸JIlE"Ի ˲ l*G+P+o0Xg(~oXᕝ" L]p~ȏl\(n h4QSٮn.װ=no>ᇖ!Bx5W^PW6QR:UfEkeM$tާK&O/|n:n e'/-ѹP0C|ޥ 4{J|= φɸAnh b9ӈK?Rc=Kwث L ι2/3" $|YJ$sco ƉI=!%1O ,x+]+_ǜwdK^|,fe]"tȤneD|$&m1 `*O^p[`ٌ&eoFP3>tPg6 xV?U%yyWRTcHҋh%, *Oy?kd]+-aW"1 ˤNFtbk,2n5 ,CU[ g۶-fif;im/&2K e)i 6D)f #*uXV1rE0T;~!lUK! ?`-:U .*{=$+q2A^rM',r9 s5lUW xXw 34>{)HN&+pp g s8ʒ-GTB{ŧ:5 De=u`.? ?jۡJ۠¶2@f^K&tWe"h.Ox$i^Okѽ@OegϘz sVhlL\)=x;0i!لTE>֔w$|k^k̵jdi!CftR6@Ա`կQFˏ] u^"%Q;\6%"/p;F\6XJ(8Pj#A"m똜`š+3bKL4Ͳ%g8+ NEH|Sl6.JMyOGJacC,QSwHQ2]p pd8(0ص *lVkQgEksh69扣cEq[v9S?ewH.瞜ԥlC N2V!e95Dfqt@0-{ݴTКzmKR;",|F3{?&& - ?P<rCLcR  }@f2-eJ }~lHXO(rv͒IcZS ȏvŭ[CP [rsXt6=m:F`ե BUsY@u!-B@RNw䦡3d^Rrmc8oVƥ/O5DH ^Sд)`}t%/4{T;OoJMe !"qd XSX0yj.$N  2 @K Y<6}+NL@i")?lӟ=]G|4Ӕ_ QLZ!Bߠ[G;V# J'u3^; IFf~ٙt-L +Gk\*d/q `<9n!V\bNh!olu"K*hEI؝J#3<]mUS /Y$+QJCNL\s|"1IOa|~I_gQd=n^檁n}PH;r1uL[8+212Ƌ6U7&DfĔg*ˉ8=MÆTbJ\ʸC ,+x( v(A *ǻn ŽV:s$AXc_u(H S1^?5VH~!Ri=8"[doLnI3 0iLlMNHZNRE}UQ~4 5..c #L T F sn;"8LX6eF$F{\*gbapj9  9=O!ڹ?t/u$+gyis~y{Ĕ&6GH$!ܚN$9h w5BNXR w. 9@U=3'~UTm4֬'27E?y)7#jBE pBRStMyv $ɲKְlcӤ= 'jݏK&Kgqub#R|+Ayؑ)4kNmhDt;HʓXNhrIࠅe/ )q '#ƫkusQ$ <[4FXo! ,oc蛂rUEݮr(r^I@OOGI *=aSf]y1As\;StyVލ?R[ωr!5_oi;0=yP`lCHosܕSNᡆCg5qNcq]{ݧq>Kp]59,!m.X$it^MlpDW6-Fjhql,߽'7y bfBR0z }Jȝb]^'hBA07EF^*f?RDwF,0kox]0syC[oy%Hj zlA5AN $+l0#T{})*Po 4\d@bfHd^*1H:@=a__A|ů(lojCFm>wp)*].ZWJl_Op'zϫH)p?j@w03! _ ~cOj hfb:B7jm1>skwMqT%Z7I!ZRfd)OX꽮;*Mh?~esqVdTa=њ=[L$b [>yS⯮>zH n*G\5FcZ,闕}֙Ѡkxg1M'+q Jc_▁d,+߅FgpEM0gCś5܊[ ~E?_"L8wG> N>3T UJ1  Ύ%W ʮUIy#h|jHRL9:<\la?eŶ/R<ܴ_!2x%.U}!)vt;霽ٷ}NXKj#vٳϿ@ꑅаYk,?B^/΄blu֠k)x)ŋZJ mZs@rF5٫I4vuM@4%փ2^bjNC8 \rm 1aI%xJ|;b'XM90'3$F|)r%(rR{OA" UZa߼S^]EuEM YM/Vry+'ɮzz :HkǸkay?)7֨bb^u!M }h,= _gL)4pl#%ewHi_~IK"w¼*;67;\ؗ0' 6G_E 3 Ѐk $:[y϶ξd1Wnx*&KDY@ͅRP(C|h l{T'$JCvv@V5~]sH 3VLq8h <˰bF_1b5*KΉPe m*ywDTC~Bo- ,l?DjjKX=l'i *A, Ęq#ٔaLhfx&p0i3~OEH^o* c@/ 3a/MKnVQk%ÕO7:3r}8ou h 0t`Z%ey6mו 2ܫ 0]^%g"hXR^ɊFyN{#zC i$? fqݢk;.đM/ %3ڻ!G?zyhR+#Ƹ'a?{ xHij5cw뙒׽|Iz@G 10ggYVFyH+m~ 㩝9vkK+nB 羕WP“b}seyKd킋/PACs$Pmh{vbLA\ƉӸeYTlڎD]I2O*^>t8 rW |Hfg4Q+ .$*ㄺMrJo Gj絤 op bkU >'4zVs򯼥ŭg՜Y7r7aM,w{ׁ ?ÌŎ;Q{=`1w9?#}>'W( 5"yo1IMŘlŔOɉ&I,bjy {bv,'o⸶.? ԟQxW!r"鯻Sd)}`(17$ ^xS?y({УjIؒD3}(:7X\/PcLzr=1ȀҚ1 jp%]QwHhbJ2fLE?ycVJ"wlDm/wQu qͳe!pAh-i)o[zBH'hh$s7~I.2a_G ]y #Q(h?DkPMZ&#0ى} '|cMhFFg><=|I q EN"nô dϩpb"mWFq4G+jn) M'jbE#jSl~e[P+COO.W,?'Sp o3ڑaDɳ>\2|لeyBt@5PK`1TkY̒k[zkLK.u>K@ZUd>NϺ23S UyhX]B\皲yK2=ni.F3AZ\ `wֻ!?Ci=#9Sz`if~ݱoWZH6;Ԥ9+`Ca1`D\K軉g #R),}'8_I*N8MVD/RP;H\ +QsE8p:4\"};Hr͘ $]QxϪ1DkR"1¼\57ڔ L vVư[}]TCW7D`Dg4{6#ineJ/})n1Q`9v3R< 3罎:ld$qiEf7O ;;sg ;*š#B3A)՞qB,V "K 2CXw1dеAU/eKlefpЍ\qz6)D R5qA;wlQ?= C~VŽaiOL)=ZSKQWfM'kHzI-x BEsF %wB6@Mȇ>U1 :,I !j\x~) ̨6U}Taw^ EeUixSxXnuj mck 78+o^c:j^a9QdMJZ4N/vT/+UkA%ZEAEPЋdO٤MOq&lcKX^LmÉŒ8Ȭ.s#soԯw*ˮTX:H9e&\N;Jc$c >Qi7 Q{5gGgX{̛ٙT*JIe:S֊m `, ^C9jj/F7ܞoY0ݵlҞk5U8V* tE`΃@.jf!I+#i _CSb&|F\wf. Y~Hki2@6ldl3Z*=3xe.k9Zvae6|00mmIrY,QxS<S .f0*=`1}q6X6j%lW#dGsF?nߢ`py4{z_a'Nv㴼 r1avhg:yБZ⬀Kv5Z;NSd .|ZN*\sIݻ`'.^j}Y=fƅOilq];M|FYٟ7\ߩOȩ=0S} >\Y)MV02q t[Ad~vunR[l |rxӷ {ΨX$%"8C^ tZC[;#2bHeќ W3lA!VMҶE2[[r6Ī>?9%ëzc?DZiN-Qi 3i0?SN}0 >m r1 S?\LH "7+9}{sb5r4J}"[ p_:KiKcMC׏VQ ʤT~~yB/|&5-;/E,gi58UjE׵k#t /cSў}?0FtTp-XKk#v!xVՉr ,<TCo[ε;y"#8 k" !Wqt ގqLj[z?##=h%ڥ/4c<~D(˟.f&9YٽkC2cG#XMԓU:l,#3xU3Xl]o[9ԴwKVyb" d0ANLVjrm ſv}uznU lޝՕj$)jGe#j<kO+ NR2ɑ?oXWO0IԌk ˶1%RR]N@ z@8HqA|x߃IiO,疑mume0Qsc灤z◦r:T,g-T|!h: 6m!_(nO3}\b^odp ]_ez"THXMlZm?$-D[͹dXH(Ws]M齹RvQfC-5O_7bbEsGx4A3D"Φ]Zyis#ڊ̰-/L[`["6=bDVjr'w)O[бBCL5N# (_V>u{!MS>,WҗP*A W<$r WYDs,a-1JۣycJUEoY? Nɑ y| N1D>Ns"ڂ*XFè.[z竭᫳ NmшΘV(xGQp /ٷbv2sh;B$u-цO݆BO̒>V9JMhQ7: _ 7*a-fmocpV(ðefz*c0w t_S盷_ɘ)m:HWxAIrbDCOզHD']5dExr>8VdAEF ǁ*Pv\QJ]Z$3id$h2SW*pHgy\OPjc֡@,r"+CD2Ta̳yC+M.#}hqل}oFv}_n|3@}lD֞^9ޝ2 RnwHDTiB0'H;86TJfγ,I˛y[.rEv1`O6e?Hw'%%䥅!@NY㱻@kl/ArvSy,9Pym ݦczժU2FW.lv^)TUi؜qQ,,X[FPY[odh=UNM? l,88ȶtq3CluZtDkʖD& Yd;4 { x ]X[YM}6Dc&,yi񄜇]!l>k_=W PXsxjQ0M@)`;C-!߲ML[ hl"A| G5jQn^}&?|VȲ͖nQco"GW0&*Yt3[!߮q [Av]pLP6] /C]x'"Xf&Oc9])nM9@5{񦳍;kVd}B )w<*#[8z[}}&{nH:p0`@#~bpfP {(iCǘxo^w(")Ifѳ @1M'M{S/W>3ODcAʒ"UCP]4IC(M_?ڜklAknjlqBIix0 -!𙅋AZLeU~LSV%m==W9ΚTTUqdڕq=a\s@MAm>o-fQ_ R K,> 5VXhSNCH%U[X^* N/ӓl\}K":2A;vG~.Tw(mSfjOŒG, Ex74 S[A "*ʏDWT!s)t62{ֽ8K TH+׼%>x%*97m01+#&k/ysOT(@nȜŊMS[@Ԉ'Mi5*gG~)}x9y(>h^CCp$PX6|}Y,RW>PK- ,e'*% b6fړc(+[}z䅂Ĥ&{ %^o톍ZF[֮|h ꌋ+ʫnfKjz,˿4p.I%Qt_ р 66'0KN/+HE9V\DIИ3|c32Am:D,['.>Ln01_#h<f`&`)[*~UM!ѫmU<0?\mXu/"¡ߪBJl3脗6~bRۚcRI~*RuH8 c3F_(GPnsp;):ڝKWXIP?iF# {/o;p&F}+,4ŠE0<X(Q.Qh^-_`6 )22DJ8ookn>^S۽K׏53YȀttz1.%oI\ -?gXi*ErPAt̾H$_!X_͛xh/z+68ꫨW!.IroK/{Ji$@HP cBl|'dbYc˽D; qa qy[8U im83n[S=x!B|oe~ZiƐt9T1pB|lY?W z< @# i`yXF}[ {E^HۓyGXlŊ*IAT.|IwuG,t)DP}OvcO{/K]lI+6@ Iy<QB(*i-,WI$v*g1grLyDP"=CZ?7MfpI!6(<mTE.u~&3Ndj:oLI!JcO(#q2xhXҴ(QhjHw_ :]EtIk9#Ɔ.2@"RH&"ߊ* f] *NYi{ѸVbm8ޜ(AwT[,Hݦs ( O0bP_ط,N.+AsV@;mDu,p!KC᨜Ž{W'h7OtPAߊc5$^9Ll/tDΞ "\j-ܷgrx1 @vVb'qә!&K[18{.1wT[n 6Xt,7DSAкqL ssft)Hsm|2yFJ!ZldM Ld3on]syk?>DCո`Ho_Z^/[],ϗtBzDNz?1ÈkY8oxfl 3GB? Ǒ}G]; zFSNN|zk ![&OS@*p'{? Zr/S퓅DNaz9;NB=pQO[F|Jq%RS3o3;l;4Ю2/hEyrޥ֟rY:Sȣ;ӭ#cSE 4Ԏ*3_x> I;=RF9)o7(^xBےU, 1*-d$`Wјd2CeHi\[OD*>3g75< @W:zo$|SGR\.o$ݬjc[gfR2Ex_٨ˆB.G#5>K'ˇ ߜAU~jk؉|Q@S9*!SVɤLgST@v=☓bca_46ymy~af ~>O7|R}> <_*4OK##&#^dzY-7d{8Y?QHe,,F'ɶ U‚Jg5YDT! MOcV0)jN<5K:ۘOl̾YĔ@ڜ&݅Mm(&k [B{6SSPF/ScBev#,;/M4=aUD,.0:/#eۤ8gf+ֵI RRl;_8m3k55!!%ϕuw4?̂wM\$G UQ(}@Hw1 {% ErWiU*X,2SG,T70nG87bxI 8ZE7F3ӪaŹkqGŘrj]"@#!aL<9귓|atg8%mdQblm7ޛE^ҙU.MgisdB~X{2 5tk!ZT@zma|'w^LY|D x*cv@Z8:󎯻ͪOJ}Kꘆ (ST-++Qĩ0nN= Z$M84q>AmB6y;(7&&Kl $k -4#Ai3+FR8 Pt`ӿMll>gY7߲XJ}aʌ&EHpS1zF%yL`3 :v?;Hc s oϺY@zkƆ5t=1_ر~X^(r#qLYvŔ<Ҏ?y 7eQ߸3T ;pWMkt g ?J۝EW;~N΍` GD**cUS&V?Q> ^#?qdѷ)5#6Wxmdǝ%ʻsӺ`Er9dȀ?3GZ`UF[˥N`Yu_Z},"u B&3'q2lFv(|%4jo/2&=8.Kt{䐍` kt9a*L[f>6 9bP( A ,5t3j2,,-GBrE94nՄD+̽Sa6~%溺 K@ 0HZ6O ^@g-JdOæҶ$ "oX$lcC-#8Hh֓/f)7a}ck)dUEoy<]uTpg gL'XǼ8\`MQui\GVKHa&jdIp>ܸ?9㼍w֗|L#mu- vז f&9+{7r?NW윲eMHUR@[zX6<5Pc ߓt4ይ˵$ݟl"3܉9tYX+9uԷ3G/T)D 2LQ8 *8+.1Bjn f$B󰂎"cނ4΄Keț9 Y1Ɛ]S_v] _CJF]z?tﶝ?^u rY) vmZȗоTT$.j_䊖Q!'ak~`[S2r  ܥ/{G dR}.W Wi[44B=Dy?턑Gzc㧣r.1(!/ =#ҩ afTp}Mg;:vYBQW^w ]!"gpXSl6Td`VcwI-zvWpv` Tی;S[t8[@t?WŲF \Fd 4s`S.r?r'_#<!VbF, Js*TgI]CrRk1mC`ɴ𶆞z$1))ĉ.4CZUkC;j9)އL9Lqpo>vR!؎mWŷ,C٥TاXjxo!J@hp+ڈ{A nyZxzTKZ 20$zaxIw +BKZt4˭\((3SS{_S #-,+v4oE+QVphZ RV = sWq w\5 e)EvXl%Nf"Z23fLtAQuYԝtYvumFP+ Zrdúp!w { x'~.Ac)tkMD[(^y:)0zܕXN * j#&y.c d ̫(\ۢG@hT`m? :*kC uʥE#N4,ZP%B?l؉1ewL\Ǿ1ڸƨZj@opq@p,B΂ӧoY<?) ~DMoN*ImfWCڶ]vziv ؾ0K6%U#Dl[\.mn@iԀRdmiϯ~Uw[̦cu@3ݔ "'"vP|#؆w|\elAvUPٺ;-jV4/9,WH"VkM1|2RMHV7 TolP=XM=?"|>0Zc`[M%`+MLZ G5@UFueB(.u,r@HS8SeЎRO$1*'3Tm,UlYDo{o1~t#>0>w恅7{e"#h{Jn xpVj4+L6=D@vMU4;L^؄s7S~6-M |+ba9Fg*ڊO> w\ȖEƤ7qxH{;tvYK)~n`ן_PHԨ엗4 A3ȂN ZJ_~6#:E'2t~(rH /B)-!:ᾪ@!)>x2DDg[1vH֤Xmh]s5ܯߐ5V&% a 9+LT>% +{1xn]J['CB~{2=Oŝ݌q}A?2woV/ b4ȁX i_k*MVa$q0nWr^jˣAe 0燻kr^*lV*Gql3.W,1E;}ۂ{I"gGB*{45x#)_!XN_ 1^l~j{LfUw6H (HO1",m|֒ǰx!A?W<> ІCQ@h:++Ms]ף>[AEvi 5w]A YdaKT=vbv2q'0V^Dڒ<]%=.V/jDT(dW՛"FpbjhX?"( uJJ|`%0Ch@ s)ꂗ[€i\YZΧHŞj H^*,pNΐ$XkeښIX Mgp#o)]%_BR AWr$II=zz>GM ?!?OZmW\)[mS).Ir÷W9=}|T@㾟O榹?5 04lPB@GCU nf.7㺰q= ?ўhB)yR+4w(D}s|Kx7]z7&}xQNDXHd_j ոNG _H_Ė?\~=\zPg. [a)wK>O #YR-~,s ǐ` 2K270%擆Ѿ*j;L q?-lAڜ.BmGO'rm1@dXH͈Jig(Vڌ1 գ_z@ER okGOӧɵ4w/Qz3x|mw~W$ G͔{Td.j>VPp^{ µNoGm=SK=ׇ $VzYFO(fI/0Y#K(̼@Z+ -фj5h=LH1$xZ>hה?cWxi{!MFsZ@ H5"y tXkƪZyb^{Ou1 xM'o- PVVH `A7#cYOa{W\dV;|? Sp]3L3z?5@e [ bT]e~SnwVq$)@\e57K/]FL5m6vsq@j(mM㲒ΏfPOuTũEFcVּ% ;bu % ehZ@̤bsQ[mh`z-\sЕ;Oګ8K}2=NXkYQ=u ׃ڮ{4KpC4!i{ro'<>cUb>X6a!tѲ"K[R, < Sv"#tf7hzd]INW"s ֲލ #gć'dܱPV\\mr rs iJcV!]ltMv=uARL|ߚ_؃&b?o Ϥ:{F@A')hNn2=O f1,qc-pW-aQ|*m wr=SOeRC$r=7`Kye x2jw/!j}LlIKxU/,B"W 딑وOqEre![izfN3]+>pZs/:aa#u& LGyCZv8Q~<ܘxTYa#j$i y{ p!9r?_J ;_}񹂗Y ;R7xgVY(0Tq Tzv_Pnbo0O҈ Dڶe`&i b0?~'}Y7¿ ?EYiCh,[H[8KZ=7Zg@JS 8`cGl#yEcjlT׍ 7<վfAk{kJ4 h|탰63vGr!ɀ ]9.9M x/15݆V F5\5e/ ׂ[=PcZx s{:SNs~sS'.s#"4nH!x˫ENz/;7džB3Mv +?ȐT"X$}^0^tM|g9?c{@*͚@\ȍyDBr:3tCq@̛9da*:RcN;}ԄcNvs삼wl'".7o;4X ޟGSIʉ%@[Qܫ>Țv r}4Z_i 4$2 yLsɪHz0J{oHvî{L*Œӡ%(5Vt[R_QLBGIp!x펡?Xp /fCݺѠ6Fw۫&{`Knҩ.k+rkA\.ߎEаeD֝D7[#n]3sIH~&|l)1qѮ?[UuScɏ:J?Rw]5VμS"RIdD#kjLy!O[aXRlB3 sPmŧ!hi/f?=5̽:h.פƃ[+ !. {V3b ڬL)cg)B|^ 4'\È@{m9ę#z-CQuN/H9/o>w#t͑OkmɗYSdT PlfM]F4` X" `?a猧)qLg$;ɯ [qZɃmՐ=W+a,K 4Tmnxl; I@$L!wyDs@2'EKgް\xˤz{X*2Q}.t85Ĥ+w&'soL=vTՅg{If fpLųHÝKTɚnb#nʜo(.XEt)0 Tܔ M+c4en%z֊L2doio/$ͽ_:(4 ds«=h"ҎLxHm֓Ik^~ZɈHhM*M"'ZLj=x=@Ώƙ!<aơe("`8E^ /ݏi3P'{>->.?]PR$}x%rTί=@Ȉ@f8]@xzi& VmO?yZfn%cƧ06;<+mfdx&yƂ҅4'͇rtRCcݢ@\w(EzkKoYg ,>gVX~rj/7Z(>r T.\CaX5@BRUF֡S0>(T"G9{y--DQ']΋HjϾ<(j/gSM';Ӡp8X,prn͑CD$%Z^_ue{;rDQ~a9cĄ"Fԉ:*qbsmƝ ;n d~n>oؤ 5O5Yx6Q3D !S;@bԷ2pc%ׯZ"sFZ;-Vү%R/η猆(ƀcA$d1QO|'\2 SB<e8٪m, CgI-gКjߒSKOR#g%EZtyDj"ΓB?nxv $~Aq n]\$$ gUnUT3@cx˦TE, ;95ɝi?TCLɜxMQ_V59e]kM" 6>)']$lROqUMΠJ tUNx~!YxZIC?g t~هaٛW!BV kq2(&H ZɔhW6n0PĈKBԮ6?A~0hs$k.P^N$~ݴ5W li)Ȼ6zsc7@Ym["bB6)(\ >LkjJT˲HeͷLfİB-sfХrwyFHLq dQyZG'` %1 ڷ&D(8]!YDqb@_c׍udG3 f9j/ R3\)u֥=ӄ"|N(z~3{f?tf Jw\̎>Je{gaB6] 3AE/Iv&z+CPSvnāa+wͿK`@yzG-swoУñ(澆oFa*޶d1^AՅ3VG&0 ɽ9c%.Żo,}W6lQ޾;ܵy-ɹ㌏5I˩Hϳ5H_Ǟ&b$bpiMTdA?֍Keyj$}!"*o FMLֶ)؞qhLͫ rTV|6jl64+2dt0-@G,kR/H{6ϭ@NJoOeFZ0Ge!R+ΛRa% WbG; 'E92q"rȇ^:{r|f40w8)OJKtXԕK11I+EqYHS~pk~,. ?i%)w RFhRE҆hy ;`R؂d[K}oK?3Q6K/S2"^T?~}%y$j&wTn>Hx%觹}pL*ZE24L_A)&}grmo:EzTʡ-EѓlP?Q)Eqx`*kQj:Ujl1;S cltϙk 7m @튴kQS!-YisRiZ\s(ݥ 7p2iZ-߉6S3ce9PaSug8߂ħR< H9:$>u>dhrW+%aZS\nY%Օd_Jk.46̋Ƹ`YURD ,b[:?X-PlK{9vpH+ buxb3y'pl0ZMw-CJl}A\$cțfbSxHBeȹ}",.Y/U|%ٹөVе]ܘnw8ݐ?kt!%[g? w3CZ"~ZI ~v"sg,8JHc֮n8| q 2[؛e(}֌*0S,!hyfe>p~i^= :xVLGଖRT ґzm?wAc[e.qD3Y׌};,_ްwe*]cE4uќ8A|)|U$Cruo̷8SEPV!XQBP֋hP%0 MjE}vZ>8v5Bo*7!Ip3&&v:?xzr qtsKiI UlQBa,52$7,`zv7];FK%<]?Y >-!8j/%@kgl@Ri[N~M"4b{hCgBa/}EWO,t% V\*#zFScLdU퍦rB)JPJ}'LQ ˜[?f.&:dF͋&4>d'o [Qs"H,ؐ{C((=A+P܈B}iIb* ߸[軦iW\VofBpnTn+hSՁp5͠^ .Amsφ:0^NpyYg4vO)4{@*G4xZN!~cv申sUJV0[V85p2]Y]w|_K;?2T:[~6eq,mr|W˽Pi3ԺZ󔢐U!תncVrȠQIߗ%[ʾ6²o=i)ì. Vtu*62}ϽM^,ϴd+mI}^Ie,\}YҠ9~ʪe(r;7_ˮ D4"X֟=[=c  zfxIZ"O'e j34w;eؙ6>-a ځYLY]&rsV B x ^9ح] Ct )pDT3lOLF3c Vޯ+8[n^؍@j1ׇځn{k-{] Fxs5Ee8/%SĘBul~T81ќaLP%!.ܲ};m=ۓ aPhC"`Bܿ҆ͱ9 8LHR'L QcK>ȍ)z5*LÈoX Y ZL֖IЉ߫<o|Y $PVXigq[,mK6 ٟuApKlg?3)c%WEXL(Hl<boz'+y#&eÊ>%u~ MPe)Qs >OtxXt[9yMb;2KB/̷aw(6F°>2VmcZ s eQ3oU\]/çucs"4~@Skݧdts:"FoHEm+GaIv-S9 b xߟ(Vx܆4ô$)==GΜ =)xs# ܗ=K?}q'zldi>b{SKCE(w/-8q!\_qJɉw22`Ϸ1Gʸb:"-O54Ov8:L'_7F8+H5b/Cῌ11^7<9H vdNj:3hu@s;Ɨ2Nf2N"[GaG#]s@5\-p.Z- O,ȩlc*>fXF e]r|UeqYxUfN]@7 @ךRY/yv#Dwk aF[Xe% }6ԉceN달;"nִ;Aj`sH"[W>⇬6 <]qE\ KtbM G/KA< QۮW;L8t fhl%mPg#zя]ؠ?;)S1)EhnwaQkyuOR{]t.S$mx ,W{9yp^KK<{ϓɁ F3IIkDΕڸۜW9VijU{LPFf`t;qȕBiI3E(\@|@j&]vs#DNa*AYG|drblރA4wx}$^6:ogw.G++P񘷡7|"mpnoǥ C:0?||; z;q& #QziDm,xbM>!ɭ:̰ڜ,F(0ܾyjUݕ ǗD6;IQA!ĈTm}QWѭ6’_ro)Cx*{.9.:WDžoi's=@p2#k.Zτ<\A<@ADOI}qC? PT m6NM&$)'kPZ&n =hm6LC֯X|+^TT,!NC/himvIM]. 7?^ٗwWكo$:pe""DV|gNGƘzVg+\1fĸU+s rME>.\ȩ1gWAbjådp+m]o~`2?8OaI^UJy%(Z7PFQ?nh(zx{B<a5{x4/[6yS:"N{k_tgշٵrwW5 u=pɣ`.Խ-i4Gup@y`~@hEv), 9B7%n62mYixŹ=X"?v0.h:>lzeLa6F,)_W89%> n>whq}m0۾Ǹv*̙%j7 ?)>AKy QOsʗk(!xDaw4JD;$SYo?'3^j>aO.? MkK9jf=Q>0z8D2Hy# Ԅ_ ߞQ>^,I^@jiӿO険|\G=W6Ak|XQ̉¸Ca;)\z zc h&|Lp]-:?N&K1M}. WN~Rߖט)afW (۪CW49.ܩyR89&b?h/;- GVK[][*ڥyXljDc=^D@\ zYs1ZlB٦ߣҔ"G5T;4ۨG,<bz{^/ |.Qq7rA/"A2lٸEv:E\f9JN>̍WT}R5 e͵;, '?8$1s&r,'|Z;6bx ?/ДYRD֔ t!@zIhs ^\{^}dg-u&=ڼ*cInOJ`h]~.wUh`-Y5-x4]g {%nTPyF!@IC) x! Tľ ˩ՀS{[Ž6ph1+↠ rA6*!㤙dCuY+X(mc}jćELp Ƹ/1 >OWݏ'X֖߲CbaƚF$}(gu Ha@wr«/)lݜ# c_BiM{ޣn'ޞ]RVIz}[홀=#Tx.ɽ٢殨vΟ]H*PnʸcsV@fŚ.حTM~͓?~ l7/S!ѯ_nؖfނԼ[aϦU8'F|[%W(כagjF89Lhu44Φ~ $j ʔNϝ,{H{j'Jq "9;7FfzhdZК.auPHfcRC2WpOXTCu̧jW: s+4ln֮ y v3\>+Pxv~,݊d?^Ŗ.!F?篏WborkQ4VP68"s]0zjbl2`J|#b5ľ2 #)>`!9zsp:[HttӹytD@ %k?\-[!Jg.(>!u@^@* P#T@}I> zޒ&6=MƇdN! sk8}dN7!&NgZX5-|cFٜu/r`LCwd9$3.,p{!!vuo.ܜq(g?yU$ a2m"֖5ĜAff5 Ŗ C9t IJ(j7%G?@HCl;N# ŅS޽2о] [uHA4eNba":4fU_pFMjz %e]!Vulf ¿zu~Vnjc{2]CVLXFz'h2QB[.4A)j'g3+ [*AjIMOfE1r묁 fGmÿzIZe3y*LzQiryaU f͐vxh%fl )gfjE]U@ԅRMn('`%p87K,DBG1pр38{lLNLq%ųӔ{m`~l4"X0> Ԃl<܀lIgK̂t ɓS6_͖^Y%?Zs0j%%pы(w1Isχf3:IT*z汮]4Vm[r!BdPb唪(SJߑgS]YJb[N@5@Rs=?χCo3*ZO؃Pk k3(ox=%ꗉ.7 fNXjُ'!75-Als(9m&!'5f47:Ňl=v$adSu˪p,T1{=vO4">%v8CY"^M2{rK';W/"S)M*;`#zCz04!& N =Dk |U z_ Y[\= X[9 bSglqpx dia;#axwۙP ΟfbZ8&@zqrV#Z9,ߘzӏM`b^\68_a4QFtעRgUI7:@KPMg = ;&@ZmGT 9/Ŀ 77-y[KH(nQLGOWQ n|8tꊨHUR&!x\\ >B$GNG "鸃N]ŬEIٲ|F耏tY$.8\G%ڧΙDS}[erU{Bڸ.ې8Z9 & A'=!(r ;'gquĮ.lҭn~Du6K:8&/{'멃PsYK5"]9]⇻_8=CvTr'D)*,Kw~&ƌ- .} >uejcS}ܯͭ&Ҿ?+Cx:lICGn| ]ITƙ&U>լ_|!NXIӺ7 `z{p#Ňm9p.X aڝy1Z\uD%q}(krMrTv:CflON2 ѶYd>r>EVbծIsie#wRx6R2EwШ#alÔ$z5x7FWBrA+);FJVrV: m>S8q7R_arl!b?@]!LLƨBt B2-SÌE A1`<v]y\#ѣzy14rF{G6e2H&]B:+ZQe>eLTW7t5DzdyMdX&s]QC` Y_jn$6ΧVsfKq#Y~,LFڌ_m`F􁖄XF2 Ǎ1zlŻZR[lJ45ÓLVSj:9Re1{X_4F!C@OZ&br 6g+IH3ëXfXTGtd-ߋZVNFS( >irg50ɾpƚay3ώMFQ2im ?6 }2;uM.l1\[& P\g˗>@.etmdJAtÂ,:ANiq'oVCTvQHn9b$hIfagt8IځUZKXGڄ 5. zc!sZ†?[]g=INw:NI4GٚL"uյn ;D#@Bnng6XHD t1#)gPDV l|#b \'s<ו\/.eX3T'N]sUo oEȧiyQK}ь]#_08tWJV!gs@Lg4Yy,l]6OU"3wT8:PP{[QQh/ 'PN35_֪)t;(r+/M:Qf<*?ۙ i_k`A6 Ă{Nh{ |_n+\&W'  0ϴTȌ(#a{ (P =.>VkUZ"j`J=1b%j>YѯlCM /4R/74GuZ9ɑ?1=z̓"/N?ד*%q][d/KLidxlld8AѕJL#\P /Ja-л@Y Rt*ahE&4>H+* oտl?ºnĦR| s,p؂%kGDa {11bHR}o)G*e•YyS(gwDCbUɝ:v^[4_=Eh'}M ^c9ya(Isc1Q޾`Rgv:6bZ˸rT_BrĎH8a&T2у W /;]wAd+Qc>5s*͝eGͳ2J#3 Ω Ks (j4+oC)![bd˨tȵ #@dZ+(m2a|ZU@y&`sASٹ}yfcl9p)phIL2ƎA5,'tA]?3Rf dDƋf8`W ob7s f?WjmS)cl:sCoRu=x={~a/Sx0B>;SX5K w3e Ҫ~4b7#espݪ-U`V{k֬ daDp,2 ꗼO ر]'S놕-Ecn{:@pFsin㋉]j-`T(L$LWsb "tċ`iTm=ffv P[m d]<53X]8CID%ѓǿgl;BK9} %\ D(A%_|@"hl_ӧn͎&R HAS @%i uZ',b1p jBD¤f^"3~3<=f`TW0qDOookeB>AqJ![w@iIoY>F#cHzZ ޻Zs$'G(s m!y]B$+뭠 7_G *+k5V)a퐴Vv)W}C(@`h=:6Ȼq7)ӸmW ܕ%lc,3/}RNDĔc %gŎWB{{4aC.U{L5pj^FtZ`a } ^Pͳgk̆_.Z;羱TK1i71za.lukK7 *Gp `V'V![o|c*vFj+['bݼic΅~Eus- BJpDE[H\[fw("TeE9=4v)P˦TO6Ƃ'i Շ#_0TEr[9 _v9 IA5J1 .6Miҭ\&іWQR3@ D8f-8Aɕc hDRx{aU/a> #b%nMy$Cp2./&,R%z{ rLm_X%qx'Ł:_ϸ:*EqD$;cSs&o#yֱly<&xkhYFK82d[ Lʆ\7c|[< p(ۻTg(Td9B]qʙ½QV.Wj‡z P}w'ov 5u-/ɽ_g1"I6]9X؎V;NʃbZ2i>CT񓾀 ײ>H d'f+LU<%ɍQԹ%3 \s Pjq tV8]8Mڕ]%s4.x[׉#>tܱ9Ls=p|&&` #\K!zXVɤΌËenr,eŞRPV'@ds_l*LEH DCas0۸Bz,aZ6  l !067~ꧬDQ\S#0 A Zm.c#c̱Ɍk"^繛!tWYLr 2[EbGA~I^ZWڀ_vhvg~޲=̧vQC*38\?עq-.TqLo\3ΰ9^ݽ[_QGx"czMAM#8O۪.#ԣ6zJ>#A?a29ӏ .]UVެR*C"bPcF<6 ^`So|T3bd<(Ґ>ˀeI锰/ŎDP?øk1>psompL]z4Ѯ+^T[4$2 EtKj^İi*'iNakdm{i?09%&fH2<I&S0]ZJԗ/VM[xcەsK'mkirrK 2ZjSȽlldL- xvV/;LM95M2*2ԇfISd[jhˠ_T*W϶}R[rX#(=]pHe#2uI+qҋd*AzBqc!([YԻ[EDxWz|CiZRHExrO NOܷ0RTV[ӕr 54XA//cݔ !Ǩri&V.|B7uMzhqq>:O|ϖ}2B&ޚ`/!cAҿ;r!|E~ bDh4hd&?BGN@L{t)4F IY=*q_Vofڸ,KB׎re?4WS߹#ƊV8[.%ql Fmu3bS g ~'hQ1c`Ԋ;aա ՗̹l%uV=aj@c3,!}d"}*F[f >c][ƥ)so&dLoR˜}Ѝk)iAM/AWklT@'nXd6kB|XDo@1t34se%d mKbihyМeؑ`P/g){9w-h-!ەBU+kiGRQBUxt=?hʹ;tsi#Y}/O b~քO,`R=z^ ɝu%Пba&ۥhS(Fv`of|imKAsp:unx^ qpRQ!Z~J1= SZ(HH}L)YJޮCnD^) ^leZOVke\#?%C&'ݖhew{}2Ec1w ɻR [ra*hf+TByj3Il}YdeskQ)*=rF|8ٍZ?Ϭ eSO#@[>P,V(xK&L!5v=ocE(|!Uac󺒣3Ns|2Nׯ.)@xȇG`|]e/dNBޡQH# UhߕgnY0{BPI46~#"D%*6=Uґe{1^afiGnuc%Ɯ:ݮ-3Xvl-=W&6I#0pn-S|1D x)OgaA%& UVU{Tn*.O'bso Nv[` ~@8@6l n AK#4 IyM"hP7k,fZV6Ӵaw|Aj+~dUE7WEnE0;VS -25<*Js)b88.ra^ᬱ#;G2?ץLt@ɕxDTzpծ2c%~4]ՉFm ۞\ vϦƘdgx4γ<)ӠD.c9w̻w:Bl)ii".DEԶQ[msG"1ox=-(byvls=j Wl)wn~e'yIKʵgKaYGsnczAohD/45:r}=pu*a<9ٳ8{ȇ/n_wwsyG&񾀛Hfjf;2QNvC6आSz`>Lv̏ԇq/ӗLalv`GաJ]yo;q*OO! *j8I/ ƍi-&,BFZ>[=D})>嬥-,eRq&asͦ?w2,=S]7Fz8Qv b <a r\ڝ^ kQNcHb~J!%LY>C%A=rUO=zM_ s2)9 Ԡ_=k(oF}".1rhoru_S!=‘xg>ƛ&W/yVK "|(uB'xF1j0>~Ae0:F{)-A3 >rǨuGdA@괎CL1O6u7 {es4anb18i۽&q?ALJ3))5܇xdyrFzF+ÜJQ gJ@BÖVA9P$w+)2sU" 5q]{ aVV@) tx%=/v}"ƹKFd<DEI~K1IyIWi@-v7-`k'%eG_Zk/t;)xc-~^ Dͻh11p悡ΉktZzA_)IBp5.frcRrE l&g0\ 4A8vZ挅KđعQ#:=Ea<ڰ^{~-`qRԚq/#,Yʆ?Bm9ub;:RLB(ֶJQ??ݵX9ff5 TdFm#/xӉx#<d1"#uLyȱ5[vK.>D%D۵&Q|t=4d#Y֖JazJOpE󋤓Y CB;v'tq'NQfnc$ lp4w"13ԕ}CbZy \!=ZzJFE@kɘHxFK;pH%E+/t5v3+Ǒ⭁o[VW=ytzA&0*N` Q~qnIRN^tԥk&8DҬe9 X$Cl"^7@ pNKHljP9~[2ȧwE>tR&!5 ǑNp6~ʷnSX 5(C#&HJD{W‡$4sHY#"5~%ǡ-k\e(Y}2 "_˪5ᦽ:~4u,y!ao%+Ny,).,k9?,0[="@&"l\4_bc42Jt"JxqfE;6o[AGb6$]偘a*gx=6x m9ȱSlݙa?7vc>SGG W˙ `OJytʹNI E_3Zd%퓠鎾Ӹ"tx<9 ˢ)3%\r:JqJ;=#!.h_׾j:*#;*v_0tɃ>oO^"3}6WzX9Iy&"(YHAřq83bR-qWkL˸ق|8|.50jP}#87RlЬ}fg} [҆ އ`DHC{3Ԓ*:5'-3Ҫ@4 l^8{ l1%{N\1ඎ ?j7U ~nTW"-M!z27v)\]1=t0BEj:?^;m3Ꝥk@&Qr2Pdi9ݺ5o`?bb񏬧]JG)tH Tk W#F~\Ppͱ!/x~.[lZk8{jY8He8yo&怣˧3B7*(f~T]:w ,-~誺816<{\uG\ij*yt])ǭ%܅`)tJDP^ -覕&O0kicE}1x ט"Җ r5x[%n]dj inZG >rЦʏ_tu'#?9 e@Nq-_G ^i\c:`l?yao ZwOڏU)^Ñz`O\k~ x2Y J#ѿECVвG&P{VaDetVs]L ~?YE?G|LVt"c_h6CDbJ96$>8 3p ^U_ȥ;p8h9C9opaaBE{b4bOk0 1PT wThC,LamvP 3ڔ-g=uBYJdDv<OLXI~tl,G聕i΋-QP,#\pAa$B\TdQiF:< vdߗi(X#^Cr9b_h=4kXڦ(Ǽ?;|dƢD5vQhJFf'VncmC76zFN39%kcM'q BT7( mB[F2).?;J;vMdh{Gli!Uͮc:JGgNe z,w ' AGZeQ~O@A{4Sܵ&'Kk.N :u&P0%C [XOI^5cE(#44ߥCΚܝ(F3:ʢz=/5 ~dn ̚pJ0{1<Ȉ,eO,ǭN Rk u^ oii(jغ2SXBxx.>2FY>x 1X<Wt,!i}XHK=pizr;@lc--fsdqa:_s W,˘ONΤG^ڰ}QaxK̼^[SBT.y2*[b|CFS4q ^:Wւɠtx9PRƝӧ)V٪UG8ƌFHۛ?v->)¶1p΂xk_ko|P ^GSZz=VUp wzdR'x׹Uu^NhcR bTKQa`MƵуscZloڕ~WHøocCQuCnDp ]nV u>[SN-Pu(0 EnY>68T{p2Qwr6֌}s}>0ŋ"8骞bZGZ)7pds0LG~jG6D;Lc"ci(VIx.Kw EIcuyUhPv$};wu<|`jK Ez,V,$|4WYV bqP*Ģ0}]f"u4!rrQ* BcE?O~ no͊_ A˝.3esn7.-iJ"(?}zv)YG==Wo hBo7uuCr$uQZA4 ҂fls>0&JgC%./a \{vftUF01=ͪD(5Ƒ6̨j/ETm>-n > Kx|h3FDc){z{ۃ` 5^"&^2 V!vVvfS=%Z\_-g&3P.KL 7?/DOI߿%4vADhN{?dw^ Y G|H03+]Uc* ==P z<$,^qm&|-i9w?@iZ c[&'F!Ţ ]?>vѩyl4lOhE2a+9hd GVy1~Y^&A1%*]QsSқd 3<5m'3i$v$D_ƜA鄥L]'85KH^v];Ks9|*jG6yDYTܕ j%=hP) Yn hysLZ]3Lgz!.6%L(L2gυɸ7E0w}}fh4rtCX"s}I3>%L-bCJO+ߒNK|2O2Iٔ4W__t4\9N^;=o^5sʋ)s;0(DflMWVǫB>Z0O6_ TT@0UI?>œqQ;tv7Hr{3Ac{I}D"ΘZyy+@a{m&x}ʕj}^c(e"(:2w,F=3;bc7%'m2&h5Q%+:mN3ϽWNȮO &URL06?uNe%uN; 2cרl(nKdز~%J#R.jkceUԤ` >w$%dG7K0(2aˌKXf"W@g+@v=y?Sٮ">bսw< wݯVS—bh>isC'e‡#QxY4E%\KQX'@~;DMČ<#Eѕ+H FA.i s#}lTijuq?W~.x^^7ڿ>27YNKf aĶW{Qv+嬍=Z .a0]ycB/׷̦ՐK\q#5+Vї'է,w]Cl`4j~yEIKSwc+=w% ̶nf2-@sCñu74h6L4J*M$"sT6{o:AјI--8> g2-;Vo<9r8䏥'S62T(1/&zcʹ $kqzuHum\\(M;W G6X_q*cGC#\91LXP(8(̲q֑lq~W9Us3葍! ƀt:LԘV4^N(D,,tDS}\8RnA * dGǏeLJcE΍a.~ߗuf:5 ӊ\#ݩ\uCI_%a/CHԡ?LDa> [py N@ 0z,F.-d 6|=u̸$^RnEn\ >:A Ԗy2Z.A66K&vdRxPϭZw i(gp?AdX2{.s/6Q$b>8;ămA_~= l Jcw@"DipameI~+Yx=7.}b;_' Ǿuurf' :B1,82wLDv6̚'ӯ̒$ǻQ]4"2Jv>a2z p)^ijF&ԣ88TmM{cEe|߸Wx1y+$ ae ua dr. F4Q4@&ii<\,BC ,Lb~^\qE,t(o .Tt$R2OCs?TKkz)J+B%wqM& `P$ˣJ_)SmN2%<#@$sy vT1`N,8gD^LUҬjd{nd㏜Ǜ^3Ւ MY $٤Z\ՕWP8aŲns vv9H.V8˳ UcWDlљ0;][$bB"}w 5`/Xy03_+ f:;BXVh!%z]8/ՅdLK{9ZpVKk@ ᪃tn3co!& .ZL> KxJuNW=MG{jF#K#Wj^orss@@|xm4C&ß{e";m?l ֭Jl`Ǜr(<8r٬,A]%(Wo+$G1fh3CCQc4èhqS[6:KeЪtn$f(iG5;Ί \(\0E !f_9]@;UjVT@7_^*Xgpۜ@:Zshݭ1 Enwvm1b3eA@B,TW+G y4 o3:$ >>Gs w$T"PiyJj!b8@'SiW >dr1kigыܗwM!վV.ܵpk.,ؚd/œsI УGMqz p3_ )g W#dk5c__BW@Ghkj #z,SԠ_k֑)'Ԁm 3,̽;@A$ΨN7b^s ~z<$N@g־$Q'xX|m|Ufi w#Y!YVbfxVK(Af=xHY p:J5;N|.ȏʽK+ΆZM*KȈv7}#T.7~X= G5|'Avsb4hH8AWGn( Yڶ&Ko>w/)%(Y".<cOy|cK5\'RdDr sI|N9 {%LW zZEZbyrcCPLAHLՂZmkcfF&@oZ3([g ڄ &kU1FJyy@Mߠ3/U["h4]s@Ra5Ç%)jڢ܆ ^~?hqtUAiA:&}u1-0@>nw(!T'}$:=oTCzDӓ!o~/X>!q2u3 YZ